CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

动态执行语句

楼主tianya2005(天涯飘雪)2005-06-01 10:59:49 在 MS-SQL Server / 基础类 提问

描述如下:  
  declare   @i   int  
  exec   (@i=master..xp_cmdshell   'dir   d:\test20050601',no_output)  
  print   @i  
  正常运行,需把它改成每天检查是否已生成备份文件的语句  
  declare   @i   int  
  exec   ('@i=master..xp_cmdshell   '+   '''dir   d:\test''+convert(varchar(8),getdate(),112)'+',no_output')  
  print   @i  
  运行时提示:  
  服务器:   消息   137,级别   15,状态   2,行   1  
  必须声明变量   '@i'。  
   
  这是为什么?哪里改错了请指教! 问题点数:20、回复次数:4Top

1 楼zjcxc(邹建)回复于 2005-06-01 11:12:42 得分 10

declare   @i   int,@s   varchar(8000)  
  set   @s='dir   d:\test'+convert(varchar(8),getdate(),112)  
  exec   @i=master..xp_cmdshell   @s,no_output  
  Top

2 楼tianya2005(天涯飘雪)回复于 2005-06-01 11:13:13 得分 0

大哥们看一下呀,我都晕了!Top

3 楼duanduan1122(俺村俺帅!!!)回复于 2005-06-01 11:13:54 得分 10

declare   @i   int,@date   varchar(50)  
  set   @date=convert(varchar(8),getdate(),112)  
  exec   ('@i=master..xp_cmdshell   ''dir   d:\test\'+@date+''',no_output')  
  print   @iTop

4 楼tianya2005(天涯飘雪)回复于 2005-06-01 11:19:58 得分 0

还是不明白为什么不能一个语句实现,好象语法上没写错呀?邹大哥的能用,楼上的不能用:DTop

相关问题

  • 如何执行动态SQL语句?
  • c++如何动态执行语句?
  • 如何动态执行java语句,急!!!!!!!
  • 如何执行动态sql语句??
  • proc中如何动态的执行sql语句。
  • 如何在vb.net beta2中动态执行sql语句!
  • adodc执行动态sql语句的错误!
  • ASA中执行动态sql的语句是什么?
  • 如何在oracle存储过程中执行动态sql语句???
  • 动态sql语句,用execute immediate 执行,为什么出错?

关键词

  • 语句
  • xp
  • date
  • cmdshell
  • dir d
  • getdate
  • master
  • varchar
  • convert
  • output

得分解答快速导航

  • 帖主:tianya2005
  • zjcxc
  • duanduan1122

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo