delphi sql 模糊查询

来源:百度知道 编辑:UC知道 时间:2024/05/30 18:38:29
select * from table where username like '%x%'
这句sql在delphi中应该怎么写?
'select * from table where username like ''%'+x+'%''';
我是这么写的,貌似不对,X是控件传过来的一个变量
ADOQuery1.SQL.Text:='select title as 标题,truename as 姓名,content as 简报内容,kyear as 年,kmonth as 月,text as 备注 from plans where kyear = '''+x+''' and kmonth like ''%'+y+'%''';
这是我的语句,一执行就报错,报X那里有语法错误,而且无法实现模糊查询
是字符串类型的,郁闷了..

kyear 如果不是字符串类型,kyear = '''+x+''' and 需要改为:kyear = '+x+' and

ADOQuery1.SQL.add();一般用这个语句加载查询字符串。注意变量类型,你sql语法看不出问题

单步调试下,运行时把这个字符串取出来,放到查询分析器里看看哪错了?

'select * from table where username like %'+x+'%';

'select * from table where username like ''%'+x+'%''';

这样写!

sql := 'select * from table where username like'''+'%'+Edit1.Text+'%'+'''';
ADOQuery1.SQL.add(sql);
在Delphi中单引号里的双引号就是单引号.