发布时间:2024-11-02 20:31:19
本内容由, 集智官方收集发布,仅供参考学习,不代表集智官方赞同其观点或证实其内容的真实性,请勿用于商业用途。
在C#中连接SQLServer数据库,我们使用SqlConnection和SqlCommand类。首先,需要创建一个SqlConnection对象,用于建立与数据库的连接。然后,通过SqlCommand对象的ExecuteReader方法执行SQL查询操作,获取查询结果。接下来,使用SqlCommand对象的ExecuteNonQuery方法执行插入、更新和删除操作。最后,确保关闭所有打开的资源。
C
本文将详细介绍如何使用 C# 中的 SqlConnection
和 SqlCommand
类来连接 SQL Server 数据库,并展示如何执行 SQL 查询、插入、更新和删除操作。
。
System.Data.SqlClient
)
SqlConnection
对象来建立与 SQL Server 数据库的连接。以下是一个简单的示例代码:
using System;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// 定义连接字符串
string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;";
// 创建 SqlConnection 对象
using (SqlConnection connection = new SqlConnection(connectionString))
{
try
{
// 打开连接
connection.Open();
Console.WriteLine("连接成功!");
}
catch (Exception ex)
{
Console.WriteLine("连接失败:" + ex.Message);
}
}
}
}
SqlCommand
对象来执行 SQL 查询。假设我们有一个名为 Employees
的表,包含 Id
, Name
, 和 Position
列。
using System;
using System.Data.SqlClient;
class Program
{
static void Main()
{
string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;";
using (SqlConnection connection = new SqlConnection(connectionString))
{
try
{
connection.Open();
Console.WriteLine("连接成功!");
// 定义 SQL 查询语句
string query = "SELECT Id, Name, Position FROM Employees";
// 创建 SqlCommand 对象
using (SqlCommand command = new SqlCommand(query, connection))
{
// 执行查询并获取结果集
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
int id = reader.GetInt32(0);
string name = reader.GetString(1);
string position = reader.GetString(2);
Console.WriteLine($"ID: {id}, Name: {name}, Position: {position}");
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("操作失败:" + ex.Message);
}
}
}
}
SqlCommand
对象可以方便地执行插入操作。下面是一个插入新员工记录的示例:
using System; using System.Data.SqlClient; class Program { static void Main() { string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;"; using (SqlConnection connection = new SqlConnection(connectionString)) { try { connection.Open(); Console.WriteLine("连接成功!"); // 定义插入语句 string insertQuery = "INSERT INTO Employees (Name, Position) VALUES (@Name, @Position)"; // 创建 SqlCommand 对象 using (SqlCommand command = new SqlCommand(insertQuery, connection)) { // 添加参数并赋值 command.Parameters.AddWithValue("@Name", "John Doe"); command.Parameters.AddWithValue("@Position", "Developer"); // 执行插入操作 int rowsAffected = command.ExecuteNonQuery(); Console.WriteLine($"插入了 {rowsAffected} 行数据。
"); } } catch (Exception ex) { Console.WriteLine("操作失败:" + ex.Message); } } } }
下面是一个更新员工职位的示例:
using System; using System.Data.SqlClient; class Program { static void Main() { string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;"; using (SqlConnection connection = new SqlConnection(connectionString)) { try { connection.Open(); Console.WriteLine("连接成功!"); // 定义更新语句 string updateQuery = "UPDATE Employees SET Position = @Position WHERE Name = @Name"; // 创建 SqlCommand 对象 using (SqlCommand command = new SqlCommand(updateQuery, connection)) { // 添加参数并赋值 command.Parameters.AddWithValue("@Name", "John Doe"); command.Parameters.AddWithValue("@Position", "Senior Developer"); // 执行更新操作 int rowsAffected = command.ExecuteNonQuery(); Console.WriteLine($"更新了 {rowsAffected} 行数据。
"); } } catch (Exception ex) { Console.WriteLine("操作失败:" + ex.Message); } } } }
以下是一个删除特定员工的示例:
using System; using System.Data.SqlClient; class Program { static void Main() { string connectionString = "Server=your_server_name;Database=your_database_name;User Id=your_username;Password=your_password;"; using (SqlConnection connection = new SqlConnection(connectionString)) { try { connection.Open(); Console.WriteLine("连接成功!"); // 定义删除语句 string deleteQuery = "DELETE FROM Employees WHERE Name = @Name"; // 创建 SqlCommand 对象 using (SqlCommand command = new SqlCommand(deleteQuery, connection)) { // 添加参数并赋值 command.Parameters.AddWithValue("@Name", "John Doe"); // 执行删除操作 int rowsAffected = command.ExecuteNonQuery(); Console.WriteLine($"删除了 {rowsAffected} 行数据。
"); } } catch (Exception ex) { Console.WriteLine("操作失败:" + ex.Message); } } } }
SqlConnection
和 SqlCommand
类与 SQL Server 数据库进行交互是非常直观且高效的。无论是查询、插入、更新还是删除操作,都可以通过简单的代码实现。
希望这篇文章能够帮助你更好地理解和应用这些技术,在实际项目中灵活运用。
分享,翻译,和编写优质的技术博客专栏,提供优质的内容服务