Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Относится к:Azure SQL Database SQL analytics endpoint и склад в Microsoft Fabric
SQL база данных SQL в Microsoft Fabric
BASE64_DECODE преобразует выражение varchar в кодировке Base64 в соответствующее выражение varbinary .
Соглашения о синтаксисе Transact-SQL
Синтаксис
BASE64_DECODE ( expression )
Аргументы
выражение
Выражение типа varchar(n) или varchar(max).
Типы возвращаемых данных
- varbinary(8000), если входные данные — varchar(n).
- varbinary(max), если входные данные — varchar(max).
- Если входное выражение равно
NULL, выходные данные .NULL
Замечания
Алфавит закодированной строки должен иметь значение RFC 4648 Table 1 и может включать заполнение, хотя заполнение не требуется. Url-безопасный алфавит, указанный в RFC 4648 Table 2 , также принимается. Эта функция игнорирует символы пробелов: \n, \r, \tи .
Если входные данные содержат символы, не содержащиеся в стандартных или URL-безопасных алфавитах, указанных RFC 4648, функция возвращает следующую ошибку:
Msg 9803, Level 16, State 20, Line 15, Invalid data for type "Base64Decode"Если данные имеют допустимые символы, но неправильно отформатированы, функция возвращает ошибку
Msg 9803, State 21.Если входные данные содержат более двух символов заполнения или символов заполнения, за которым следует дополнительный допустимый вход, функция возвращает ошибку
Msg 9803, State 23.
Примеры
А. Стандартный BASE64_DECODE
В следующем примере строка в кодировке Base64 декодируется обратно в varbinary.
SELECT BASE64_DECODE('qQ==');
Вот результирующий набор.
0xA9
B. BASE64_DECODE стандартную строку base64
В следующем примере строка декодирована base64. Обратите внимание, что строка содержит небезопасные символы = URL-адреса и /.
SELECT BASE64_DECODE('yv7K/g==');
Вот результирующий набор.
0xCAFECAFE
В. строка BASE64_DECODE varchar url_safe base64
В отличие от примера B, эта строка base64 была закодирована с помощью RFC 4648 Table 2 (url_safe), но может быть декодирована так же, как и пример B.
SELECT BASE64_DECODE('yv7K_g');
Вот результирующий набор.
0xCAFECAFE
D. BASE64_DECODE varchar содержит символы, не содержащиеся в алфавите base64
В этом примере содержатся символы, которые не являются допустимыми символами base64.
SELECT BASE64_DECODE('qQ!!');
Вот результирующий набор.
Msg 9803, Level 16, State 20, Line 223
Invalid data for type "Base64Decode".