【问题标题】:Applying query on textbox在文本框上应用查询
【发布时间】:2013-07-12 18:09:52
【问题描述】:

我有 2 个文本框。我面临的问题是,当我在 textbox1 中输入一个数字时,程序应该从数据库中获取数据并在 textbox2 中显示结果,但不使用任何按钮。我不知道要使用哪个事件。这是一个代码,但我想它没用:

private void textBox2_Click(object sender, EventArgs e)
{
    con.Open();
    cmd.Connection = con;
    cmd.CommandText = "SELECT item_name FROM prod_info WHERE barcode=" + textBox2.Text + "";
    cmd.ExecuteNonQuery();
    con.Close();
}

【问题讨论】:

    标签: c# .net winforms ado.net textbox


    【解决方案1】:

    您可以响应textBox1 上的TextChanged 事件以触发代码中的某些操作。 警告:一定要sanitize your inputs

    【讨论】:

    • 这是正确的,但是他在更改值时可能会发现一个小问题,例如如果文本框为空,则数据库可能会返回错误。我的意思是,对于每个更改的值,都会执行查询,这可能会出现问题。
    • 我没有得到最后一条语句“清理您的输入”
    • 在 textbox1 中输入数字后,我希望它自动在文本框 2 中显示结果。
    • @HaiderKhattak:直接在数据库查询的文本中使用文本框的内容是不好的做法,并且会将您暴露给SQL Injection attacks。所有输入必须在包含在查询中之前过滤
    • 您能否更正代码或给我发送一个示例,我可以从中得到一个想法?
    【解决方案2】:

    搜索是否有任何 OnExit 事件,因此在编辑第一个文本框后,第二个文本框将自动更新。

    【讨论】:

    • 没有 OnExit 事件
    猜你喜欢
    • 2012-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-03
    相关资源
    最近更新 更多