引言在软件开发过程中,数据库是存储和检索数据的基石。C作为微软开发的主要编程语言之一,提供了强大的数据库连接和操作功能。本文将详细解析C中数据库连接与操作的方法,并通过实战案例展示其应用技巧。一、C数...
在软件开发过程中,数据库是存储和检索数据的基石。C#作为微软开发的主要编程语言之一,提供了强大的数据库连接和操作功能。本文将详细解析C#中数据库连接与操作的方法,并通过实战案例展示其应用技巧。
C#中常用的数据库连接类型包括:
连接字符串包含了连接数据库所需的所有信息,如数据源、用户名、密码等。
string connectionString = "Data Source=服务器地址;Initial Catalog=数据库名;Integrated Security=True";
SqlConnection connection = new SqlConnection(connectionString);connection.Open();SqlCommand command = new SqlCommand("SELECT * FROM 表名", connection);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{ // 处理数据
}
reader.Close();SqlCommand command = new SqlCommand("INSERT INTO 表名 (列1, 列2) VALUES (@值1, @值2)", connection);
command.Parameters.AddWithValue("@值1", "值1");
command.Parameters.AddWithValue("@值2", "值2");
command.ExecuteNonQuery();connection.Close();public class MyDbContext : DbContext
{ public DbSet<实体类名> 实体类集合 { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { // 配置数据库模型 }
}var context = new MyDbContext();var results = from entity in context.实体类集合 where entity.属性 == 值 select entity;var newEntity = new 实体类名 { 属性 = 值 };
context.实体类集合.Add(newEntity);
context.SaveChanges();var entity = context.实体类集合.FirstOrDefault(e => e.属性 == 值);
entity.属性 = 新值;
context.SaveChanges();var entity = context.实体类集合.FirstOrDefault(e => e.属性 == 值);
context.实体类集合.Remove(entity);
context.SaveChanges();本案例将使用ADO.NET实现用户信息的增删改查操作。
string connectionString = "Data Source=服务器地址;Initial Catalog=数据库名;Integrated Security=True";
SqlConnection connection = new SqlConnection(connectionString);// 查询
SqlCommand command = new SqlCommand("SELECT * FROM 用户信息 WHERE 用户名=@用户名", connection);
command.Parameters.AddWithValue("@用户名", "用户名");
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{ // 处理数据
}
reader.Close();
// 添加
SqlCommand command = new SqlCommand("INSERT INTO 用户信息 (用户名, 密码) VALUES (@用户名, @密码)", connection);
command.Parameters.AddWithValue("@用户名", "用户名");
command.Parameters.AddWithValue("@密码", "密码");
command.ExecuteNonQuery();
// 更新
SqlCommand command = new SqlCommand("UPDATE 用户信息 SET 密码=@密码 WHERE 用户名=@用户名", connection);
command.Parameters.AddWithValue("@密码", "新密码");
command.Parameters.AddWithValue("@用户名", "用户名");
command.ExecuteNonQuery();
// 删除
SqlCommand command = new SqlCommand("DELETE FROM 用户信息 WHERE 用户名=@用户名", connection);
command.Parameters.AddWithValue("@用户名", "用户名");
command.ExecuteNonQuery();本案例将使用Entity Framework实现订单信息的增删改查操作。
var context = new OrderManagementContext();// 查询
var orders = context.Orders.Where(o => o.CustomerName == "客户名").ToList();
// 添加
var newOrder = new Order { CustomerName = "客户名", OrderDate = DateTime.Now };
context.Orders.Add(newOrder);
context.SaveChanges();
// 更新
var order = context.Orders.FirstOrDefault(o => o.OrderId == 1);
if (order != null)
{ order.OrderDate = DateTime.Now; context.SaveChanges();
}
// 删除
context.Orders.Remove(order);
context.SaveChanges();本文详细解析了C#中数据库连接与操作的方法,并通过实战案例展示了其应用技巧。通过学习本文,您将能够熟练使用C#进行数据库操作,为您的软件开发工作提供有力支持。