怎样获取当前日期按照规定的格式显示?

plutu 2007-05-27 09:34:35
我是在一个存储过程中用的,需要的格式是:exec ProName '2007-5-28',就是取当前日期,加上单引号,我用下列语句没法生成需要的格式,exec progufei @Kdate=''''+ convert(char(10),getdate(),120)+'''',请问怎么才能生成我要的格式啊?谢谢!
...全文
255 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
plutu 2007-05-28
  • 打赏
  • 举报
回复
在查询分析器中执行是没问题的,但在.Net中的数据源配置中不能执行
Yang_ 2007-05-28
  • 打赏
  • 举报
回复
set nocount on declare @dt datetime set @dt = convert(char(10),getdate(),120) exec ProName @dt

把这当成一个语句是可以执行的


plutu 2007-05-28
  • 打赏
  • 举报
回复
从查询分析器中用
declare @dt varchar(10)
set @dt = convert(char(10),getdate(),120)
exec ProName @dt
是可以,但这个不能在其他地方用,我想能一次生成 exec ProName '2007-5-28'这样的格式
plutu 2007-05-27
  • 打赏
  • 举报
回复
如果直接用exec progufei @Kdate=convert(char(10),getdate(),120)则报“在关键字 'convert' 附近有语法错误。”的错误,因此我就觉得很奇怪
plutu 2007-05-27
  • 打赏
  • 举报
回复
为什么不能直接exec ProName convert(char(10),getdate(),120)或用字符串连接的方式用?怎么能不用变量就能直接生成调用格式?
OracleRoob 2007-05-27
  • 打赏
  • 举报
回复
--这样不对?

exec progufei @Kdate=convert(char(10),getdate(),120)
plutu 2007-05-27
  • 打赏
  • 举报
回复
我是要在外边初始化时用,我是在ASP.Net中用的,有参数不行,我要的是直接能生成的两边带单引号的,谢谢
OracleRoob 2007-05-27
  • 打赏
  • 举报
回复
declare @dt varchar(10)

set @dt = convert(char(10),getdate(),120)

exec ProName @dt
plutu 2007-05-27
  • 打赏
  • 举报
回复
@Kdate是存储过程中的一个日期型参数,只有一个参数,因此执行时@Kdate可以要也可以不要
弘毅致远 2007-05-27
  • 打赏
  • 举报
回复
用SQL帮助查convert或者cast有很详细的解释。
OracleRoob 2007-05-27
  • 打赏
  • 举报
回复
存储过程的参数不能直接是函数。

在前台直接调用如下SQL,就可以:


declare @dt varchar(10)

set @dt = convert(char(10),getdate(),120)

exec ProName @dt

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧