我用delphi编程了一个程序,我在文本框的onchange属性输入了一下代码:procedure TForm1.Edit2Change(Sender: TObject);
beginif ((trim(edit2.Text)<>'') and (length(edit2.Text)>1)) then
begin
adoquery2.First;
listbox2.Clear;
adoquery2.SQL.Clear;
adoquery2.sql.add('select cn from c_Dict where cn like'+''''+trim(edit2.Text)+'%'+'''');
adoquery2.Open;
while adoquery2.Eof =False do
begin
listbox2.Items.Add(adoquery2.FieldByName('cn').AsString);
adoquery2.Next;
end;
end;
end;我数据库中开头"阿"字母的词好多,别如说:‘阿尔法’,‘阿根’,
但是我输入“阿”的时候,在列表框中不显示所有开头"阿"的。
我用一样的方法搜索英文了,但是英文可以显示开头"a"的词了,代码如下:if ((trim(edit3.Text)<>'') and (length(edit3.Text)>1)) then
begin
adoquery6.SQL.Clear;
adoquery6.sql.add('select en from e_Dict where en like'+''''+trim(edit3.Text)+'%'+'''');
adoquery6.Open;
adoquery6.First;
listbox3.Clear;
listbox3.Visible:=true;
while adoquery6.Eof =False do
begin
listbox3.Items.Add(adoquery6.FieldByName('en').AsString);
adoquery6.Next;
end; end;
如何解决搜索中文时候的不显示开头“阿”的词的问题?
beginif ((trim(edit2.Text)<>'') and (length(edit2.Text)>1)) then
begin
adoquery2.First;
listbox2.Clear;
adoquery2.SQL.Clear;
adoquery2.sql.add('select cn from c_Dict where cn like'+''''+trim(edit2.Text)+'%'+'''');
adoquery2.Open;
while adoquery2.Eof =False do
begin
listbox2.Items.Add(adoquery2.FieldByName('cn').AsString);
adoquery2.Next;
end;
end;
end;我数据库中开头"阿"字母的词好多,别如说:‘阿尔法’,‘阿根’,
但是我输入“阿”的时候,在列表框中不显示所有开头"阿"的。
我用一样的方法搜索英文了,但是英文可以显示开头"a"的词了,代码如下:if ((trim(edit3.Text)<>'') and (length(edit3.Text)>1)) then
begin
adoquery6.SQL.Clear;
adoquery6.sql.add('select en from e_Dict where en like'+''''+trim(edit3.Text)+'%'+'''');
adoquery6.Open;
adoquery6.First;
listbox3.Clear;
listbox3.Visible:=true;
while adoquery6.Eof =False do
begin
listbox3.Items.Add(adoquery6.FieldByName('en').AsString);
adoquery6.Next;
end; end;
如何解决搜索中文时候的不显示开头“阿”的词的问题?
解决方案 »
- 如何用delphi7编写温度云图?
- dxBarManager控件从基类窗体继承的问题
- delphi WebBrowser1 怎么获取框架中的框架的网页代码
- 关于WH_CBT钩子中HCBT_DESTROYWND的问题
- 我的一点发现: DBGridEh自带的实现自动调整列宽功能
- 希望这个网站的代码对大家有所帮助!www.xtcode.com
- 诸位大侠,请问自带数据库的用户名和密码怎么处理?在线等 ,谢谢
- 为什么我的win2kpro在安装acrobat reader (类似安装程序都会)会出现内存错误?
- 如何把按钮变成圆形,或是别的好看的形状!
- 海康设置osd,哪里出问题了
- delphi 如何选中Excel所有单元格然后设置整个Excel的字体属性?
- 求购一套成熟的超市商业POS系统源码,或委托开发本系统
beginif (trim(edit2.Text)<>'' then
begin
listbox2.items.Clear;
adoquery2.SQL.Clear;
adoquery2.sql.add('select cn from c_Dict where cn like '''+trim(edit2.Text)+'%''');
adoquery2.Open;
while adoquery2.Eof =False do
begin
listbox2.Items.Add(adoquery2.FieldByName('cn').AsString);
adoquery2.Next;
end;
end;
end;
2、SQL写法看不清,喜欢以下的写法procedure TForm1.Edit2Change(Sender: TObject);
begin
if ((trim(edit2.Text)<>'') and (length(edit2.Text)>1)) then
begin
listbox2.Clear;
adoquery2.close; //修改
adoquery2.SQL.Clear;
adoquery2.sql.add('select cn from c_Dict where cn like "'+trim(edit2.Text)+'%"'); //修改
adoquery2.Open;
while not adoquery2.Eof do //修改
begin
listbox2.Items.Add(adoquery2.FieldByName('cn').AsString);
adoquery2.Next;
end;
end;
end;