2016-03-31 18 views
1

OrganisationIds 1, 2'yi @String değişkenleri içinde saklıyorum. Bunu Integer'e dönüştürmek istiyorum. Herkes yardım edebilir mi?Dönüştürme SQL'de Tamsayıya Dize Başarısız Oldu

Aşağıda

benim kodudur ..

DECLARE @RowCount INT 
Declare @String varchar(100) 
declare @OrganizationIds int 
SELECT @RowCount = COUNT(*) FROM @RawData 
WHILE (@RowCount>0) 
BEGIN 
     set @String=convert(varchar,@OrganizationIds)+',' 
     If (@RowCount>0) 
     Begin 

      PRINT 'Loop Sequence : ' + convert(varchar,@RowCount) + ' ' 
         set @OrganizationIds = (SELECT OrgId FROM @RawData WHERE ROWID = @RowCount) 
      PRINT 'Orgid Inside Loop:' + Convert(varchar,@OrganizationIds) 

End 
    Set @RowCount = @RowCount-1 
Set @OrganizationIds = convert(varchar,@OrganizationIds) 
PRINT 'Orgid Outside Loop:'+ convert(varchar,@OrganizationIds) 
set @[email protected] + Convert(varchar,@OrganizationIds) 
END 
PRINT 'String Value Outside Loop: ' + @String 
Declare @TempData Table 
(
    OrganizationID int 
) 
insert into @TempData(OrganizationID) 
EXEC GetFormsData_Organization @String 
+0

Ayırıcılarınızın nasıl göründüğünü göstermek için ayrı dizeler veya virgülle ayrılmış olarak ayrılmışlar – TheGameiswar

+0

Değişkenlerim şu şekildedir: '1', '2', '3' virgülle ayrılmış – Rajashri

+0

@TheGameiswar Her ikisine de benziyor. –

cevap

0

Sana dönüştürmek yerine CAST işlevini kullanmak zorunda inanıyoruz. Sorunu çözüp çözmediğini deneyin.

İlgili konular