현재는 sqlcmd 를 실행할 때 명령줄 옵션과 값 사이에 공백을 넣을 필요가 없습니다.Currently, sqlcmd does not require a space between the command line option and the value.하지만 후속 릴리스에서는 명령줄 옵션과 값 사이에 공백을 넣어야 할 수도 있습니다.However, in a future release, a space may be required between the command line option and the value.

Azure Active Directory의 사용자 이름과 암호를 사용하려는 경우 -G 옵션을 제공하고 -U 및 -P 옵션도 제공하여 사용자 이름 및 암호를 사용할 수 있습니다.When you want to use an Azure Active Directory user name and password, you can provide the -G option and also use the user name and password by providing the -U and -P options.

이 항목의 뒷부분에 설명되어 있는 -E 옵션과 함께 -U 옵션을 사용하면 오류 메시지가 생성됩니다.If the -U option is used with the -E option (described later in this topic), an error message is generated.–U 옵션 다음에 둘 이상의 인수를 지정하면 오류 메시지가 생성되고 프로그램이 종료됩니다.If the –U option is followed by more than one argument, an error message is generated and the program exits.

-k [1 | 2]-k [1 | 2]출력에서 탭이나 줄 바꿈 문자와 같은 모든 제어 문자를 제거합니다.Removes all control characters, such as tabs and new line characters from the output.데이터를 반환할 때 열 서식은 유지됩니다.This preserves column formatting when data is returned.1을 지정하면 제어 문자가 단일 공백으로 바뀝니다.If 1 is specified, the control characters are replaced by a single space.2를 지정하면 연속된 제어 문자가 단일 공백으로 바뀝니다.If 2 is specified, consecutive control characters are replaced by a single space.-k 는 -k1과 같습니다.-k is the same as -k1.

참고

UDT는 구현에 따라 길이가 고정될 수 있습니다.UDTs can be of fixed length depending on the implementation.길이가 고정된 UDT의 길이가 display_width보다 짧으면 반환되는 UDT 값은 영향을 받지 않습니다.If this length of a fixed length UDT is shorter that display_width, the value of the UDT returned is not affected.그러나 길이가 display_width보다 길면 출력이 잘립니다.However, if the length is longer than display_width, the output is truncated.

-Yfixed_length_type_display_width-Yfixed_length_type_display_widthsqlcmd 스크립팅 변수 SQLCMDMAXFIXEDTYPEWIDTH를 설정합니다.Sets the sqlcmd scripting variable SQLCMDMAXFIXEDTYPEWIDTH.기본값은 0(무제한)입니다.The default is 0 (unlimited).다음 데이터 형식에 대해 반환되는 문자 수를 제한합니다.Limits the number of characters that are returned for the following data types:

-merror_level-merror_levelstdout에 보낼 오류 메시지를 제어합니다.Controls which error messages are sent to stdout.심각도가 이 수준보다 크거나 같은 메시지는 보내집니다.Messages that have a severity level greater than or equal to this level are sent.이 값을 1로 설정하면 정보 메시지를 포함한 모든 메시지가 보내집니다.When this value is set to -1, all messages including informational messages, are sent.-m 과 -1사이에는 공백이 있으면 안 됩니다.Spaces are not allowed between the -m and -1.예를 들어 -m-1 은 유효하고 -m-1 은 유효하지 않습니다.For example, -m-1 is valid, and -m-1 is not.

-berror_severity_level-Verror_severity_levelERRORLEVEL 변수를 설정하는 데 사용되는 심각도를 제어합니다.Controls the severity level that is used to set the ERRORLEVEL variable.심각도가 이 값보다 크거나 같은 오류 메시지는 ERRORLEVEL을 설정합니다.Error messages that have severity levels greater than or equal to this value set ERRORLEVEL.0보다 작은 값은 0으로 보고됩니다.Values that are less than 0 are reported as 0.배치 파일 및 CMD 파일은 ERRORLEVEL 변수의 값을 테스트하는 데 사용할 수 있습니다.Batch and CMD files can be used to test the value of the ERRORLEVEL variable.

-L[c]-L[c]로컬로 구성된 서버 컴퓨터와 네트워크상에서 브로드캐스팅하는 서버 컴퓨터의 이름을 표시합니다.Lists the locally configured server computers, and the names of the server computers that are broadcasting on the network.이 매개 변수는 다른 매개 변수와 함께 사용할 수 없습니다.This parameter cannot be used in combination with other parameters.표시할 수 있는 최대 서버 컴퓨터 수는 3000대입니다.The maximum number of server computers that can be listed is 3000.버퍼 크기 때문에 서버 목록이 잘린 경우 경고 메시지가 표시됩니다.If the server list is truncated because of the size of the buffer a warning message is displayed.

참고

네트워크에서 브로드캐스팅의 특성으로 인해 sqlcmd 는 모든 서버로부터 시기 적절한 응답을 받지 못할 수 있습니다.Because of the nature of broadcasting on networks, sqlcmd may not receive a timely response from all servers.그러므로 반환되는 서버 목록은 이 옵션을 호출할 때마다 다를 수 있습니다.Therefore, the list of servers returned may vary for each invocation of this option.

-?-?sqlcmd 버전과 sqlcmd 옵션의 구문 요약 정보를 표시합니다.Displays the version of sqlcmd and a syntax summary of sqlcmd options.

주의Remarks

옵션은 구문 섹션에 표시된 순서대로 사용하지 않아도 됩니다.Options do not have to be used in the order shown in the syntax section.

여러 결과가 반환된 경우 sqlcmd 는 일괄 처리의 각 결과 집합 사이에 빈 줄을 출력합니다.When multiple results are returned, sqlcmd prints a blank line between each result set in a batch.또한, 실행되는 문에 적용되지 않을 때는 <x> rows affected 메시지가 나타나지 않습니다.In addition, the <x> rows affected message does not appear when it does not apply to the statement executed.

대화형으로 sqlcmd 를 사용하려면 명령 프롬프트에 이 항목의 위에서 설명한 하나 이상의 옵션과 함께 sqlcmd 를 입력합니다.To use sqlcmd interactively, type sqlcmd at the command prompt with any one or more of the options described earlier in this topic.자세한 내용은 sqlcmd 유틸리티 사용을 참조하세요.For more information, see Use the sqlcmd Utility

참고

명령 환경(Cmd.exe)에서 모든 인수 및 확장 변수를 포함한 sqlcmd 명령줄의 총 길이는 운영 체제에서 Cmd.exe에 대해 지정한 길이입니다.The total length of the sqlcmd command line in the command environment (Cmd.exe), including all arguments and expanded variables, is that which is determined by the operating system for Cmd.exe.

file namefile name출력을 받을 파일을 만들고 엽니다.Creates and opens a file that will receive the output.이 파일이 이미 있을 경우 0바이트로 잘립니다.If the file already exists, it will be truncated to zero bytes.권한이나 기타 이유로 인해 이 파일을 사용할 수 없을 경우 출력이 전환되지 않으며 마지막으로 지정한 대상이나 기본 대상으로 전송됩니다.If the file is not available because of permissions or other reasons, the output will not be switched and will be sent to the last specified or default destination.

STDERRSTDERR오류 출력을 stderr 스트림으로 전환합니다.Switches error output to the stderr stream.스트림을 리디렉션할 경우 리디렉션된 스트림 대상이 오류 출력을 받습니다.If this has been redirected, the target to which the stream has been redirected will receive the error output.

STDOUTSTDOUT오류 출력을 stdout 스트림으로 전환합니다.Switches error output to the stdout stream.스트림을 리디렉션할 경우 리디렉션된 스트림 대상이 오류 출력을 받습니다.If this has been redirected, the target to which the stream has been redirected will receive the error output.

쿼리를 포함하는 일괄 처리를 실행하며 쿼리 결과를 반환한 다음 종료합니다.Executes the batch that includes the query, and then quits after it returns the results of the query.

sqlcmd 스크립트에 RAISERROR를 사용할 때 상태 127이 발생하면 sqlcmd 가 종료되고 메시지 ID가 클라이언트에 반환됩니다.If RAISERROR is used within a sqlcmd script and a state of 127 is raised, sqlcmd will quit and return the message ID back to the client.예를 들어For example:

참고

대화형 모드에서 표시되는 줄 수는 :r 명령이 나타날 때마다 1씩 증가합니다.The line count that is displayed in interactive mode will be increased by one for every :r command encountered.:r 명령은 목록 명령의 출력에 나타납니다.The :r command will appear in the output of the list command.

:Serverlist:Serverlist로컬로 구성된 서버와 네트워크상에서 브로드캐스팅하는 서버의 이름을 표시합니다.Lists the locally configured servers and the names of the servers broadcasting on the network.

원격 서버에 있는 입력 파일을 로컬 컴퓨터에 있는 sqlcmd 에서 호출할 경우 이 파일에 :out c:\OutputFile.txt와 같은 드라이브 파일 경로가 포함되어 있으면If an input file that is located on a remote server is called from sqlcmd on a local computer and the file contains a drive file path such as :out c:\OutputFile.txt.출력 파일이 원격 서버가 아닌 로컬 컴퓨터에 생성됩니다.The output file will be created on the local computer and not on the remote server.

Transact-SQL 쿼리의 출력 형식Output Format from Transact-SQL Queries

먼저sqlcmd 는 SELECT 목록에서 지정한 열 이름이 포함된 열 머리글을 출력합니다.sqlcmd first prints a column header that contains the column names specified in the select list.열 이름은 SQLCMDCOLSEP 문자로 구분됩니다.The column names are separated by using the SQLCMDCOLSEP character.기본적으로 구분 문자는 공백입니다.By default, this is a space.열 이름이 열 너비보다 짧은 경우 출력은 다음 열까지 공백으로 채워집니다.If the column name is shorter than the column width, the output is padded with spaces up to the next column.

이 줄 다음에는 대시 문자로 이루어진 구분선이 삽입됩니다.This line will be followed by a separator line that is a series of dash characters.다음은 출력의 예입니다.The following output shows an example.