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

主、从表有关问题

2012-02-24 
主、从表问题adoquery1为主表,adoquery2为从表adoquery1.sql :select 姓名,身份证 from Aadoquery2.sql :se

主、从表问题
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 姓名=:姓名 

热点排行