读书人

delphi+sql 数据库 子查询的有关问题

发布时间: 2012-02-19 19:43:37 作者: rapoo

delphi+sql 数据库 子查询的问题 急急急
with data1.ADOjyxxcx do
begin
close;
sql.Clear;
sql.text:='select t.书名,t.ISBN,t.借书日期,t.应还日期 from'+
' (select sjxxb.书名,jyxxb.ISBN,jyxxb.姓名,jyxxb.借书日期,jyxxb.应还日期 '+
' from 书籍信息表 sjxxb right outer join 借阅信息表 jyxxb on sjxxb.ISBN=jyxxb.ISBN '+
' where 姓名=:a) t' ;
parameters.parambyname('a').value:=trim(edit1.text)
open;
end;

代码如上 可dbgrid 里就没有数据了
但如果换成 姓名=''name''
就会有 name 的数据 不知道怎么解决
麻烦各位大侠 谢谢~~

[解决办法]
with data1.ADOjyxxcx do
begin
close;
sql.Clear;
sql.text:='select t.书名,t.ISBN,t.借书日期,t.应还日期 from'+
' (select sjxxb.书名,jyxxb.ISBN,jyxxb.姓名,jyxxb.借书日期,jyxxb.应还日期 '+
' from 书籍信息表 sjxxb right outer join 借阅信息表 jyxxb on sjxxb.ISBN=jyxxb.ISBN '+
' where 姓名='+#39+trim(edit1.text)+#39+') t' ;
open;
end;
[解决办法]

Delphi(Pascal) code
with data1.ADOjyxxcx dobeginclose;sql.Clear;sql.text:='select t.书名,t.ISBN,t.借书日期,t.应还日期 from'+' (select sjxxb.书名,jyxxb.ISBN,jyxxb.姓名,jyxxb.借书日期,jyxxb.应还日期 '+' from 书籍信息表 sjxxb right outer join 借阅信息表 jyxxb on sjxxb.ISBN=jyxxb.ISBN '+' where 姓名=''+trim(edit1.text+'') t' ;open;end;
[解决办法]
#39表示ACSII码中第39个字符

读书人网 >.NET

热点推荐