20130620-异常详细信息: System.Data.SqlClient.SqlException: 用户 'PC-LIXIANG\ASPNET' 登录失败。

 

 

这个问题是由于验证模式引起的,SQL SERVER 2000中,选择混合模式为好。数据库的连接符串要指明验证模式。这个问题baidu一下一大堆。

 

//****************************************************

今天发布网站的时候遇到这个问题,多方查询后终于找到答案!

System.Data.SqlClient.SqlException: 用户'pc-2009\ASPNET' 登录失败的解决办法: (此处的PC-2009是我的机器名)

由于他的数据库连接语句中没有采用用户名和密码验证,采用的是windows集成验证,所以无法连接数据库。

解决方法很简单,加上ASPNET这个账号,赋予权限即可,具体方法如下:

1、企业管理器--》安全性--》登陆--》(右键)新建登陆--》名称(在列表中添加ASPNET这个用户);

2、然后在服务器角色一栏中选择System Administrators;

3、在数据库访问一栏中选择所要访问的数据库,然后在下面对话框中将db_owner选上,确定即可!
 
/ //*******************************************
 问:
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Page Language="C#" Debug="true" %>
<html>
<script language="C#" runat="server">
void Page_Load(Object sender, EventArgs e)
{
   // 连接到本地计算机的eShops数据库
   String strConn="Data Source=lingzi;Integrated Security=SSPI;"+
                   "Initial Catalog=eShops;User ID=sa;PASSWORD=";
   SqlConnection cn=new SqlConnection(strConn);
   // 打开连接
   cn.Open();
   // 显示连接状态
   Message.Text=cn.State.ToString();
   // 关闭连接
   cn.Close();
}
</script>
<body>
<asp:Label id="Message" runat="server" />
</body>
</html>
----------------------------------------------------------
出现下列错误:
用户 'LINGZI\ASPNET' 登录失败。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 用户 'LINGZI\ASPNET' 登录失败。
源错误:

行 11:    SqlConnection cn=new SqlConnection(strConn);
行 12:    // 打开连接
行 13:    cn.Open();
行 14:    // 显示连接状态
行 15:    Message.Text=cn.State.ToString();
源文件: E:\QHASPNET\CH7\CH7_1.ASPX    行: 13

______________________________________________________________________________________________
答1:
把你的sql server改成混合验证方式
______________________________________________________________________________________________
答2:
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;316989
______________________________________________________________________________________________
答3:
如果你在Web开发中用信任方式登录,则需要将'LINGZI\ASPNET'这个用户(即你的机器名及ASPNET用户)加入到SQL用户中去。
你这段连接数据库的句子是把两者都包括了,这样是错误的。
把“Integrated Security=SSPI”这一句去掉就可以了。这是用来进行信任登录的方式。
______________________________________________________________________________________________
答4:
比较同意楼上 birdxxxx(爱上老鼠的猫) 的说法
______________________________________________________________________________________________
答5:
不用吧
sqlserver混合验证模式
sqlserver单击有键-〉属性-安全-〉身份验证选择sqlserver和windows
______________________________________________________________________________________________
答6:
在SQL SERVER中添加'LINGZI\ASPNET'用户,设置相应的权限,或者用集成验证。
______________________________________________________________________________________________
答7:
注意,上面说的都对,不过是针对的windows2000操作系统。
如果你使用的是windows2003,那么asp.net的运行时帐户是NETWORK SERVICE,那么必须把这个用户添加到SqlServer的登录帐户中,否则你即使把'LINGZI\ASPNET'帐户添加也没有用。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值