C#怎么在窗体程序中操作数据库数据

发布时间:2022-04-20 09:13:50 作者:iii
来源:亿速云 阅读:148

C#怎么在窗体程序中操作数据库数据

在C#窗体应用程序中,操作数据库数据是一个常见的需求。通过使用ADO.NET,我们可以轻松地连接数据库、执行SQL查询、插入、更新和删除数据。本文将介绍如何在C#窗体程序中操作数据库数据。

1. 准备工作

在开始之前,确保你已经安装了SQL Server或其他数据库管理系统,并且已经创建了一个数据库和相应的表。假设我们有一个名为Students的表,包含IDNameAge字段。

2. 添加必要的引用

在C#项目中,我们需要添加对System.Data.SqlClient命名空间的引用,以便使用SQL Server的ADO.NET提供程序。

using System.Data.SqlClient;

3. 连接数据库

首先,我们需要创建一个数据库连接字符串,并使用SqlConnection类来连接数据库。

string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;";
SqlConnection connection = new SqlConnection(connectionString);

try
{
    connection.Open();
    MessageBox.Show("连接成功!");
}
catch (Exception ex)
{
    MessageBox.Show("连接失败: " + ex.Message);
}
finally
{
    connection.Close();
}

4. 查询数据

使用SqlCommandSqlDataReader来执行SQL查询并读取数据。

string query = "SELECT * FROM Students";
SqlCommand command = new SqlCommand(query, connection);

try
{
    connection.Open();
    SqlDataReader reader = command.ExecuteReader();

    while (reader.Read())
    {
        int id = reader.GetInt32(0);
        string name = reader.GetString(1);
        int age = reader.GetInt32(2);

        MessageBox.Show($"ID: {id}, Name: {name}, Age: {age}");
    }

    reader.Close();
}
catch (Exception ex)
{
    MessageBox.Show("查询失败: " + ex.Message);
}
finally
{
    connection.Close();
}

5. 插入数据

使用SqlCommand执行INSERT语句来插入数据。

string insertQuery = "INSERT INTO Students (Name, Age) VALUES (@Name, @Age)";
SqlCommand insertCommand = new SqlCommand(insertQuery, connection);

insertCommand.Parameters.AddWithValue("@Name", "John Doe");
insertCommand.Parameters.AddWithValue("@Age", 20);

try
{
    connection.Open();
    int rowsAffected = insertCommand.ExecuteNonQuery();
    MessageBox.Show($"插入了 {rowsAffected} 行数据。");
}
catch (Exception ex)
{
    MessageBox.Show("插入失败: " + ex.Message);
}
finally
{
    connection.Close();
}

6. 更新数据

使用SqlCommand执行UPDATE语句来更新数据。

string updateQuery = "UPDATE Students SET Age = @Age WHERE Name = @Name";
SqlCommand updateCommand = new SqlCommand(updateQuery, connection);

updateCommand.Parameters.AddWithValue("@Age", 21);
updateCommand.Parameters.AddWithValue("@Name", "John Doe");

try
{
    connection.Open();
    int rowsAffected = updateCommand.ExecuteNonQuery();
    MessageBox.Show($"更新了 {rowsAffected} 行数据。");
}
catch (Exception ex)
{
    MessageBox.Show("更新失败: " + ex.Message);
}
finally
{
    connection.Close();
}

7. 删除数据

使用SqlCommand执行DELETE语句来删除数据。

string deleteQuery = "DELETE FROM Students WHERE Name = @Name";
SqlCommand deleteCommand = new SqlCommand(deleteQuery, connection);

deleteCommand.Parameters.AddWithValue("@Name", "John Doe");

try
{
    connection.Open();
    int rowsAffected = deleteCommand.ExecuteNonQuery();
    MessageBox.Show($"删除了 {rowsAffected} 行数据。");
}
catch (Exception ex)
{
    MessageBox.Show("删除失败: " + ex.Message);
}
finally
{
    connection.Close();
}

8. 使用DataGridView显示数据

在窗体应用程序中,通常使用DataGridView控件来显示数据库中的数据。

string query = "SELECT * FROM Students";
SqlDataAdapter dataAdapter = new SqlDataAdapter(query, connection);
DataTable dataTable = new DataTable();

try
{
    connection.Open();
    dataAdapter.Fill(dataTable);
    dataGridView1.DataSource = dataTable;
}
catch (Exception ex)
{
    MessageBox.Show("加载数据失败: " + ex.Message);
}
finally
{
    connection.Close();
}

9. 总结

通过以上步骤,我们可以在C#窗体程序中轻松地连接数据库、执行SQL查询、插入、更新和删除数据。ADO.NET提供了强大的功能来处理数据库操作,结合DataGridView控件,可以方便地显示和操作数据库中的数据。

在实际开发中,建议使用using语句来管理数据库连接和命令对象,以确保资源被正确释放。此外,还可以使用ORM框架如Entity Framework来简化数据库操作。

希望本文对你有所帮助,祝你在C#窗体程序开发中取得成功!

推荐阅读:
  1. C# 中操作Access数据库显示数据
  2. C#数据库操作

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:Elasticsearch索引的分片分配Recovery怎么使用

下一篇:C#怎么使用ThreadPriority设置线程优先级

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》