BASE64_ENCODE (Transact-SQL)

Область применения: База данных SQL Azure конечная точка аналитики SQL и хранилище в Microsoft Fabric

BASE64_ENCODE преобразует значение varbinary в кодировку Base64 varchar.

Соглашения о синтаксисе Transact-SQL

Синтаксис

BASE64_ENCODE (expression [, url_safe])

Аргументы

выражение

Выражение типа varbinary (n | max)

url_safe

Необязательный целочисленный литерал или выражение, указывающее, должны ли выходные данные операции кодирования быть URL-безопасными. Любое число, отличное 0 от значения true. Значение по умолчанию — 0.

Типы возвращаемых данных

  • Varchar(8000)
  • Varchar(max), если входные данные — varbinary(max)
  • Varchar(max), если входные данные — varchar(n), где n > 6000
  • Если входное выражение равноnull, выходные данные .null

Замечания

Закодированный алфавит строки состоит в том, что rfC 4648 Table 1 и может добавить заполнение. Выходные данные, безопасные по URL-адресу, используют алфавит base64url RFC 4648 Table 2 и не добавляют заполнение. Эта функция не добавляет новые символы строки.

В каждом случае используется параметры сортировки базы данных по умолчанию. Дополнительные сведения о поддерживаемых параметрах сортировки в Microsoft Fabric см. в таблицах.

Если url_safe задано значение true, созданная строка base64url несовместима с декодаторами XML и JSON base64 SQL Server.

Примеры

А. Стандартный BASE64_ENCODE

В следующем примере простой varbinary закодирован в кодировке Base64.

SELECT Base64_Encode(0xA9) as "Encoded © symbol";

Вот результирующий набор.

------------  
qQ==
(1 row affected)

B. BASE64_ENCODE строку

В следующем примере строка закодирована в кодировке Base64. Сначала строка должна быть приложена к varbinary.

SELECT BASE64_ENCODE (CAST ('hello world' as varbinary))

Вот результирующий набор.

------------  
aGVsbG8gd29ybGQ=
(1 row affected)

C. BASE64_ENCODE по умолчанию и url_safe

В следующем примере первый выбор не указывает url_safe, однако второй выбор указывает url_safe.

SELECT BASE64_ENCODE(0xCAFECAFE)

Вот результирующий набор.

------------  
yv7K/g==
(1 row affected)

В следующем примере указывается, что выходные данные являются URL-безопасными.

SELECT BASE64_ENCODE(0xCAFECAFE, 1);

Вот результирующий набор.

------------  
yv7K_g
(1 row affected)

Следующие шаги