有一个张表名为jsdchang1,我想更新这个表里的数据,更新的字段来自于另一个.
我写了一个存储过程想用循环来完成,一条一条的更新,我的代码如下:
窗体上我分别放了三个控件adoquery,adotable,adostoredproc,
原来的程序如下:
var
i:integer;
company:string;
for i :=1 to Adotable1.FieldCount do
begin
adotable1.Open;
company:=adotable1.FieldByName('unitname').Value; adostoredproc1.ExecProc ;
adotable1.Next;
adotable1.close;
end;
存储过程如下:下面这个存储过程我想往里面传两个表名参数,因为是要更新六个表.
CREATE PROCEDURE dbo.proUpdateJsd
AS
declare @tabjsd varchar(20)
declare @tabcompany varchar (20)
exec('UPDATE '+@tabjsd+
'SET parentname =(SELECT company_name FROM '+@tabcompany
+'WHERE '+@tabcompany+'.company_subname = '+@tabjsd+'.unitname),
parentid =
(SELECT parentid
FROM '+@tabcompany+
'WHERE '+@tabcompany+'.company_subname = '+@tabjsd+'.unitname)
companyid=(select company_id from '+@tabcompany+'where '+@tabcompany+'.company_subname ='+@tabjsd+'.unitname)')
GO问题有如下几个:
我怎么使adostoredpro1传递参数,这个循环我怎么写?
我写了一个存储过程想用循环来完成,一条一条的更新,我的代码如下:
窗体上我分别放了三个控件adoquery,adotable,adostoredproc,
原来的程序如下:
var
i:integer;
company:string;
for i :=1 to Adotable1.FieldCount do
begin
adotable1.Open;
company:=adotable1.FieldByName('unitname').Value; adostoredproc1.ExecProc ;
adotable1.Next;
adotable1.close;
end;
存储过程如下:下面这个存储过程我想往里面传两个表名参数,因为是要更新六个表.
CREATE PROCEDURE dbo.proUpdateJsd
AS
declare @tabjsd varchar(20)
declare @tabcompany varchar (20)
exec('UPDATE '+@tabjsd+
'SET parentname =(SELECT company_name FROM '+@tabcompany
+'WHERE '+@tabcompany+'.company_subname = '+@tabjsd+'.unitname),
parentid =
(SELECT parentid
FROM '+@tabcompany+
'WHERE '+@tabcompany+'.company_subname = '+@tabjsd+'.unitname)
companyid=(select company_id from '+@tabcompany+'where '+@tabcompany+'.company_subname ='+@tabjsd+'.unitname)')
GO问题有如下几个:
我怎么使adostoredpro1传递参数,这个循环我怎么写?
解决方案 »
- 请问有Delphi开发有关WinPCap相关的例子吗?
- 求 D6中 Chart 控件的 详细使用的中文教程!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
- 怎么获取我光标所在memo的位置。。??
- Text-file device drivers 的用处?
- 求教!怎么做出像属性框(Object Inspector)中的ImageIndex那种的下拉框?
- 在delphi窗体中如何嵌入office word?
- 请教:数据表记录的处理。
- hi,如何进行MDB压缩?
- 想挣外块的朋友请进来!求购源代码或解决方案!
- "共享"到哪去了?
- TFileStream能以共享的方式打开文件吗?
- 哪位提供一下SQL语法,和函数啊....
sp_PartMoney.Close;
sp_PartMoney.ProcedureName := 'PrGm_GetCash';
sp_PartMoney.Parameters.Refresh;
sp_PartMoney.Parameters.ParamByName('@inbSilverCloudNet').Direction := pdoutput;
sp_PartMoney.Parameters.ParamByName('@inbSilverCloudNet').Value := inbSilverCloudNet; sp_PartMoney.Parameters.ParamByName('@inb99Bill').Direction := pdoutput;
sp_PartMoney.Parameters.ParamByName('@inb99Bill').Value := inb99Bill; sp_PartMoney.Parameters.ParamByName('@inbSilver168').Direction := pdoutput;
sp_PartMoney.Parameters.ParamByName('@inbSilver168').Value := inbSilver168; sp_PartMoney.Parameters.ParamByName('@inbSilverSMS').Direction := pdoutput;
sp_PartMoney.Parameters.ParamByName('@inbSilverSMS').Value := inbSilverSMS; sp_PartMoney.Parameters.ParamByName('@inySort').Value := lSort; sp_PartMoney.Parameters.ParamByName('@dtmBgnDate').Value := BgnDate1.Date;
sp_PartMoney.Parameters.ParamByName('@dtmEndDate').Value := EndDate1.Date;
sp_PartMoney.ExecProc;