程序是这样的。
定义了一个数据模块DMD,向DMD中加入一个连接数据库组件SQLConn : TSQLConnection,
一个数据库的执行模块SQLProcSales : TSQLStoredProc,
各属性设置如下:
SQLConn
ConnnectionName: databaseName (是MSQL2000)
Connected: true
SQLProcSales
SQLConnection:SQLConn
storedProcName:salesProc
params: 0-clientICID
clientICID的属性是:
属性是:datatype:ftsamllint,paramtype:ptInput,valaue.type:shortint后台数据库的存储过程如下:
CREATE PROCEDURE SalesProc @ClientICID int
as
begin
update ICInfor
set
currentCount = currentCount+5,SumCount=SumCount+5
where ICID =@clienticidend
GO
源代码如下:
DMD.SQLProcSales.Params.ParamByName('clienticid').Value:=7;
DMD.SQLProcSales.ExecProc;
ShowMessage('proc yes')
运行的时候,程序出现这样的错误,
list index out of bound(0)
我不明白,为何出现这样的错主误!用上述方法,执行不含参数的过程时,能够通过!
定义了一个数据模块DMD,向DMD中加入一个连接数据库组件SQLConn : TSQLConnection,
一个数据库的执行模块SQLProcSales : TSQLStoredProc,
各属性设置如下:
SQLConn
ConnnectionName: databaseName (是MSQL2000)
Connected: true
SQLProcSales
SQLConnection:SQLConn
storedProcName:salesProc
params: 0-clientICID
clientICID的属性是:
属性是:datatype:ftsamllint,paramtype:ptInput,valaue.type:shortint后台数据库的存储过程如下:
CREATE PROCEDURE SalesProc @ClientICID int
as
begin
update ICInfor
set
currentCount = currentCount+5,SumCount=SumCount+5
where ICID =@clienticidend
GO
源代码如下:
DMD.SQLProcSales.Params.ParamByName('clienticid').Value:=7;
DMD.SQLProcSales.ExecProc;
ShowMessage('proc yes')
运行的时候,程序出现这样的错误,
list index out of bound(0)
我不明白,为何出现这样的错主误!用上述方法,执行不含参数的过程时,能够通过!
DMD.SQLProcSales.ExecProc;
ShowMessage('proc yes')
同样的谢谢你!
DMD.SQLProcSales.Refresh;
DMD.SQLProcSales.Params.ParamByName('clienticid').Value:=7;
DMD.SQLProcSales.ExecProc;
ShowMessage('proc yes')
这些控件我没用过