F
Fins
Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠,小弟我最近研究存贮过程,但经看书查资料的结果很不理想。主要是书的例子
无法正常使用。现将例子写出来给各位大侠,检查检查看是什么问题告诉小弟一下,小弟
不胜感激。
小弟用的是DELPHI6和MSSQL2000,以WIN2000做为平台。
存贮过程如下:
Create Procedure AA @Number Char(10) as
Update Table1 Set AA='AAAA' Where AA=@number
Go
DELPHI中有一个Database1控件做为连接服务器数据库和一个TstoredProc做为调用存贮
过程的控件,TStoredProc控件中只设置了Database指向Database1和StoredProcName值设
为AA指向服务器中存贮过程,指定后在Params属性中出现两个参数0-Result和1-@number
两个参数值。我在DELPHI中按照书中的例子进行调用代码如下:
StoredProc1.ParamByName('@Number).Asstring:='BBB';
或 StoredProc1.Params[1].Asstring:='BBB';
StoredProc1.ExecProc;
出错,提示说无法找到@Number参数,我看调试器发现出错代码在StoredProc1.ExecProc
这句,我查询了一些书籍和资料对存贮过程的参数传递都是上面两种传递方式。但不知什
么原因,始终出错。
我将存贮过程改为不需要传递参数直接进行调用就OK了。
但我用存贮过程返回记录集时,无法用TDataSource控件把数据集和DBGrid连接起来,
但又不出错。
Create Procedure BB As
Select * From Table1
Result 100
go
可以明显的感觉到数据已经读取但DbGrid控件无法显示数据集,返回数也无法读数。
请各位大侠指数一二,小弟感激万分。
无法正常使用。现将例子写出来给各位大侠,检查检查看是什么问题告诉小弟一下,小弟
不胜感激。
小弟用的是DELPHI6和MSSQL2000,以WIN2000做为平台。
存贮过程如下:
Create Procedure AA @Number Char(10) as
Update Table1 Set AA='AAAA' Where AA=@number
Go
DELPHI中有一个Database1控件做为连接服务器数据库和一个TstoredProc做为调用存贮
过程的控件,TStoredProc控件中只设置了Database指向Database1和StoredProcName值设
为AA指向服务器中存贮过程,指定后在Params属性中出现两个参数0-Result和1-@number
两个参数值。我在DELPHI中按照书中的例子进行调用代码如下:
StoredProc1.ParamByName('@Number).Asstring:='BBB';
或 StoredProc1.Params[1].Asstring:='BBB';
StoredProc1.ExecProc;
出错,提示说无法找到@Number参数,我看调试器发现出错代码在StoredProc1.ExecProc
这句,我查询了一些书籍和资料对存贮过程的参数传递都是上面两种传递方式。但不知什
么原因,始终出错。
我将存贮过程改为不需要传递参数直接进行调用就OK了。
但我用存贮过程返回记录集时,无法用TDataSource控件把数据集和DBGrid连接起来,
但又不出错。
Create Procedure BB As
Select * From Table1
Result 100
go
可以明显的感觉到数据已经读取但DbGrid控件无法显示数据集,返回数也无法读数。
请各位大侠指数一二,小弟感激万分。