[VB6+Access]查询到一个表的某些记录后如何与另一个表相关记录进行联合显示到datagrid上?
我有一张表是借阅,另一个表是书库。
在借阅记录的显示框中用以下语句联合输出的
sql = "select 书库.图书名称,书库.作者,书库.出版社,书库.发行日期,借阅.借阅人,借阅.借阅人单位,借阅.借阅数量,借阅.借阅日期,借阅.备注,借阅.记录号 from 书库,借阅 where 书库.图书编号=借阅.图书编号"
Adodc2.RecordSource = sql
Adodc2.Refresh
Set DataGrid2.DataSource = Adodc2
DataGrid2.Refresh
查询语句这样写的
strSql = "select * from [借阅] where [" & Combo1.Text & "] like '%" & Text1.Text & "%'"
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = strSql
Adodc2.Refresh
sql = "select 书库.图书名称,书库.作者,书库.发行日期,借阅.借阅人,借阅.借阅人单位,借阅.借阅数量,借阅.借阅日期 from 书库,借阅 where 书库.图书编号=借阅.图书编号"
Adodc2.RecordSource = sql
Set DataGrid2.DataSource = Adodc2
DataGrid2.Refresh
但显示出来不能将书库的对应书籍信息显示出来,只显示借阅这个表的记录,怎么回事?谢谢!
[解决办法]
用一个SQL就行了
sql = "select 书库.图书名称,书库.作者,书库.发行日期,借阅.借阅人,借阅.借阅人单位,借阅.借阅数量,借阅.借阅日期 from 书库,借阅 where 书库.图书编号=借阅.图书编号 and 借阅.[" & Combo1.Text & "] like '*" & Text1.Text & "*'"
Access里面Like通配符要用*号 不能用%号