如给一个存储过程传递参数?

aybc 2003-10-17 02:47:01
在sql中建立了这样一个存储过程
 CREATE proc aaa @nums char(10)='cccc' as
 select * from auname where name=@nums
 GO
在delphi中用adostoredproc调用存储过程
adostoredproc1.Parameters.ParamValues['@nums']:='aaaa';
ADOStoredProc1.Open;

错误信息里说:参数@nums不存在,这是为什么呀?


...全文
29 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sihybunbun 2003-10-18
  • 打赏
  • 举报
回复
Execproc不能返回数据集吧?既然在存储过程中只用了一个select,至少想返回一个数据集吧.
gdwyh 2003-10-17
  • 打赏
  • 举报
回复
adostoredproc1.Parameters.ParamByName('nums').Value:='aaaa'; 也可以
gdwyh 2003-10-17
  • 打赏
  • 举报
回复
adostoredproc1.Parameters.Items[0].Value:='aaaa';
chenkandy 2003-10-17
  • 打赏
  • 举报
回复
ADOStoredProc1.ExecProc才對
herofy 2003-10-17
  • 打赏
  • 举报
回复
建存储过程?,存储过程的下传参数可以有值吗?我没这么用过,把='cccc' 去掉吧?
ShiStone 2003-10-17
  • 打赏
  • 举报
回复
ExecProc呢?
pdcdiy163 2003-10-17
  • 打赏
  • 举报
回复
加:号
sihybunbun 2003-10-17
  • 打赏
  • 举报
回复
以前也遇到过这个问题,忘了怎么解决的.
如果在程序运行中动态改变存储过程名
尝试用adostoredproc1.Parameters.CreateParameter()创建参数
aybc 2003-10-17
  • 打赏
  • 举报
回复
去掉也不行
47522341 2003-10-17
  • 打赏
  • 举报
回复
去掉@

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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