怎么用connectionStrings来搞定SQL Server数据库连接这事儿
- 问答
- 2025-12-27 00:01:52
- 1
要搞清楚怎么用 connectionStrings 来连接 SQL Server,你首先得明白它是个啥,简单说,connectionStrings 就是你写在一个特定地方的一段“地址条”,就像你要去朋友家做客,你得知道他的具体地址、门牌号,还得有钥匙或者知道密码才能进门,connectionStrings 干的就是这个事儿:它告诉你的程序,数据库这个“朋友家”在哪儿,以及用什么“钥匙”开门。
这个“地址条”不能随便写在程序的任何地方,不然太乱了,也不好管理,我们会把它写在一个叫“配置文件”的特殊文件里,对于 .NET 的程序(比如用 C# 写的网站或者桌面软件),这个文件通常叫 Web.config(网站用)或者 App.config(桌面软件用),你把 connectionStrings 写在这里面,程序运行的时候就会自动来这个文件里读取信息,然后就知道该怎么去连接数据库了。
这个“地址条”具体长什么样呢?它有一个固定的格式,根据微软官方的 MSDN 文档和 .NET 开发中的通用实践,一个最基础的样子是这样的:
<connectionStrings>
<add name="MyConnectionString"
connectionString="Data Source=服务器名或IP;Initial Catalog=数据库名;User ID=用户名;Password=密码;"
providerName="System.Data.SqlClient" />
</connectionStrings>
别被这些尖括号吓到,我们把它拆开,一个一个词儿看明白:
<connectionStrings>和</connectionStrings>:这一对标签就像一个大括号,告诉程序:“喂,从这里开始,到那里结束,里面包着的都是数据库的连接信息。” 你可以在里面写多个连接字符串,分别给不同的数据库用。<add ... />:这是在“大括号”里面添加一条具体信息的指令。add添加”的意思。name="MyConnectionString":这是你给这个连接字符串起的一个名字,相当于给这个“地址条”贴个标签,这个名字很重要,因为你在程序代码里,就是通过这个名字来找到并使用这条连接信息的,你可以随便起,OrderDB”、“UserDB”,只要你自己能分清就行。connectionString="...":这是“地址条”的核心内容,所有的关键信息都写在这里面,我们待会要重点讲它。providerName="System.Data.SqlClient":这一句是告诉程序,你要用哪个“司机”去连接数据库,对于 SQL Server 数据库,你就固定写System.Data.SqlClient就行,这是微软官方提供的专门连接 SQL Server 的“司机”。
我们集中火力看最关键的 connectionString 里面怎么写,它是由一系列“键=值”的组合构成的,中间用分号隔开,常用的“键”有这么几个,你必须弄懂:
-
Data Source(数据源): 这个就是数据库服务器的地址,它可以是以下几种情况:
- 如果数据库装在你自己的电脑上,你可以写
localhost、(local)、 或者0.0.1。 - 如果数据库在另一台电脑(服务器)上,你就得写那台电脑的IP地址(
168.1.100)或者那台电脑在网络上的名字(DBSERVER01)。 - 如果用的是 SQL Server 的特殊实例,还要加上实例名,
我的电脑名\SQLEXPRESS。
- 如果数据库装在你自己的电脑上,你可以写
-
Initial Catalog(初始目录): 这个听起来有点绕,其实非常简单,就是你要连接的那个具体的数据库的名字,一个 SQL Server 服务器上可以创建很多个数据库,你得指定你到底要进哪个“房间”。

-
User ID(用户ID) 和 Password(密码): 这就是你的“钥匙”,即登录数据库用的用户名和密码,这是一种登录方式,叫做“SQL Server 身份验证”。
-
Integrated Security(集成安全): 这是另一种“钥匙”,更安全也更方便,如果你写
Integrated Security=True或者Integrated Security=SSPI,就意味着:“不要用单独的用户名密码了,直接用当前登录Windows系统的这个用户的身份去连接数据库。” 这通常用在公司内部系统,你的电脑和数据库服务器在同一个局域网内,并且权限都设置好的情况下。注意:如果你用了Integrated Security,就不能再写User ID和Password了,它们俩是互斥的。
根据你的情况,你的 connectionString 可能长这样:
例子1:用用户名密码连接本地的一个叫“MyDatabase”的数据库
Data Source=localhost;Initial Catalog=MyDatabase;User ID=sa;Password=你的密码;

例子2:用Windows身份验证连接服务器上的数据库
Data Source=192.168.1.100;Initial Catalog=ReportDB;Integrated Security=True;
把上面这些部分组合起来,放到配置文件里,一个完整的配置片段就出来了,假设我们采用例子1的方案,Web.config 文件里相关部分就是这样:
<configuration>
... (这里可能有很多其他配置)
<connectionStrings>
<add name="MyDB"
connectionString="Data Source=localhost;Initial Catalog=MyDatabase;User ID=sa;Password=123456;"
providerName="System.Data.SqlClient" />
</connectionStrings>
... (这里可能还有很多其他配置)
</configuration>
好了,“地址条”写好了,那在程序代码里怎么用它呢?也非常简单,在 C# 代码中,你大概会这样写(根据微软提供的 ADO.NET 编程模型):
// 1. 从配置文件里,根据名字("MyDB")取出连接字符串
string connectionString = ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString;
// 2. 创建一个连接对象,把刚才取到的字符串给它
using (SqlConnection conn = new SqlConnection(connectionString))
{
// 3. 打开连接,现在程序就和数据库正式“连上线”了
conn.Open();
// 4. 这里你就可以执行SQL命令了,比如查询数据、增删改等等...
// (这部分是另一个话题,不在这里详细展开)
} // 5. 用 using 关键字,程序会自动关闭连接,释放资源,非常省心。
你看,核心就是第一句 ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString,你的程序只要知道你在配置文件里给连接字符串起的那个名字(比如这里的 "MyDB"),它就能把整段连接信息抓出来用。
说说把连接字符串写在配置文件里的巨大好处,最大的好处就是灵活和安全,如果你的数据库服务器地址变了,或者密码改了,你不需要重新打开复杂的程序源代码,去一行一行地找、一行一行地改,你只需要用记事本打开这个 Web.config 或者 App.config 文件,修改一下 connectionString 里的内容,保存就行了,程序下次运行的时候,自动就会读取新的设置,这就像你搬家了,只需要更新一下通讯录里的地址,而不需要通知到每一个可能来找你的朋友。
用 connectionStrings 搞定 SQL Server 数据库连接这事儿,三步走:第一,搞清楚你的数据库地址、名字和登录方式;第二,按照格式把这些信息写到配置文件里;第三,在代码里用 ConfigurationManager 把它读出来用,就这么简单。
本文由盈壮于2025-12-27发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:https://haoid.cn/wenda/69085.html
