咨询:我的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.检查下数据库相关字段,是不是有什么关联之类的设置~
[解决办法]