请大佬们帮忙看看,我应该怎么改?

liuyong848 2018-10-22 08:10:43
我想做的是输入客户的代码,然后在表格里显示搜索出来的客户。

但是现在输入第一次输入字母的时候会卡两秒左右,别的都没有问题。是不是要打开软件的时候就先连接数据库?不懂,请大佬们帮忙看看,谢谢。下面是代码:

private void textBox3_TextChanged(object sender, EventArgs e)//想在textBox3的时候显示查询。
{

string SQL = "select dm,mc from khzl where dm like'"+"%" + txtKHname.Text +"%"+ "'";
LinkData db = new LinkData();
this.dataGridView1.DataSource = db.getPsize(SQL).Tables["psize"];
db.closeConn();

}

public DataSet getPsize(string sql)
{

MySqlDataAdapter myadp = new MySqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
myadp.Fill(ds, "psize");
conn.Close();
return ds;
}
...全文
202 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyong848 2018-10-22
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
可以将数据库连接做成全局的,以减少查询时连接数据库的开销
另外,"%" + txtKHname.Text +"%" 表示的只要出现就可以
但是 输入客户的代码,宜从首字符开始检查
"" + txtKHname.Text +"%"
这要还可利用索引,以加快检索速度


可以了,在打开软件的时候也打开数据库就可以了。如果前面不加“%”,很多数据查不出来。加上也没有影响,谢谢你。
xuzuning 2018-10-22
  • 打赏
  • 举报
回复
可以将数据库连接做成全局的,以减少查询时连接数据库的开销
另外,"%" + txtKHname.Text +"%" 表示的只要出现就可以
但是 输入客户的代码,宜从首字符开始检查
"" + txtKHname.Text +"%"
这要还可利用索引,以加快检索速度
liuyong848 2018-10-22
  • 打赏
  • 举报
回复
引用 3 楼 eaqpi 的回复:
建议用Dataview的筛选!


好主意。
eaqpi 2018-10-22
  • 打赏
  • 举报
回复
建议用Dataview的筛选!

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧