Partilhar via


BASE64_ENCODE (Transact-SQL)

Aplica-se a:Azure SQL Databaseendpoint de análise SQL e Warehouse no Microsoft FabricBase de dados SQL no Microsoft Fabric

BASE64_ENCODE converte o valor de uma expressão varbinary em uma expressão varchar codificada em base64.

Transact-SQL convenções de sintaxe

Sintaxe

BASE64_ENCODE (expression [ , url_safe ] )

Argumentos

expressão

Uma expressão do tipo varbinary(n) ou varbinary(max).

url_safe

Literal ou expressão inteira opcional, que especifica se a saída da operação de codificação deve ser segura para URL. Qualquer número diferente de 0 é avaliado como verdadeiro. O valor padrão é 0.

Tipos de devolução

  • varchar(8000) se a entrada for varbinary(n) onde n<= 6000.
  • varchar(max) se a entrada for varbinary(n) onde n> 6000.
  • varchar(max) se a entrada for varbinary(max).
  • Se a expressão de entrada for NULL, a saída será NULL.

Comentários

O alfabeto de cadeia de caracteres codificado é o de RFC 4648 Tabela 1 e pode adicionar preenchimento. A saída segura para URL usa o alfabeto base64url de RFC 4648 Tabela 2 e não adiciona preenchimento. Esta função não adiciona novos caracteres de linha.

Em cada caso, o agrupamento padrão do banco de dados é usado. Para obter mais informações sobre os agrupamentos suportados no Microsoft Fabric, consulte Tabelas.

Se url_safe for verdadeiro, a cadeia de caracteres base64url gerada é incompatível com os decodificadores XML e JSON base64 do SQL Server.

Exemplos

Um. BASE64_ENCODE padrão

O exemplo a seguir retorna o valor codificado base64 para o símbolo &copy;.

SELECT Base64_Encode(0xA9) AS "Encoded &copy; symbol";

Aqui está o conjunto de resultados.

qQ==

B. BASE64_ENCODE uma cadeia de caracteres

No exemplo a seguir, uma cadeia de caracteres é codificada em base64. A cadeia de caracteres deve primeiro ser convertida em um varbinary.

SELECT BASE64_ENCODE(CAST ('hello world' AS VARBINARY));

Aqui está o conjunto de resultados.

aGVsbG8gd29ybGQ=

C. BASE64_ENCODE padrão vs url_safe

No exemplo a seguir, a primeira seleção não especifica url_safe; no entanto, a segunda seleção especifica url_safe.

SELECT BASE64_ENCODE(0xCAFECAFE);

Aqui está o conjunto de resultados.

yv7K/g==

O exemplo a seguir especifica que a saída é segura para URL.

SELECT BASE64_ENCODE(0xCAFECAFE, 1);

Aqui está o conjunto de resultados.

yv7K_g