c#网站开发:提示用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。 请教高手怎么解决?

南三方 2008-11-01 12:46:46
应用程序中的服务器错误。
--------------------------------------------------------------------------------

用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。

源错误:


行 92:
行 93: if (con.State != ConnectionState.Open)
行 94: con.Open();
行 95: cmd.Connection = con;
行 96: cmd.CommandText = nText;


源文件: f:\WebSite7\App_Code\SqlHelper.cs 行: 94

堆栈跟踪:


[SqlException (0x80131904): 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。]
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +171
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +199
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2406
System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +34
System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +223
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +371
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +184
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +193
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +502
System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +28
System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +429
System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +70
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +510
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +85
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +89
System.Data.SqlClient.SqlConnection.Open() +160
SqlHelper.PrepareCommand(SqlConnection con, SqlCommand cmd, SqlTransaction trans, CommandType nType, String nText, SqlParameter[] paras) in f:\WebSite7\App_Code\SqlHelper.cs:94
SqlHelper.ExcuteRead(String nText, CommandType nType, SqlParameter[] paras) in f:\WebSite7\App_Code\SqlHelper.cs:33

[Exception: 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。]
SqlHelper.ExcuteRead(String nText, CommandType nType, SqlParameter[] paras) in f:\WebSite7\App_Code\SqlHelper.cs:41
_Default.BindProduct() in f:\WebSite7\Default.aspx.cs:31
_Default.Page_Load(Object sender, EventArgs e) in f:\WebSite7\Default.aspx.cs:20
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +13
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +45
System.Web.UI.Control.OnLoad(EventArgs e) +80
System.Web.UI.Control.LoadRecursive() +49
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3745


...全文
1284 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
q704174307 2008-11-01
原因是因为数据库用户不正确
回复
hecker728 2008-11-01
[Quote=引用 7 楼 claymore1114 的回复:]
1、检查你的 数据库启动模式:是SQL Server 验证和还是Windows 。
2、检查 你的SQL Server 验证 是否启用密码。
3、检查 你的配置文件的 数据库 连接字符串 是否和 SQL Server 验证用的密码、用户名相同。
4、重新启动 你的SQL ,用你的SQL Server 验证用的密码、用户名 启动。
[/Quote]

按这个来,应该可以差出问题
程序没错,主要是数据库的连接代码或sql server的验证问题
回复
huyidao21 2008-11-01
数据库服务启动没有哦?www.joytxt.com
回复
huyidao21 2008-11-01
数据库服务启动没有哦?www.joytxt.com
回复
ilznfe 2008-11-01
未开放 sa 用户。
回复
duchong417 2008-11-01
[Quote=引用楼主 okfei 的帖子:]
应用程序中的服务器错误。
--------------------------------------------------------------------------------

用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相…
[/Quote]
应该是正解吧。
回复
cl98 2008-11-01
检查你的用户名验证是否开放了SA登录
回复
claymore1114 2008-11-01
1、检查你的 数据库启动模式:是SQL Server 验证和还是Windows 。
2、检查 你的SQL Server 验证 是否启用密码。
3、检查 你的配置文件的 数据库 连接字符串 是否和 SQL Server 验证用的密码、用户名相同。
4、重新启动 你的SQL ,用你的SQL Server 验证用的密码、用户名 启动。
回复
libin1976 2008-11-01
如果是sqlserver 2005 还要在Sql外围应用配置器-->服务和连接的外围配置-->SqlServer实例名-->远程连接中,选择本地连接和远程连接选择Tcp/Ip或者同时Tcp/IP各命名管道
回复
wuyq11 2008-11-01
在sql serve中重新创建用户
回复
leer168 2008-11-01
[Quote=引用 1 楼 min_jie 的回复:]
启动SQLSERVER企业管理器,选择要进行认证模式设置的服务器。右击该服务器,在弹出菜单中选择属性,SQL SERVER将弹出属性对话框

在属性对话框中选择安全性选项,在身份验证处选择“SQL Server和Windows”,然后确定。

这样就可以解决这个问题了。
[/Quote]

正解!!你的sa账户有密码么?你的数据库连接字符串写对了么?check it
回复
南三方 2008-11-01
我用的是sql2000.但问题还是没有解决掉,很感谢二楼和三楼!请大家继续解答,我的环境vs2005+sql2000
回复
Fibona 2008-11-01
如果是sqlserver 2005 还要在Sql外围应用配置器-->服务和连接的外围配置-->SqlServer实例名-->远程连接中,选择本地连接和远程连接选择Tcp/Ip或者同时Tcp/IP各命名管道
回复
止戈而立 2008-11-01
启动SQLSERVER企业管理器,选择要进行认证模式设置的服务器。右击该服务器,在弹出菜单中选择属性,SQL SERVER将弹出属性对话框

在属性对话框中选择安全性选项,在身份验证处选择“SQL Server和Windows”,然后确定。

这样就可以解决这个问题了。
回复
相关推荐
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2008-11-01 12:46
社区公告

让您成为最强悍的C#开发者