c# - 从 MySQL 连接获取数据并将其显示在 TextBox 上

标签 c# mysql database phpmyadmin

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

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

这是我目前在获取数据部分得到的结果:

    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();
                }
            }
        }
    }

求助! 谢谢

最佳答案

您问题中的 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()) { ... }

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

关于c# - 从 MySQL 连接获取数据并将其显示在 TextBox 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9254308/

相关文章:

mysql - 如何指定在 MySql 中的 select * 查询输出中仅显示某些特定字段?

c# - 使用 XmlReader 如何在开始时重新启动?

c# - 如何在 Xamarin 上启动项目?

php - 设置 PDO 连接超时时间小于 1 秒

database - 当没有找到行时,为什么 CouchDB View 的 Total_rows 与 offset 不同?

Mysql - SELECT 查询中的不同列名

c# - 在哪里放置代码以在 View 中创建大量按钮?

c# - 如何更改 DateTimeFormatInfo.CurrentInfo AbbreviatedDayNames 集合

python - pymysql.err.操作错误 : 2013 with pymysql and SQLAlchemy

php - 斑马条纹 PHP MYSQL 表