C#怎么连接SQL Server数据库 C#连接SQL Server数据库方法

来源:这里教程网 时间:2026-02-21 17:33:20 作者:

用C#连接SQL Server数据库,核心是使用 SqlConnection 类配合正确的连接字符串。只要字符串写对、引用了

System.Data.SqlClient
(.NET Framework)或
Microsoft.Data.SqlClient
(.NET Core/.NET 5+),就能稳定建立连接。

准备基础依赖

根据你的项目类型选择对应包:

.NET Framework 项目:默认已含
System.Data.SqlClient
,无需额外安装
.NET Core / .NET 5+ / .NET 6+ 项目:需通过 NuGet 安装 Microsoft.Data.SqlClient(官方推荐,支持最新功能和安全更新)

安装命令(包管理器控制台):
Install-Package Microsoft.Data.SqlClient

写对连接字符串

连接字符串包含服务器地址、数据库名、认证方式等关键信息。常见格式如下:

Windows 身份验证(本地开发常用):
"Server=localhost\SQLEXPRESS;Database=MyDB;Trusted_Connection=true;"
SQL Server 账户密码登录(生产环境常用):
"Server=192.168.1.100;Database=MyDB;User Id=myuser;Password=mypass;"
注意端口(非默认1433时要显式指定):
"Server=192.168.1.100,1434;Database=MyDB;..."

建议把连接字符串放在

appsettings.json
(.NET Core+)或
App.config
(.NET Framework)中统一管理,避免硬编码。

用 using 正确打开和关闭连接

SqlConnection 实现了

IDisposable
,必须用 using 确保及时释放资源,防止连接泄漏:

string connStr = "Server=...;Database=...;...";
using (var conn = new SqlConnection(connStr))
{
    try
    {
        conn.Open();
        Console.WriteLine("连接成功!");
        // 执行查询、增删改等操作
    }
    catch (SqlException ex)
    {
        Console.WriteLine($"数据库错误:{ex.Message}");
    }
} // 这里自动调用 conn.Close() 和 Dispose()

执行简单查询示例

连接后通常配合 SqlCommandSqlDataReaderExecuteScalar/ExecuteNonQuery 使用:

查单个值(如统计数量):
cmd.ExecuteScalar()
执行增删改:
cmd.ExecuteNonQuery()
读取多行结果:
cmd.ExecuteReader()
配合 while 循环

示例(查用户名):

using (var conn = new SqlConnection(connStr))
{
    conn.Open();
    using (var cmd = new SqlCommand("SELECT TOP 1 Name FROM Users", conn))
    {
        var name = cmd.ExecuteScalar();
        Console.WriteLine(name?.ToString() ?? "无数据");
    }
}

基本上就这些。不复杂但容易忽略细节——比如忘了加

using
、连错实例名、防火墙阻断端口、SQL Server 服务没启动,都会导致连接失败。先确保 SQL Server 正在运行、远程连接已启用、账户有权限,再检查代码逻辑。

相关推荐