一般在Windows server 2003中连接sql server使用信任连接(即Integrated Security值设为true时)时会出这个错误,
因为在Windows XP当中,ASP.NET的运行帐号是ASPNET,而在Windows server 2003当中,运行帐号则改为了Network Service。
解决办法:
第一步:把'NT AUTHORITY\NETWORK SERVICE' 添加到Administrator组中
我的电脑-->右键-->管理-->本地用户和组
选择“组”-->双击Administrators-->单击“添加”-->单击“高级”-->单击“立即查找”-->在下面的列表中选择Network Service用户-->两次单击“确定”-->加入。
第二步 在企业管理器中加入NetWord Service用户
打开Sql Server企业管理器-->选择数据库实例-->打开“安全性”节点-->选择“登录”-->在右边的列表中单击右键-->选择“新建登录”-->在“常规”选项卡中单击“名称”旁边的按钮“...”-->选择“Administrators”组-->单击下面的“成员”按钮-->选择“Network Service”-->单击“添加”按钮-->单击“确定”,返回“新建登录”对话框-->保证身份验证类型为“windows验证”和“允许访问”-->单击“确定”-->关闭“企业管理器”
第三步
重新运行asp.net程序,数据库连接字符串选择windows验证即可。
在其他一些情况下,也有可能出这样的错误,一般在sql server中给予登陆出错的用户相应的权限就可以了。