declare @fssCode varchar
declare @emid int
declare SCPc1 cursor for select emid,FssCode from pubElementBase
open SCPc1
fetch next from SCPc1 into @emid,@fssCode
while @@fetch_status=0
begin
select @FssCode=FssCode from pubelementBase where emid=@emid and isnull(fssCode,'')<>''
print 'emid=' + convert(varchar,@emid) + ' fsscode=' + @FssCode
fetch next from SCPc1 into @emid,@fssCode
end
close SCPc1
deallocate SCPc1
得到結果總是
emid=1 fsscode=1
emid=2 fsscode=
emid=3 fsscode=
emid=4 fsscode=1
正確結果應該是
emid=1 fsscode=1
emid=2 fsscode=1111
emid=3 fsscode=1112
emid=4 fsscode=111112
fsscode為字符型.
用fetch next from SCPc1 into @emid,@fssCode也不行.結果都一樣.
declare @emid int
declare SCPc1 cursor for select emid,FssCode from pubElementBase
open SCPc1
fetch next from SCPc1 into @emid,@fssCode
while @@fetch_status=0
begin
select @FssCode=FssCode from pubelementBase where emid=@emid and isnull(fssCode,'')<>''
print 'emid=' + convert(varchar,@emid) + ' fsscode=' + @FssCode
fetch next from SCPc1 into @emid,@fssCode
end
close SCPc1
deallocate SCPc1
得到結果總是
emid=1 fsscode=1
emid=2 fsscode=
emid=3 fsscode=
emid=4 fsscode=1
正確結果應該是
emid=1 fsscode=1
emid=2 fsscode=1111
emid=3 fsscode=1112
emid=4 fsscode=111112
fsscode為字符型.
用fetch next from SCPc1 into @emid,@fssCode也不行.結果都一樣.
select emid,FssCode from pubElementBase
結果是
1 1
2 1111
3 1112
4 111112
declare @fssCode varchar --这样默认长度就为1,改为如下declare @fssCode varchar(30)