c#中button按钮每点击一次就读取上一次MySQL数据库表中内容
时间: 2023-08-05 11:04:55 浏览: 189
为了在 C# 中读取 MySQL 数据库表中的内容,你可以使用 MySQL Connector/NET,这是 MySQL 官方提供的 .NET 数据库连接器。
以下是一个示例代码,演示如何在每次点击 `Button` 按钮时读取 MySQL 数据库表中的上一次内容:
```csharp
using MySql.Data.MySqlClient;
...
private MySqlConnection conn;
private MySqlCommand cmd;
private MySqlDataReader rdr;
private int lastId = 0; // 上一次读取的 ID
...
private void button1_Click(object sender, EventArgs e)
{
try
{
if (conn == null)
{
string connStr = "server=localhost;user=root;database=mydatabase;port=3306;password=mypassword;";
conn = new MySqlConnection(connStr);
conn.Open();
cmd = new MySqlCommand("SELECT * FROM mytable WHERE id > @lastId", conn);
cmd.Parameters.AddWithValue("@lastId", lastId);
rdr = cmd.ExecuteReader();
}
if (rdr.Read())
{
// 读取数据
int id = rdr.GetInt32(0);
string name = rdr.GetString(1);
lastId = id;
// 显示数据
MessageBox.Show(id + " -- " + name);
}
else
{
// 数据已经读取完毕
rdr.Close();
rdr = null;
cmd = null;
conn.Close();
conn = null;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
```
在上面的代码中,我们首先创建了一个 `MySqlConnection` 对象和一个 `MySqlCommand` 对象,并打开连接。然后,我们在每次点击 `Button` 按钮时,都执行一个 SQL 查询,该查询返回 MySQL 数据库表中上一次读取后的所有记录。
接下来,我们使用 `MySqlDataReader` 对象来逐行读取数据,并更新 `lastId` 变量,以便下一次查询可以从上一次停止的地方开始。最后,我们使用 `MessageBox` 显示每行数据的 ID 和名称。
需要注意的是,为了避免在每次点击 `Button` 按钮时都重新打开和关闭连接,我们在代码中创建了全局的连接、命令和阅读器对象,并在第一次点击 `Button` 按钮时打开连接和执行查询操作。
阅读全文