当前位置:编程学习 > C#/ASP.NET >>

System.Data.SqlClient.SqlException: 用户 'sa' 登录失败

做了一个SQL server 服务器远程监控系统,但在最后不能进入数据库,请高手帮看一下!
   源错误: (31行)
行 29:  SqlDataAdapter myDA = new SqlDataAdapter();
行 30:  myDA.SelectCommand=selectCMD;
行 31:  SqlConn.Open();
行 32:  DataSet myDS = new DataSet();
行 33:  myDA.Fill(myDS, "1");
   堆栈跟踪: 


[SqlException: 用户 'sa' 登录失败。]
   System.Data.SqlClient.ConnectionPool.GetConnection(Boolean& isInTransaction)
   System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
   System.Data.SqlClient.SqlConnection.Open()
   WSQLM.WebForm3.Page_Load(Object sender, EventArgs e) in d:\sql\wsqlm\webform3.aspx.cs:31
   System.Web.UI.Control.OnLoad(EventArgs e)
   System.Web.UI.Control.LoadRecursive()
   System.Web.UI.Page.ProcessRequestMain()


代码:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WSQLM
{
/// <summary>
/// WebForm3 的摘要说明。
/// </summary>
public class WebForm3 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string connstring="Data Source="+Session["SqlServer"].ToString()+";"+"user id="
+Session["user"].ToString()+";"+"initial catalog="+Session["db"].ToString();
SqlConnection SqlConn=new SqlConnection(connstring);
SqlCommand selectCMD = new SqlCommand("SELECT * FROM "+Session["table"].ToString(), SqlConn);
SqlDataAdapter myDA = new SqlDataAdapter();
myDA.SelectCommand=selectCMD;
SqlConn.Open();
DataSet myDS = new DataSet();
myDA.Fill(myDS, "1");
DataGrid1.DataSource=myDS;
DataGrid1.DataBind();
SqlConn.Close();

}

#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{    
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion
}
}

 

--------------------编程问答-------------------- System.Data.SqlClient.SqlException: 用户 'sa' 登录失败 
=======================================================
出错信息已经比较明确了

1. 看看SQL Server安全性是否启用了混合验证
2. 如果是SQL Server 2005 看是否启用了sa登录
3. 确认你的密码正确 --------------------编程问答-------------------- 一般看web.config里数据库的连接 。。

sa的密码错误 ? --------------------编程问答-------------------- 密码可能不对 --------------------编程问答-------------------- 直接打开sql server的查询分析器,用sa用户登录,看是不是出错。根据相应的错误代码再做处理,如出现18452错误是因为采用了混合验证模式,只需要打开企业管理器,相应的服务器——右键属性——安全 性——身份验证中选中sql server和windows即可。其他的问题需根据错误代码采取相应的措施。 --------------------编程问答-------------------- 这么明确的提示给你了,还来这里问,这就是你的不对了
出现问题,找出问题,解决问题。
题外话:如果自学能力不强的话,劝你不要搞这行了,更新太快 --------------------编程问答-------------------- System.Data.SqlClient.SqlException: 用户 'sa' 登录失败 
=======================================================
出错信息已经比较明确了

1. 看看SQL Server安全性是否启用了混合验证
2. 如果是SQL Server 2005 看是否启用了sa登录
3. 确认你的密码正确

==============================
同意高歌观点! --------------------编程问答-------------------- 哥们,错误都知道了,其实你搜索的答案都是有用的,只是你不知道具体的解决方法和问题,只有2个:

1. 安全性里面设这sql和windows两种
2. web.config里数据库的连接,你看看你的密码和sa用户的密码一致吗,不一致的,是会报错的
 
  --------------------编程问答-------------------- 我总结一下,
1.   看看SQL   Server安全性是否启用了混合验证 
2.   如果是SQL   Server   2005   看是否启用了sa登录 
3.   确认你的密码正确 
一般主要是第三点有问题,你可以看看web.config或者是app.config中的connectionString = “Data Source...”这个字符串中是否含有密码,默认生成的代码很有可能不含密码的,如果你设置过密码,那么因为这段字符串中没有密码就会登不上去。 --------------------编程问答-------------------- 是否混合模式 是否启用sa  sa密码是否正确  你先看看用sa数据库能不能登陆上去吧 --------------------编程问答-------------------- 重新设置SQL的用户名和密码,一定要看看是否开启了是否混合模式 --------------------编程问答-------------------- 检查SQL外围配置,是本地连接还是远程连接。
本地的话,就改成远程,如果你是用server=. 连接数据库的话,这个可以不用改 --------------------编程问答-------------------- 我跟楼主的错误一样。但是 下面说的 我都改了。还是不行

首先我是 windows和SQL server 混合登录。。
其次 我用 SQL server登录时,输入 sa用户名 和123密码,可以成功登录

sa的登录 我也已经启用了。。

还是错啊,刚用2005 比较郁闷
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,