Partilhar via


BASE64_DECODE (Transact-SQL)

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

BASE64_DECODE Converte uma expressão varchar codificada em base64 na expressão varbinary correspondente.

Transact-SQL convenções de sintaxe

Sintaxe

BASE64_DECODE ( expression )

Arguments

expressão

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

Tipos de devolução

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

Observações

O alfabeto da cadeia de caracteres codificada deve ser o da RFC 4648 Tabela 1 e pode incluir preenchimento, embora o preenchimento não seja necessário. O alfabeto seguro para URL especificado na Tabela 2 do RFC 4648 também é aceito. Esta função ignora caracteres de espaço em branco: \n, \r, \te .

  • Quando a entrada contém caracteres não contidos nos alfabetos padrão ou seguros para URL especificados pela RFC 4648, a função retorna o seguinte erro:

    Msg 9803, Level 16, State 20, Line 15, Invalid data for type "Base64Decode"
    
  • Se os dados tiverem caracteres válidos, mas formatados incorretamente, a função retornará o erro Msg 9803, State 21.

  • Se a entrada contiver mais de dois caracteres de preenchimento ou caracteres de preenchimento seguidos de entrada válida extra, a função retornará o erro Msg 9803, State 23.

Examples

A. BASE64_DECODE padrão

No exemplo a seguir, a cadeia de caracteres codificada base64 é decodificada novamente em varbinary.

SELECT BASE64_DECODE('qQ==');

Aqui está o conjunto de resultados.

0xA9

B. BASE64_DECODE uma string base64 padrão

No exemplo a seguir, a cadeia de caracteres é decodificada base64. Observe que a cadeia de caracteres contém caracteres = não seguros de URL e /.

SELECT BASE64_DECODE('yv7K/g==');

Aqui está o conjunto de resultados.

0xCAFECAFE

C. BASE64_DECODE varchar url_safe corda base64

Em contraste com o exemplo B, este exemplo de cadeia de caracteres base64 foi codificado usando RFC 4648 Tabela 2 (url_safe), mas pode ser decodificado da mesma maneira que o exemplo B.

SELECT BASE64_DECODE('yv7K_g');

Aqui está o conjunto de resultados.

0xCAFECAFE

D. BASE64_DECODE varchar contém caracteres que não estão no alfabeto base64

Este exemplo contém caracteres que não são válidos base64 caracteres.

SELECT BASE64_DECODE('qQ!!');

Aqui está o conjunto de resultados.

Msg 9803, Level 16, State 20, Line 223
Invalid data for type "Base64Decode".