原先用MS-sever2000没有碰到过问题,这几天学校机房改用2005后碰到一个问题,希望网友提供下解决方法。
1.有两个表分别为STU_INFO和CLASS_ID,两个表的字段设计是一样的,CLASS_ID中有较新的数据需要更新到STU_ID中,更新条件是STU_INFO.ID=CLASS_ID.ID。
2.update语句如下
UPDATE STU_INFO SET STU_STU_ID=CLASS_ID.STU_ID
FROM STU_INFO,CLASS_ID
WHERE STU_INFO.ID=CLASS_ID.ID
3.两个表中的STU_ID的字段分别为char(18)
4.执行过语句后就碰到一个问题在STU_INFO.STU_ID就变成了科学计数法了,但是CLASS_ID.STU_ID是正常的。
希望网友可以帮忙解决一下,谢谢大家了~
1.有两个表分别为STU_INFO和CLASS_ID,两个表的字段设计是一样的,CLASS_ID中有较新的数据需要更新到STU_ID中,更新条件是STU_INFO.ID=CLASS_ID.ID。
2.update语句如下
UPDATE STU_INFO SET STU_STU_ID=CLASS_ID.STU_ID
FROM STU_INFO,CLASS_ID
WHERE STU_INFO.ID=CLASS_ID.ID
3.两个表中的STU_ID的字段分别为char(18)
4.执行过语句后就碰到一个问题在STU_INFO.STU_ID就变成了科学计数法了,但是CLASS_ID.STU_ID是正常的。
希望网友可以帮忙解决一下,谢谢大家了~
set @i = '125869325478965628'declare @tb table(id char(18),name varchar(2))insert into @tb(id,name)
select @i,'a'select * from @tb--125869325478965628 a
LZ给点儿数据 看看。 我的 2005上没出现这个问题。
"分别为"一般是带2个的吧,怎么是一个.估计是2个字的类型不一致,UPDATE STU_INFO
SET STU_STU_ID=cast(CLASS_ID.STU_ID as [STU_INFO该字段的数据类型])
FROM STU_INFO,CLASS_ID
WHERE STU_INFO.ID=CLASS_ID.ID