读书人

主、从表有关问题

发布时间: 2012-02-24 16:30:38 作者: rapoo

主、从表问题
adoquery1为主表,adoquery2为从表
adoquery1.sql :select 姓名,身份证 from A
adoquery2.sql :select * from B where 身份证=:身份证

这时没有问题
然后
adoquery1.sql :select 姓名,年龄 from A
adoquery2.sql :select * from B where 姓名=:姓名

提示,身份证 未找到。

怎么办呀?


[解决办法]
提示,身份证 未找到。

怎么办呀?

很明显,你得adoquery2的附属条件没有改变

先关闭adoquery2,再关闭adoquery1,然后在
adoquery1.sql :select 姓名,年龄 from A
adoquery2.sql :select * from B where 姓名=:姓名
[解决办法]
那就把datasource先置为nil,adoquery1设置完后再把datasource设置回去
[解决办法]
也可以试试把adoquery2的参数先清空
ADOQuery2.Parameters.Clear
[解决办法]
adoquery1为主表,adoquery2为从表
adoquery1.sql :select 姓名,身份证 from A
adoquery2.Parameters.Clear; // 增加
adoquery2.sql :select * from B where 身份证=:身份证

这时没有问题
然后
adoquery1.sql :select 姓名,年龄 from A
adoquery2.Parameters.Clear; // 增加
adoquery2.sql :select * from B where 姓名=:姓名

读书人网 >.NET

热点推荐