DECLARE @dt DATETIMESET @dt='2014-03-21'SET LANGUAGE N'English' UPDATE b SET QDRQY=CONVERT(VARCHAR(11),GETDATE(),109)
不能这么写吧,我是把现有的日期更改呀,只要新增一条记录,就执行存储过程,我写的完整语句如下: create proc z_XSHT_ENGLISH @djlsh int as set language 'english' update XSHTH set XSHTH.QDSJY=a.qdrqa,XSHTH.ZYSJY=a.zysja,XSHTH.ZZSJY=a.zzsja,XSHTH.SXSJY=a.sxrqa,XSHTH.JSSJY=a.wxrqa from xshth,(select qdrqa=stuff(stuff(convert(varchar(11),qdrq,109),4,1,N'.'),7,1,N','), zysja=stuff(stuff(convert(varchar(11),zysj,109),4,1,N'.'),7,1,N','), zzsja=stuff(stuff(convert(varchar(11),zzsj,109),4,1,N'.'),7,1,N','), sxrqa=stuff(stuff(convert(varchar(11),sxrq,109),4,1,N'.'),7,1,N','), wxrqa=stuff(stuff(convert(varchar(11),wxrq,109),4,1,N'.'),7,1,N',') from XSHTH where DjLsh=@djlsh) a where xshth.DjLsh=@djlsh
哪里需要这么复杂create proc z_XSHT_ENGLISH @djlsh int as set language 'english' UPDATE b set QDSJY=CONVERT(VARCHAR(11),QDSJY,109), ... FROM XSHTH AS b WHERE b.DjLsh=@djlsh
UPDATE b SET QDRQY=CONVERT(VARCHAR(11),GETDATE(),109)
create proc z_XSHT_ENGLISH
@djlsh int
as
set language 'english'
update XSHTH set XSHTH.QDSJY=a.qdrqa,XSHTH.ZYSJY=a.zysja,XSHTH.ZZSJY=a.zzsja,XSHTH.SXSJY=a.sxrqa,XSHTH.JSSJY=a.wxrqa
from xshth,(select qdrqa=stuff(stuff(convert(varchar(11),qdrq,109),4,1,N'.'),7,1,N','),
zysja=stuff(stuff(convert(varchar(11),zysj,109),4,1,N'.'),7,1,N','),
zzsja=stuff(stuff(convert(varchar(11),zzsj,109),4,1,N'.'),7,1,N','),
sxrqa=stuff(stuff(convert(varchar(11),sxrq,109),4,1,N'.'),7,1,N','),
wxrqa=stuff(stuff(convert(varchar(11),wxrq,109),4,1,N'.'),7,1,N',') from XSHTH where DjLsh=@djlsh) a where xshth.DjLsh=@djlsh
@djlsh int
as
set language 'english'
UPDATE
b
set
QDSJY=CONVERT(VARCHAR(11),QDSJY,109),
...
FROM
XSHTH AS b
WHERE
b.DjLsh=@djlsh
select stuff(stuff(convert(varchar(11),getdate(),109),3,1,N'.'),6,1,N',')