在线等候高手指点:这条sql语句怎么写?

zmcpu 2002-05-09 09:04:26

我在delphi中执行了一条条件查询
表名为table
表中字段如下:
customerid
cuseomername
...
我想查出客户姓名中包含指定关键字的所有客户
语句为:
...
close;
sql.clear;
sql.Add('Select CustomerId,CustomerName where customername like % :name %');
ParamByName('name').Value:=edit1.text ;
prepare;
open;
...
但却发生错误 为什么?
...全文
11 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zmcpu 2002-05-09
对不起回答正确的人太多,分给在家平分了,不介意吧!
回复
jixinfa 2002-05-09
customername是字符型,所以 like %西安% 应写成like '%西安%'

close;
sql.clear;
sql.Add('Select CustomerId,CustomerName from table where customername like :name ');
ParamByName('name').Value:='%'+edit1.text +'%';
prepare;
open;
回复
日总是我哥 2002-05-09
建议:把你的表名(Table)重新命名!!
建议:把你的表名(Table)重新命名!!
建议:把你的表名(Table)重新命名!!

如:Customer!
回复
loutian 2002-05-09
能把错误提示帖出来吗
回复
goodydy 2002-05-09


select * from table where customername like %西安%

你忘了加引号呀

select * from table where customername like '%西安%'

回复
一点点凋落 2002-05-09
select * from table where customername like '%西安%'
回复
zmcpu 2002-05-09
还是出错!我在sql 中直接写
select * from table where customername like %西安%
也是出错。
回复
wolfAone 2002-05-09
close;
sql.clear;
sql.Add('Select CustomerId,CustomerName from TableName
where customername like '+'''% :name %''');-----<注意不用用中文的:
ParamByName('name').Value:=edit1.text ;
prepare;
open;
回复
newwen 2002-05-09
close;
sql.clear;
sql.Add('Select CustomerId,CustomerName where customername like :name ');
ParamByName('name').Value:='%'+edit1.text +'%';
prepare;
open;
回复
日总是我哥 2002-05-09
...
close;
sql.clear;
sql.Add('Select CustomerId,CustomerName where customername like ''% :name %''');<------------
ParamByName('name').Value:=edit1.text ;
prepare;
open;
...
回复
lizhenjia 2002-05-09
from 那个表啊
回复
lizhenjia 2002-05-09
from 那个表啊?
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4925

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2002-05-09 09:04
社区公告
暂无公告