T-SQL 포매터
SQL을 SQL Server 및 Azure SQL용으로 포맷합니다. [대괄호] 식별자, N'' Unicode 문자열, #temp 테이블, @variables, GO 배치 구분자에 대한 규칙을 적용합니다. CROSS APPLY와 OUTER APPLY는 새 줄에서 시작하고, OUTPUT과 FOR JSON는 절로 유지하며, BEGIN TRANSACTION은 실수로 블록을 시작하는 것으로 처리되지 않습니다. 닫히지 않은 문자열과 괄호는 줄 및 열 번호와 함께 보고되어 데이터베이스 개발자가 확인할 수 있습니다.
자주 묻는 질문
어떤 T-SQL 구문을 인식하나요?
]] 이스케이프가 포함된 [대괄호] 식별자와 큰따옴표 식별자, N'' Unicode 문자열, #temp 및 ##global 임시 테이블, @variables, @@ 시스템 함수가 인식됩니다. geography::Point 같은 정적 메서드 호출도 그대로 유지됩니다.
GO 배치 구분자는 어떻게 처리하나요?
GO만 포함된 줄은 GO 5처럼 반복 횟수가 함께 지정된 경우에도 배치를 끝냅니다. GO는 단독 줄에 유지되고 각 배치는 별도로 포맷됩니다.
어떤 T-SQL 절을 지원하나요?
CROSS APPLY와 OUTER APPLY는 조인처럼 새 줄에서 시작합니다. OUTPUT, OPTION, FOR XML, FOR JSON는 표준 절과 함께 각각 독립된 절로 유지됩니다.
저장 프로시저도 포맷할 수 있나요?
네. BEGIN 및 END 블록, BEGIN TRY 및 BEGIN CATCH, IF 및 ELSE, WHILE 루프에 들여쓰기가 적용됩니다. BEGIN TRANSACTION과 BEGIN TRAN은 블록의 시작이 아닌 문으로 처리됩니다.
MERGE를 지원하나요?
네. WHEN MATCHED, WHEN NOT MATCHED BY TARGET, WHEN NOT MATCHED BY SOURCE 분기는 새 줄에서 시작합니다.
주석이 보존되나요?
네. -- 한 줄 주석과 /* 블록 주석 */은 그대로 유지됩니다. 여러 줄로 된 블록 주석에는 새 위치에 맞춰 들여쓰기가 다시 적용됩니다.
키워드의 대소문자를 변경하나요?
아니요. 키워드와 식별자는 입력한 대소문자를 유지합니다. 공백과 줄바꿈만 변경됩니다.
어떤 오류를 감지하나요?
닫히지 않은 문자열, 대괄호 또는 따옴표로 묶인 식별자와 블록 주석, 짝이 맞지 않는 괄호를 각각 줄 및 열 번호와 함께 표시합니다. 이 도구는 SQL Server에 연결하거나 개체 이름을 검증하지 않습니다.
입력 크기는 최대 얼마인가요?
요청당 최대 1 MB, 문 또는 배치당 128 KB까지 처리합니다. 문은 빈 줄로 구분됩니다.
들여쓰기를 선택할 수 있나요? 제 SQL는 저장되나요?
공백 2칸 또는 4칸이나 탭을 사용할 수 있습니다. 스크립트는 메모리에서만 포맷되며 저장되지 않습니다.