关于c#调用db2中的存储过程sysproc.admin_cmd的问题

wuwen624 2008-09-26 01:20:10
请问有没有办法在开发程序的时候调用db2中的sysproc.admin_cmd这个存储过程呢?我使用的是c#,但是把例如select * from tmp这样一个语句当作参数传入的时候,他就报sqlcode0104,这个存储过程的参数需要sysproc.admin_cmd('select * from tmp'),我传参的时候不管有没有单引号,都会报错,所以想请教一下这个存储过程能在程序中调用么?还是只能在命令行方式下使用。 如果可以使用最好能给一段例程,谢谢了
...全文
382 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang_s_j 2008-09-28
  • 打赏
  • 举报
回复
不能使用Select
wuwen624 2008-09-28
  • 打赏
  • 举报
回复
还是没有答案?没有人试验过么?
wuwen624 2008-09-26
  • 打赏
  • 举报
回复
我自定义的存储过程调用的时候就是没有用call的,像下边这样的
OleDbConnection conn1 = new OleDbConnection(ConnectionString);
OleDbCommand comm1 = new OleDbCommand();
comm1.CommandText = "DB2ADMIN.CREATEDB";
comm1.CommandType = CommandType.StoredProcedure;
OleDbParameter param = comm1.Parameters.Add("@DBNAMESTRING", OleDbType.VarChar, 254);
param.Value = "testtable" ;
conn1.Open();
comm1.Connection = conn1;
comm1.ExecuteNonQuery();
运行没有问题,我在调用sysproc.admin_cmd的时候如果写成comm1.CommandText = "call sysproc.admin_cmd",会报sql语法错误,是不是写法不对,能不能给个例子看看怎么样能够正常运行一个sql语句,select的就可以,谢谢
liyan93834183 2008-09-26
  • 打赏
  • 举报
回复
执行存储过程用
call sysproc.admin_cmd()
.net也是这么用,你的参数不对吧,
存储过程sysproc.admin_cmd()的参数是clob类型的
wuwen624 2008-09-26
  • 打赏
  • 举报
回复
自己顶一下,别沉了

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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