发布时间:2024-11-02 20:31:19
本内容由, 集智官方收集发布,仅供参考学习,不代表集智官方赞同其观点或证实其内容的真实性,请勿用于商业用途。
在C#中连接SQLServer数据库,我们使用SqlConnection和SqlCommand类。首先,需要创建一个SqlConnection对象,用于建立与数据库的连接。然后,通过SqlCommand对象的ExecuteReader方法执行SQL查询操作,获取查询结果。接下来,使用SqlCommand对象的ExecuteNonQuery方法执行插入、更新和删除操作。最后,确保关闭所有打开的资源。
C
本文将详细介绍如何使用 C# 中的 SqlConnection
和 SqlCommand
类来连接 SQL Server 数据库,并展示如何执行 SQL 查询、插入、更新和删除操作。
。
在开始之前,请确保你已经安装了以下软件: 1. Visual Studio(或其他支持 C
2. SQL Server 数据库
3. 必要的 NuGet 包(如 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);
}
}
}
}
更新操作与插入类似,只是 SQL 语句不同。
下面是一个更新员工职位的示例:
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);
}
}
}
}
通过以上示例,我们可以看到使用 C# 中的 SqlConnection
和 SqlCommand
类与 SQL Server 数据库进行交互是非常直观且高效的。
无论是查询、插入、更新还是删除操作,都可以通过简单的代码实现。
希望这篇文章能够帮助你更好地理解和应用这些技术,在实际项目中灵活运用。
分享,翻译,和编写优质的技术博客专栏,提供优质的内容服务