名为shui的SQL Server 2000数据库中,有一存储过程
CREATE PROCEDURE xialiang
@zcm nvarchar(6),
@sj numeric(3,2),
@xlrq datetime,
@qs int,
@zs int,
@xlsl int
AS
insert xlb (zcm,sj,xlrq,qs,zs,xlsl) values (@zcm,@sj,@xlrq,@qs,@zs,@xlsl)
GO当在查询分析器里执行下面两行时
use shui
exec xialiang '136793',2,getdate(),178,180,2
出现错误:
服务器: 消息 170,级别 15,状态 1,行 2
第 2 行: ')' 附近有语法错误。
CREATE PROCEDURE xialiang
@zcm nvarchar(6),
@sj numeric(3,2),
@xlrq datetime,
@qs int,
@zs int,
@xlsl int
AS
insert xlb (zcm,sj,xlrq,qs,zs,xlsl) values (@zcm,@sj,@xlrq,@qs,@zs,@xlsl)
GO当在查询分析器里执行下面两行时
use shui
exec xialiang '136793',2,getdate(),178,180,2
出现错误:
服务器: 消息 170,级别 15,状态 1,行 2
第 2 行: ')' 附近有语法错误。
use shui
exec xialiang '136793',2,'2008-1-1',178,180,2
只是把getdate()换了
go
declare @dt datetime
set @dt=getdate()exec xialiang '136793',2,@dt,178,180,2
exec xialiang '136793',2,select getdate(),178,180,2
插入语句中去掉它.
存储过程传递时不用该参数.
declare @t datetime
set @t=getdate()
exec xialiang '136793',2,@t,178,180,2
@zcm nvarchar(6),
@sj numeric(3,2),
@xlrq datetime default getdate(),
@qs int,
@zs int,
@xlsl int
AS
insert xlb (zcm,sj,qs,zs,xlsl) values (@zcm,@sj,@qs,@zs,@xlsl)
GO
exec xialiang '136793',2,Current_Timestamp,178,180,2
use shui
exec xialiang '136793',2,convert(nvarchar,getdate(),112),178,180,2