Transact-SQL 구문 표기 규칙(Transact-SQL)
적용 대상: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW) Microsoft Fabric의 SQL 분석 엔드포인트 Microsoft Fabric의 웨어하우스
다음 표에서는 Transact-SQL 참조의 구문 다이어그램에 사용되는 규칙을 나열하고 설명합니다.
규칙 | 용도 |
---|---|
대문자 또는 UPPERCASE |
Transact-SQL 키워드. |
기울임꼴 | 사용자가 제공하는 Transact-SQL 구문 매개 변수. |
굵게 | 데이터베이스 이름, 테이블 이름, 열 이름, 인덱스 이름, 저장 프로시저, 유틸리티, 데이터 형식 이름 및 텍스트를 표시된 대로 정확히 입력합니다. |
| (세로 막대) |
대괄호 또는 중괄호 내에서 구문 항목을 구분합니다. 항목 중 하나만 사용할 수 있습니다. |
[ ] (대괄호) |
선택적 구문 항목입니다. |
{ } (중괄호) |
필수 구문 항목입니다. 중괄호는 입력하지 않습니다. |
[ , ...n ] |
앞의 항목이 n 번 반복될 수 있음을 나타냅니다. 각 항목은 쉼표로 구분됩니다. |
[ ...n ] |
앞의 항목이 n 번 반복될 수 있음을 나타냅니다. 각 항목은 공백으로 구분됩니다. |
; |
Transact-SQL 문 종결자. 이 버전의 SQL Server에서는 대부분의 문에 세미콜론이 필요하지 않지만 이후 버전에서는 필요합니다. |
<label> ::= |
구문 블록의 이름입니다. 이 규칙을 사용하여 문에서 한 곳 이상 사용할 수 있는 긴 구문의 섹션 또는 구문 단위를 그룹화하고 레이블을 지정합니다. 구문 블록을 사용할 수 있는 각 위치는 펼침 단추 <로 묶인 레이블인 레이블>로 표시됩니다. 집합은 식 모음(예: <grouping set>)이고, 목록은 집합 모음(예: <composite element list>)입니다. |
다중 부분 이름
다른 지침이 없으면 데이터베이스 개체 이름에 대한 모든 Transact-SQL 참조는 다음 형식과 같이 네 부분으로 된 이름으로 구성됩니다.
<server_name>.[<database_name>].[<schema_name>].<object_name>
| <database_name>.[<schema_name>].<object_name>
| <schema_name>.<object_name>
| <object_name>
server_name
연결된 서버 이름 또는 원격 서버 이름을 지정합니다.
database_name
개체가 SQL Server의 로컬 인스턴스에 있을 때 SQL Server 데이터베이스의 이름을 지정합니다. 개체가 연결된 서버에 있으면 database_name은 OLE DB 카탈로그를 지정합니다.
schema_name
개체가 SQL Server 데이터베이스에 있을 경우 해당 개체가 포함된 스키마의 이름을 지정합니다. 개체가 연결된 서버에 있으면 schema_name은 OLE DB 스키마 이름을 지정합니다.
object_name
개체의 이름을 참조합니다.
특정 개체를 참조할 때 SQL Server 데이터베이스 엔진에서 개체를 식별하기 위해 항상 서버, 데이터베이스 및 스키마를 지정할 필요는 없습니다. 그러나 개체를 찾을 수 없으면 오류가 반환됩니다.
이름 확인 오류를 방지하기 위해서는 스키마 범위 개체를 지정할 때 항상 스키마를 지정하는 것이 좋습니다.
중간 노드를 생략하려면 마침표를 사용해 이 위치를 표시하십시오. 다음 표에서는 개체 이름의 유효한 형식을 보여 줍니다.
개체 참조 형식 | 설명 |
---|---|
<server_name>.<database_name>.<schema_name>.<object_name> |
네 부분으로 이루어진 이름입니다. |
<server_name>.<database_name>..<object_name> |
스키마 이름이 생략됩니다. |
<server_name>..<schema_name>.<object_name> |
데이터베이스 이름이 생략됩니다. |
<server_name>...<object_name> |
데이터베이스 및 스키마 이름이 생략됩니다. |
<database_name>.<schema_name>.<object_name> |
서버 이름이 생략됩니다. |
<database_name>..<object_name> |
서버 및 스키마 이름이 생략됩니다. |
<schema_name>.<object_name> |
서버 및 데이터베이스 이름이 생략됩니다. |
<object_name> |
서버, 데이터베이스 및 스키마 이름이 생략됩니다. |
데이터 형식
아티클에서 인라인으로 사용하면 데이터 형식이 소문자와 굵게 렌더링됩니다. 예를 들어 int, varchar(255) 및 비트입니다.
Transact-SQL 코드 블록에서 사용되는 경우 데이터 형식은 대문자로 렌더링됩니다. 예시:
DECLARE @int_example AS INT;
DECLARE @varchar_example AS VARCHAR(255);
DECLARE @bit_example AS BIT;
코드 예 표기 규칙
특별한 언급이 없으면 Transact-SQL 참조에서 제공되는 예는 다음 옵션에 대해 기본 설정을 사용하여 SQL Server Management Studio에서 테스트되었습니다.
ANSI_NULLS
ANSI_NULL_DFLT_ON
ANSI_PADDING
ANSI_WARNINGS
CONCAT_NULL_YIELDS_NULL
QUOTED_IDENTIFIER
Transact-SQL 참조의 대부분의 코드 예제는 대/소문자를 구분하는 정렬 순서를 실행하는 서버에서 테스트되었습니다. 일반적으로 테스트 서버에서는 ANSI/ISO 1252 코드 페이지가 실행됩니다.
많은 코드 예제에서 유니코드 문자열 상수 앞에 문자 N
을 접두사로 붙입니다. N
접두사가 없으면 문자열이 데이터베이스의 기본 코드 페이지로 변환됩니다. 이 기본 코드 페이지는 특정 문자를 인식하지 못할 수 있습니다.
'적용 대상' 참조
Transact-SQL 참조 문서에는 SQL Server 2008(10.0.x)부터 Azure SQL Database, Azure SQL Managed Instance, Azure Synapse Analytics 및 분석 플랫폼 시스템(PDW)까지 여러 버전의 SQL Server가 포함됩니다.
각 아티클의 위쪽에 있는 섹션은 아티클의 제목을 지원하는 제품을 나타냅니다. 제품이 생략되면 문서에서 설명하는 기능을 해당 제품에서 사용할 수 없습니다.
문서의 일반적인 주제를 제품에서 사용할 수 있지만 경우에 따라 일부 인수가 지원되지 않습니다. 예를 들어 포함된 데이터베이스 사용자가 SQL Server 2012(11.x)에서 도입되었습니다. CREATE USER
SQL Server 제품에서는 문을 사용하세요. 그러나 구문은 WITH PASSWORD
이전 버전에서 사용할 수 없습니다. 섹션에 추가 적용은 아티클 본문의 적절한 인수 설명에 삽입됩니다.