我们在学习ASP.NET时,一般用VS2005和SQL Server Express 2005作为实习环境,当用SqlConnection进行两者间边接时,SQL Server Express 2005对连接字符串有着特殊的要求,与MSDN中给出的与SQL Server 2005的连接串存在一些细节上的区别(SQL Server 2005的连接方法要到办公室的机器上才能试,家中只装了Express),主要是Data Source部分的写法。
关于如何设定SQL Server Express 2005的登录方式和验证方式,网上有很多的论述,图文并茂,在此不再缀述。
当我们安装SQL Server Express 2005时,如果选的是“默认实例”名,也许在使用MSDN给出的字符串时不会遇到什么问题,当我们在安装时选择了“SQLEXPRESS”作为实例名,则在使用连接字符串时必需注意Data Source一项,否则会遇到无法登录的错误。
通过实验发现其格式可以有发下几种:
"data source=机器名//SQLEXPRESS;initial catalog=Northwind;uid=sa;pwd=XXXXX"
"data source=机器名//SQLEXPRESS;Database=Northwind;uid=sa;pwd=XXXXX"
"data source=localhost//SQLEXPRESS;Database=Northwind;uid=sa;pwd=XXXXX"
"data source=.//SQLEXPRESS;Database=Northwind;uid=sa;pwd=XXXXX"
SQL Server Express 2005默认安装时只允许本地访问,而不能远程访问,开放了远程访问后,可以用IP地址作为data source的值(具体方法见:《Microsoft SQL Server 2005 Express 远程访问设置详述》和《SQL Server 2005 Express 远程访问设置方法》)
"data source=127.0.0.1;Database=Northwind;uid=sa;pwd=XXXXXX"
"data source=127.0.0.1//SQLEXPRESS,1433;Database=Northwind;uid=sa;pwd=XXXXXXX" (1433为侦听的端口号)