2013-10-18 2 views
-2

에 데이터를 삽입 할 때 테이블문자열이나 이진 데이터는 내가 새로 만든 테이블

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[DimRegion2013]') AND type in (N'U')) 
DROP TABLE [DimRegion2013] 
Go 
Create Table DimRegion2013 

(RegionKey int NOT NULL identity Primary Key,        
RegionView char(1), 
RegionViewCode char(1), 
SublocationString nvarchar(7), 
SubLocationCode char(10), 
LocationCode char(10), 
RegionCode char(10), 
RegionGrpCode char(10), 
DivisionCode char(10), 
DivisionGrpCode char(10), 
SubLocationDescription char(50), 
LocationDescription char(50), 
RegionDescription char(50), 
RegionGrpDescription char(50), 
DivisionDescription char(50), 
DivisionGrpDescription char(50)) 

를 생성 한 후 나는 DimRegion2013 테이블에 데이터를 삽입하려고립니다.

Select 
'Region1' as RegionView, 
'R1' as RegionViewCode, 
sl.sublocationstring, 
sl.subLocationCode, 
l.locationcode, 
r.regioncode, 
rg.RegionGrpCode, 
d.DivisionCode, 
dg.DivisionGrpCode, 
sl.SubLocationDescription, 
l.LocationDescription, 
r.regiondescription, 
rg.RegionGrpDescription, 
d.divisionDescription, 
dg.DivisionGrpDescription 
from SMECSubLocation sl, 
SCLocation l, 
SCRegion r, 
SCRegionGrp rg, 
SCDivision d, 
SCDivisionGrp dg 
where l.LocationCode = sl.LocationCode 
and r.RegionCode = l.RegionCode 
and r.RegionGrpCode = rg.RegionGrpCode 
and d.divisioncode = rg.divisioncode 
and d.divisiongrpcode = dg.divisiongrpcode 

와 나는이 오류

에게 메시지 8152, 수준 16, 상태 14, 4 호선
문자열이나 이진 데이터는 잘립니다를 얻을.

아무 문제가 없습니다. 이 문제를 해결하도록 도와주세요.

감사합니다.

+0

'Char (1)'컬럼에 7 개의 문자열 리터럴'Region1'을 삽입하려고합니다. –

답변

0

테이블은 모두

RegionView char(1), 
RegionViewCode char(1) 

정의하지만 그 분야에 맞게 너무 많이

'Region1' as RegionView, 
'R1' as RegionViewCode 

를 삽입하려고합니다. 해당 데이터를 저장하려면 필드를 더 크게 만들어야합니다. 데이터의 크기가 많이 달라지는 경우 varchar(??)을 사용하겠습니까? (예 : 20이 최대 인 경우 varchar(20))

다른 필드도 잘리지 만 다른 테이블의 정의는 알지 못할 수도 있습니다. 당신이 사용하고 있다는 것은 확실히 말할 수 없습니다.

+0

알았습니다! 감사!! – BA82283

+0

@ BA82283 도와 드리겠습니다. 부수적으로,'char' 대신에'varchar'type을 사용하는 것이 좋습니다. 왜냐하면'char'는 할당 된 모든 공간을 사용하기 때문에 길이가 다양하기 때문에 낭비되는 저장 공간이 많이 생길 수 있습니다. – jpw

관련 문제