Transact-SQL 구문 표기 규칙(Transact-SQL)
적용 대상: Microsoft Fabric의 Microsoft Fabric
Warehouse에서 SQL Server Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System(PDW)
SQL 엔드포인트
다음 표에서는 Transact-SQL 참조의 구문 다이어그램에 사용되는 규칙을 나열하고 설명합니다.
규칙 | 사용 대상 |
---|---|
대문자 | 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 데이터베이스 엔진에서 개체를 식별하기 위해 항상 서버, 데이터베이스 및 스키마를 지정할 필요는 없습니다. 그러나 개체를 찾을 수 없으면 오류가 반환됩니다.
이름 확인 오류를 방지하기 위해서는 스키마 범위 개체를 지정할 때 항상 스키마를 지정하는 것이 좋습니다.
중간 노드를 생략하려면 마침표를 사용해 이 위치를 표시하십시오. 다음 표에서는 개체 이름의 유효한 형식을 보여 줍니다.
개체 참조 형식 | Description |
---|---|
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 | 서버, 데이터베이스 및 스키마 이름이 생략됩니다. |
코드 예 표기 규칙
특별한 언급이 없으면 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)에서 도입되었습니다. 모든 SQL Server 제품에서 CREATE USER
문을 사용할 수 있지만, WITH PASSWORD
구문은 이전 버전에서 사용할 수 없습니다. 추가적인 적용 대상 섹션이 항목 본문의 적절한 인수 설명에 삽입됩니다.