SQL Server 이전 버전으로부터 기본 및 문자 형식 데이터 가져오기
SQL Server 2012에서 -V 스위치와 함께 bcp를 사용하여 SQL Server 2000, SQL Server 2005 또는 SQL Server 2008에서 고유 및 문자 형식 데이터를 가져올 수 있습니다. -V 스위치를 사용하면 SQL Server 2012에서 지정된 이전 SQL Server 버전이 사용되며, 데이터 파일 형식은 해당 이전 버전의 형식과 동일합니다.
데이터 파일에 대해 이전 SQL Server 버전을 지정하려면 다음 한정자 중 하나와 함께 -V 스위치를 사용합니다.
SQL Server 버전 |
한정자 |
---|---|
SQL Server 2000 |
-V 80 |
SQL Server 2005 |
-V 90 |
SQL Server 2008 |
-V 100 |
SQL Server 2005에 소개된 데이터 형식의 해석
SQL Server 2005 이후 버전에서는 몇 가지 새로운 형식을 지원합니다. 새 데이터 형식을 이전 SQL Server 버전으로 가져오려면 이전 bcp 클라이언트에서 읽을 수 있는 형식으로 저장되어야 합니다. 다음 표에서는 SQL Server 2005의 새 데이터 형식을 이전 버전의 SQL Server와 호환되도록 변환하는 방법을 요약합니다.
SQL Server 2005의 새로운 데이터 형식 |
6x 버전의 호환 데이터 형식 |
70 버전의 호환 데이터 형식 |
80 버전의 호환 데이터 형식 |
---|---|---|---|
bigint |
decimal |
decimal |
* |
sql_variant |
text |
nvarchar(4000) |
* |
varchar(max) |
text |
text |
text |
nvarchar(max) |
ntext |
ntext |
ntext |
varbinary(max) |
image |
image |
image |
XML |
ntext |
ntext |
ntext |
UDT1 |
image |
image |
image |
* 이 형식은 기본 지원됩니다.
1 UDT는 사용자 정의 형식을 나타냅니다.
SQL Server 2005 이상 버전에서 내보내기
–V 80 스위치를 사용하여 SQL Server 2005 이상 버전에서 데이터를 대량으로 내보내는 경우 기본 모드의 nvarchar(max), varchar(max), varbinary(max), XML 및 UDT 데이터는 SQL Server 2005 이상 버전의 기본값인 8바이트 접두사가 아니라 text, image 및 ntext 데이터와 같이 4바이트 접두사를 사용하여 저장됩니다.
날짜 값 복사
bcp는 ODBC 대량 복사 API를 사용합니다. 따라서 데이터 값을 SQL Server로 가져오기 위해 bcp는 ODBC 날짜 형식(yyyy-mm-dd hh:mm:ss[.f...])을 사용합니다.
bcp 명령은 datetime 및 smalldatetime 값에 대해 ODBC 기본 형식을 사용하여 문자 형식 데이터 파일을 내보냅니다. 예를 들어 12 Aug 1998이라는 날짜가 포함된 datetime 열은 1998-08-12 00:00:00.000 문자열로 데이터 파일에 대량 복사됩니다.
중요 |
---|
bcp를 사용하여 smalldatetime 필드로 데이터를 가져올 때 초 값이 00.000인지 확인하십시오. 그렇지 않으면 이 작업은 실패합니다. smalldatetime 데이터 형식은 가장 근접한 분 값만 갖습니다. 이 경우 BULK INSERT 및 INSERT ... SELECT * FROM OPENROWSET(BULK...)는 이 경우 실패하지 않지만 초 값이 잘립니다. |
관련 태스크
대량 가져오기 또는 대량 내보내기를 위한 데이터 형식을 사용하려면
[Top]