首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

咨询:小弟我的delphi代码中,update语句的写法不会更新table2字段的值

2012-03-02 
咨询:我的delphi代码中,update语句的写法不会更新table2字段的值我的程序有下面片段:Delphi(Pascal) code.

咨询:我的delphi代码中,update语句的写法不会更新table2字段的值
我的程序有下面片段:

Delphi(Pascal) code
......//说明:下面用到的所有变量都事先做了定义s1:='select s_id from table1 where a_nbr='+quotedstr(v_a_nbr);query_bi.sql.text:=s1;qeery_bi.open;v_s_id:=query_bi.fields[0].asstring;query_baocun_2.sql.clear;query_baocun_2.sql.add('update table2 set s_id=:v_s_id where a_nbr=:v_a_nbr');query_baocun_2.execsql....

说明:我代码的目的是循环从table1表里(ORACLE数据库)取得s_id的值,然后,修改table2(SQL SERVER2000)s_id的值

[解决办法]
你的两个参数都没有赋值(:v_s_id,:v_a_nbr)在执行前,要先赋值。
......
query_baocun_2.Parameters.ParamValues['v_s_id'] := xxxx;
query_baocun_2.Parameters.ParamValues['v_a_nbr'] := yyyyy;
query_baocun_2.execsql;
[解决办法]
1.跟踪到循环里面下看参数的值是不是都正确嘛;
2.检查下数据库相关字段,是不是有什么关联之类的设置~
[解决办法]
探讨
我的程序有下面片段:

Delphi(Pascal) code

......

//说明:下面用到的所有变量都事先做了定义
s1:='select s_id from table1 where a_nbr='+quotedstr(v_a_nbr);
query_bi.sql.text:=s1;
qeery_bi.open;

v_s_id:=query_bi.fields[……

热点排行