【问题标题】:Datagridview column load with search query.使用搜索查询加载 Datagridview 列。
【发布时间】:2014-05-06 05:15:03
【问题描述】:

我正在使用 c# 中的 pos 系统,我有一个带有 SQL 2008 的数据库,而 c# 是我的编程语言。我的问题是,当我在文本框中输入商品代码时,它会找到 Idem 名称和单价以及可用数量的详细信息。为此,我正在使用 Keydown 事件进行搜索

 private void textBoxItemCode_KeyDown_1(object sender, System.Windows.Forms.KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {

                string SQLStatement = "Select * from Stock_Entry where Item_Code='" + textBoxItemCode.Text + "'";
                SqlDataReader myreader = DBConnection.viewDetails(SQLStatement);
                if (myreader.Read())
                {
                    textBoxItemName.Text = (string)myreader["Item_Name"];
                    Textbox_Category.Text = (string)myreader["Categary"];
                    textBoxItemPrice.Text = (string)myreader["Unit_Price"];
                    label_avlQty.Text = (string)myreader["No_of_Items"];

                }

    }
    }

但我的问题是我需要对 datagridview 中的单元格执行相同的功能。当我在单元格中输入项目代码时,我想找到我可以处理的事件的详细信息。

【问题讨论】:

    标签: c# sql windows datagridview


    【解决方案1】:

    This 可能会有所帮助。

    在不同的主题上,您对 SQL 注入攻击持开放态度(做一些研究)。

    考虑一下如果我在文本框中输入这个会发生什么:

    ';DELETE FROM Stock_Entry;SELECT * FROM Stock_Entry where Item_Code='

    此外,您将在每次按键时返回数据库,即项目代码 123456 需要 6 次(慢)数据库调用,如果您将 1% 读入本地数据,然后针对 12%、123% 等进行查询,则可能快很多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多