一个存储过程参数的问题
我建立了一个存储过程:
--------------------输入当前日期存储过程
create procedure 当前日期 @now datetime=null
as
if @now is null
begin
select * from nowTime
return
end
else
begin
insert into nowTime values(@now)
select now as 当前日期 from nowTime
end
如果不带参数显示以前存储的时间,如果带参数(日期格式)则用参数更新。
问题:
如果这样使用:
当前日期 '2007-10-12 18:45:13.717'
运行没有问题。
我想输入系统的当前日期,使用 getdate()作为参数,所以这样使用:
当前日期 select getdate() 或者
当前日期 getdate()
都运行不成功,请问怎样把当前日期getdate()的值直接插进去?谢谢
------解决方案--------------------declare @s datetime
set @s=getdate()
exec 当前日期 @s
------解决方案--------------------可以啊
------解决方案--------------------笨方法是再加一个参数
@n int
@now datetime
......
if(@n=1)
begin
insert into nowTime values(@now)
select now as 当前日期 from nowTime
end
else
begin
insert into nowTime values(getDate())
select now as 当前日期 from nowTime
end
------解决方案--------------------前台输入的字符串由你去控制,想输系统日期就用
declare @s datetime
set @s=getdate()
exec 当前日期 @s
想输日期就
直接
exec 当前日期 '日期字符串'
------解决方案--------------------也可以日期都在前台取,在前台取系统日期也很容易
给存储过程参数时,datetime和varchar都可以
------解决方案--------------------create procedure 当前日期 @now datetime=null
as
if @now is null
begin
select * from nowTime
return
end
else
begin
insert into nowTime values(getdate())
select now as 当前日期 from nowTime
end