적용 대상:Azure SQL 데이터베이스SQL 분석 엔드포인트 및 Microsoft Fabric
의Warehouse SQL 데이터베이스 Microsoft Fabric 내 SQL 데이터베이스
BASE64_DECODE 는 base64로 인코딩된 varchar 식을 해당 varbinary 식으로 변환합니다.
구문
BASE64_DECODE ( expression )
인수
expression
varchar(n) 또는 varchar(max) 형식의 식입니다.
반환 형식
- varbinary(8000) 이면 입력이 varchar(n)입니다.
- 입력이 varchar(max)이면 varbinary(max)입니다.
- 입력 식이
NULL면 출력은 .입니다NULL.
설명
인코딩된 문자열의 알파벳은 RFC 4648 표 1 의 알파벳이어야 하며 패딩이 필요하지는 않지만 안쪽 여백을 포함할 수 있습니다. RFC 4648 표 2 내에 지정된 URL로부터 안전한 알파벳도 허용됩니다. 이 함수는 공백 문자( \n, , \r\t및 )를 무시합니다.
입력에 RFC 4648로 지정된 표준 또는 URL 안전 알파벳 내에 포함되지 않은 문자가 포함되어 있으면 함수는 다음 오류를 반환합니다.
Msg 9803, Level 16, State 20, Line 15, Invalid data for type "Base64Decode"데이터에 유효한 문자가 있지만 형식이 잘못 지정되면 함수는 오류를
Msg 9803, State 21반환합니다.입력에 두 개 이상의 패딩 문자 또는 패딩 문자와 유효한 추가 입력이 포함된 경우 함수는 오류를
Msg 9803, State 23반환합니다.
예제
A. 표준 BASE64_DECODE
다음 예제에서는 base64로 인코딩된 문자열이 varbinary로 다시 디코딩됩니다.
SELECT BASE64_DECODE('qQ==');
결과 집합은 다음과 같습니다.
0xA9
B. 표준 base64 문자열 BASE64_DECODE
다음 예제에서 문자열은 base64 디코딩됩니다. 문자열에는 URL 안전하지 않은 문자 = 와 /.
SELECT BASE64_DECODE('yv7K/g==');
결과 집합은 다음과 같습니다.
0xCAFECAFE
C. varchar url_safe base64 문자열 BASE64_DECODE
예제 B와 달리 이 예제 base64 문자열은 RFC 4648 표 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".