引言
在软件开发领域,数据库交互是不可或缺的一环。C#作为一种流行的编程语言,在数据库操作方面提供了丰富的功能。本文将揭秘C#数据库交互高手的实战秘籍,帮助读者轻松掌握高效数据操作技巧。
一、数据库连接
1.1 连接字符串
连接字符串是建立数据库连接的关键。以下是一个典型的连接字符串示例:
string connectionString = "Data Source=服务器地址;Initial Catalog=数据库名;User ID=用户名;Password=密码;";
1.2 连接对象
使用SqlConnection类创建连接对象:
SqlConnection connection = new SqlConnection(connectionString);
1.3 打开连接
调用Open方法打开数据库连接:
connection.Open();
二、查询数据
2.1 执行查询
使用SqlCommand类执行查询:
SqlCommand command = new SqlCommand("SELECT * FROM 表名", connection);
SqlDataReader reader = command.ExecuteReader();
2.2 读取数据
使用SqlDataReader读取查询结果:
while (reader.Read())
{
// 读取数据
string columnName = reader["列名"].ToString();
// ...
}
2.3 关闭读取器
执行完毕后,关闭SqlDataReader:
reader.Close();
三、插入数据
3.1 执行插入
使用SqlCommand类执行插入操作:
SqlCommand command = new SqlCommand("INSERT INTO 表名 (列名1, 列名2) VALUES (@值1, @值2)", connection);
command.Parameters.AddWithValue("@值1", 值1);
command.Parameters.AddWithValue("@值2", 值2);
command.ExecuteNonQuery();
3.2 事务处理
在插入数据时,可以使用事务确保数据的一致性:
SqlTransaction transaction = connection.BeginTransaction();
try
{
// 执行插入操作
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback();
// 处理异常
}
四、更新数据
4.1 执行更新
使用SqlCommand类执行更新操作:
SqlCommand command = new SqlCommand("UPDATE 表名 SET 列名1 = @值1 WHERE 条件", connection);
command.Parameters.AddWithValue("@值1", 值1);
command.ExecuteNonQuery();
4.2 事务处理
与插入数据类似,更新数据时也可以使用事务:
// 省略连接和命令创建
try
{
// 执行更新操作
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback();
// 处理异常
}
五、删除数据
5.1 执行删除
使用SqlCommand类执行删除操作:
SqlCommand command = new SqlCommand("DELETE FROM 表名 WHERE 条件", connection);
command.ExecuteNonQuery();
5.2 事务处理
与插入和更新数据类似,删除数据时也可以使用事务:
// 省略连接和命令创建
try
{
// 执行删除操作
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback();
// 处理异常
}
六、总结
通过以上实战秘籍,相信读者已经掌握了C#数据库交互的高效数据操作技巧。在实际开发过程中,不断积累经验,优化代码,才能成为一名真正的数据库交互高手。
