编写带参数的SQL7.0存储过程的格式? (100分)

  • 主题发起人 主题发起人 dbo
  • 开始时间 开始时间
D

dbo

Unregistered / Unconfirmed
GUEST, unregistred user!
编写带参数的存储过程的格式? 数据库为SQL SEVER 7.0+NT4.0 客户端由

DELPHI编写的程序。我的格式如下,请各高手指点:

CREATE PROCEDURE JK_P_CLIENT
@C_NO CHAR(10)
AS
SELECT *
FROM CLIENT
WHERE C_NO=@C_NO

其中表CLIENT有字段 C_NO, C_NAME, ...等,C_NO数型为 CHAR 10

客户端调用:
StoredProc1.Active:=False;
StoredProc1.Params[1].AsString:='00001';
StoredProc1.Active:=True;

运行出现下列错误信息:

Gerenal SQL error
Could find Stored Procedure 'dbo.JK_P_CLIENT'

请问我错在哪里?
 
用一个Query就可以了。
Query1.sql.text:='exec JK_P_CLIENT :pa';
query1.params[0].asstring:=value;
query1.open;
 
TO:千中元
调用‘ExecProc’ 还是出现同样的错误,为什么?
说明一下,我的存储过程存在服务器。

错误:
Gerenal SQL error
Could find Stored Procedure 'dbo.JK_P_CLIENT;1'
 
错误信息已经明确告诉你了。
你在Query Analyzer直接加参数执行: exec PROCEDURE JK_P_CLIENT 特定参数
,看能否运行?
若是的话,可能是你的database 设置错了。
用BDE或者ODBC连接时,请注意你的缺省database是什么
再想你的存储过程是否改过名字.
 
Gerenal SQL errorCould find Stored Procedure 'dbo.JK_P_CLIENT;1'
这几天有同样的一个贴子。
你在指定TStoredproc时的storedprocname时把在选中后再把后面那个';1'去掉就可以了,也就是说
你的那个storedproc的storedprocname值应为'dbo.JK_P_CLIENT'而不是'dbo.JK_P_CLIENT;1'
同时记得要用execproc
 
TO:htw
  非常感谢!果然是'dbo.JK_P_CLIENT;1'的问题,不过有一点不太明白,对那
些不带参数的存储过程调用,不去掉storedprocname后面那个';1'一样可以运行,
而不会出错。
  我是用Active来调用的,因为需要返回结果。
 
faint,怎么我说的答案成了别人的成果了,看来这分又有问题了,最近老是得不了分
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
770
import
I
后退
顶部