SQL Express 2005正在本地运行。我有一个由另一个人编写的项目也在同一台机器上运行。我想要做的就是连接它,不可能那么难吧?
这是我在旧的经典ASP代码中使用的方法,用于访问在同一实例上运行的另一个数据库:
Provider=SQLOLEDB;Data Source=MYLAPTOP\MSSMLBIZ;Persist Security Info=True;User ID=TestUser;Password=letmein;Initial Catalog=TestDB
但是尝试使用该版本会使.NET代码抛出异常,因为他使用了SQLServer驱动程序,所以不喜欢提供程序的东西。
这是他的代码中的原始连接字符串:
Server=(local);Initial Catalog=TheDatabase;User Id=TheUser;Password=ThePassword;
我已经访问了http://www.connectionstrings.com/sql-server-2005并尝试了其中几个选项,但所有这些都会得到“SQL Server不存在或拒绝访问”的错误消息(多么可爱的混合错误消息!):
- 数据源=localhost;集成安全性=True;初始目录=TheDatabase
- 数据源=localhost\SQLEXPRESS;集成安全性=True;初始目录=TheDatabase
- 数据源=MyLaptop\SQLEXPRESS;集成安全性=True;初始目录=TheDatabase
- 服务器=MyLaptop\SQLEXPRESS;初始目录=TheDatabase;用户Id=TheUser;密码=ThePassword;
我已经为SQL Express创建了MyLaptop/IUSR_MyLaptop、MyLaptop/ASPNET、MyLaptop/IWAM_MyLaptop的登录,并给予它们对我的数据库的读写权限,并将它们的默认数据库设置为TheDatabase。
我到底做错了什么,我该如何进一步调试问题?
更新:特别感谢Chris提供的所有指导,最终解决了问题,如果您遇到类似的问题,请阅读所有评论,有很多关于如何跟踪问题的链接和提示。