安装VS2008时可以选择安装一个SQL2005EXPRESS,用C#连接时,使用集成安全登录没有问题,结果换SA登录时,无法连上,提示错误:SQL Server 2005 Express 用户sa登录失败。该用户与可信SQL Server 连接无关联 错误:18452,在网上搜到了一些解决办法,最终是按以下步骤解决:
用WINDOWS集成帐号登录,然后执行以下步骤:
1.在安全性--登陆名里面找到SA用户--右键--属性. (可以重新设置SA的密码)
2.在服务器决策里,要把最后一个sysadmin选上.
3.用户映射里面,上面的全选,下面的要勾上最后一个,和倒数第三个db_owner
4.在状态里面.选择授予和启动.
5.右键-你的服务器-属性-安全性 ,把里面的身份验证模式改为sql和WINDOWS混合验证.
6.重启服务器。很重要的一步。
注意:安装的SQL2005没有集成管理器,所以需要在网上下载一个SQL Server Management Studio Express,然后才能使用他登录,修改里面的设置。
附C#的两种连接字符串:
string constr = "Data Source=ABC//SQLEXPRESS;Initial Catalog=pubs;Integrated Security=True";
string constr = "Data Source=ABC//SQLEXPRESS;Initial Catalog=pubs;uid =sa;pwd=sa";
注意:使用EXPRESS版本时,连接字符串中需要写上 计算机名//SQLEXPRESS,这样才能连接上,否则不行。