我在Windows XP上安装了SQL Server 2008 R2。
在安装过程中,我选择了“SQL Server和Windows身份验证模式”
当我在服务器上的SQL Server Management Studio中单击鼠标右键时 - >安全选项卡“SQL服务器和Windows身份验证模式”已选中。
但是当我点击我的数据库时 - >属性 - 查看连接属性在Windows身份验证中设置身份验证方法。
在我的数据库中添加了一个user1
,密码为user1
。
但我无法从C#(Visual Studio 2008)登录我的数据库,因为发生了错误:
用户'user1'登录失败 user未与受信任的用户关联 SQL Server连接
什么是不对的?
当我得到:
string connectionStr = @"Data Source=rmzcmp\SQLExpress;Initial Catalog=ResourcesTmp;Integrated Security=True";
我有以下错误:
{“无法打开登录请求的数据库\”ResourcesTmp \。登录失败。\ r \ n登录失败,用户'RMZCMP \ rm'。“}
rm是我登录计算机的原始用户名。 当我得到rm我有错误:
{"Login failed for user 'rm'. The user is not associated with a trusted SQL Server connection."}
试。
此致
答案 0 :(得分:1)
您说在您的数据库中创建了一个用户 - 您是否也为您的服务器创建了登录?
在SQL Server 2005及更高版本中,安全性分为两步:
另外:您没有向我们展示您的连接字符串,因此我们只能猜测您正在使用的设置。从错误消息中,我几乎猜测你在连接字符串中使用Integrated Security
- 但是从问题的其他方面来看,你似乎已经创建了一个特定用户(并且可能是该用户的登录名) ) - 所以你不想使用集成(Windows)安全性......
最有可能的是,您的连接字符串无效 - 或者您缺少登录信息 - 或两者兼而有之。您需要向我们提供更多信息,以便我们能够真正提供帮助!
答案 1 :(得分:1)
您可以根据以下内容更改连接字符串:
确保您的SQL Server安装成功。
例如:
如果可以创建SQL Server身份验证登录
您可以在SQL Server身份验证中使用用户名/密码登录。使用连接字符串,如:
Data Source=Servername;Initial Catalog=DatabaseName;User ID=user;Password=sa
但是
如果您只能使用Windows身份验证登录,则安装有问题。使用连接字符串:
Data Source=Servername;Initial Catalog=DatabaseName;Integrated Security=True
问候!
答案 2 :(得分:0)
该错误表明您的应用程序设置为使用“受信任”(即Windows)凭据登录,并且该程序运行的Windows帐户没有在服务器上登录。根据您添加用户的方式,我猜测它是一个SQL登录,您应该更改连接字符串以反映这一点。
答案 3 :(得分:0)
我在我的机器上创建了用户(安装了ms sql) 用户名也是user1和密码。 我可以在这个用户(user1)上登录Ms sql server 我的连接字符串是:
string connectionStr = @"Data Source = rmzcmp\SQLExpress; Initial Catalog = ResourcesTmp; User Id = user1; Password = user1;";
我是用户MS SQL Server 2008
rmzcmp是我的电脑名称。 在ResourcesTmp(我的数据库) - >安全 - >我拥有的用户:dbo,guest,INFORMATION_SCHEMA,sys,user1,user2 我没有sa用户。 User1具有以下权限: 该用户拥有的架构: db_accessadmin 拥有db_datareader db_datawriter权限 数据库角色成员 db_accessadmin 拥有db_datareader db_datawriter权限 的db_owner
服务器属性 - >权限 - >显式标签: 连接SQL:Grantor sa,Grant true。 User1所有复选框都有false
安全标签 - >服务器身份验证:正如我在前面的帖子
中提到的那样,选择了SQL Serve和Windows身份验证模式此致
答案 4 :(得分:0)
如果用户尝试使用无法验证的凭据登录,则会出现此问题。在以下情况下可能会发生此问题:
方案1:登录可能是SQL Server登录,但服务器只接受Windows身份验证。
方案2:您尝试使用SQL Server身份验证进行连接,但SQL Server上不存在使用的登录。
方案3:登录可能使用Windows身份验证,但登录是无法识别的Windows主体。无法识别的Windows主体意味着Windows无法验证登录。这可能是因为Windows登录来自不受信任的域。
要解决此问题,请按照适用于您的方案的步骤操作。 方案1:在混合身份验证模式下配置SQL Server。
SQL Server 2012,SQL Server 2008和SQL Server 2005 打开SQL Server Management Studio。为此,请依次单击“开始”,“所有程序”,“Microsoft SQL Server 200x(其中x是SQL的版本)”,然后单击“SQL Server Management Studio”。 右键单击服务器,然后单击“属性”。见图。 在“安全性”页上的“服务器身份验证”下,单击“SQL Server和Windows身份验证模式”选项按钮,然后单击“确定”。见图。 在“SQL Server Management Studio”对话框中,单击“确定”以重新启动SQL Server。