请教一个sql问题(50分)

X

xcwbl

Unregistered / Unconfirmed
GUEST, unregistred user!
在某存储过程中有一变量 @a char(10),及传入参数@b char(10)
现要求@b带上''赋给@a ,如@b传入值为2002-09-16,则变为'2002-09-16'赋给@a
我试着用@a=''''+@b+'''',不行。
如何实现?
 
为什么不用datetime类型?
 
以上的办法是可以的,只是你的 @a char(10) 应改为 如 @a char(20) 或 @a varchar(20)
等,因为太少位,装不下 '2002-09-16'
 
to smallbs
@a,及@b不一定是datetime类型
 
@a=chr(39)+@b+chr(39)
 
怎么能直接赋值呢?当然是:
Select @a = @b
这样做就行了,管你是什么类型!同类型同长度的变量根本不用改变任何东西。
 
原因是:
@a char(10)
@b char(10)他们的长度都是10

''''+@b+''''长度是12,怎么可以用@a=''''+@b+''''呢
办法是增加a的长度
 

Similar threads

D
回复
0
查看
787
DelphiTeacher的专栏
D
D
回复
0
查看
843
DelphiTeacher的专栏
D
S
回复
0
查看
986
SUNSTONE的Delphi笔记
S
S
回复
0
查看
804
SUNSTONE的Delphi笔记
S
D
回复
0
查看
591
DelphiTeacher的专栏
D
顶部