【问题标题】:Getting data from MySQL connection and showing it on a TextBox从 MySQL 连接获取数据并将其显示在 TextBox 上
【发布时间】:2012-03-04 11:42:59
【问题描述】:

我已经创建了一个 MySQL 表。我可以插入数据,但现在我想在用 c# 语言将保存的数据输入到我的 Windows 应用程序中的另一个选项卡的 TextBox 后获取保存的数据。

我已经编写了“刷新”按钮来获取数据,但我不知道它是否正确。基本上我想点击它,从表格中获取数据,然后将其发布到文本框。

这是我到目前为止获取数据部分的内容:

    private void button3_Click(object sender, EventArgs e)
    {
        string clanname, date, type, rules, final;
        string connString = "Server=localhost;Database=request;Uid=root;Pwd=;";
        using (MySqlConnection mcon = new MySqlConnection(connString))
        using (MySqlCommand cmd = mcon.CreateCommand())
        {
            mcon.Open();
            cmd.CommandText = "SELECT * FROM requesttcw";
            using (MySqlDataReader reader = cmd.ExecuteReader())
            {
                while (reader.Read())
                {
                    clanname = textBox1.Text.Trim();
                    date = textBox2.Text.Trim();
                    type = textBox2.Text.Trim();
                    rules = textBox2.Text.Trim();
                }
            }
        }
    }

请帮忙! 谢谢

【问题讨论】:

    标签: c# mysql database phpmyadmin


    【解决方案1】:

    您问题中的Select 查询正在从您的requesttcw 表中获取数据。您需要从reader 实例中读取该数据并将其添加到相应的文本框中。例如,您可以执行以下操作来获取数据:

    //textBox1 will hold the value of the first row and first column of your database.
    textBox1.Text =  reader.GetString(0);
    

    更新上述GetString 命令中的索引将更改您从中获取数据的列。因此,您必须适当地更新该索引以从表中获取正确的数据并插入到正确的文本框的 .Text 属性中。

    我不知道您在表中处理的是什么类型的数据。如果类型不是string,您将需要为该类型使用适当的Get 函数,无论是intdouble 等。查看MySqlDataReader reference page 了解更多类型。

    根据您的表格布局更改的频率,您可能还想使用.GetOrdinal 来使用您的阅读器获取数据。此命令允许您指定列名而不是其索引。上面的调用可以改成:

    //assuming "clanname" is a column in your database
    textBox1.Text =  reader.GetString(reader.GetOrdinal("clanname");
    

    最后,在您的示例中,您使用了

    while (reader.Read()) { ... }
    

    这将遍历查询结果集中的每一行。我不知道您有多少个文本框,或者您是否正在寻找特定格式,但请注意,如果您想在文本框中显示多行中的字段数据,则必须附加到 @每个循环迭代的 987654335@ 属性。

    【讨论】:

      猜你喜欢
      • 2015-01-31
      • 1970-01-01
      • 2017-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-06
      • 1970-01-01
      相关资源
      最近更新 更多