【发布时间】:2018-06-01 04:02:43
【问题描述】:
我尝试(第一次)在我的 SQL Azure 数据库上创建一个用户帐户。 我在一些博客中读到我必须创建这些命令行
CREATE LOGIN login_name WITH PASSWORD = 'strong_password';
CREATE USER 'user_name' FOR LOGIN 'login_name';
然后
USE [Database];
GO
GRANT CONNECT TO login_name;
但是,当我尝试在我的数据库上连接这个新帐户时,我收到消息错误 916 服务器主体“login_name”无法在当前安全上下文下访问数据库“master”。
我不明白,因为不要为我的主用户创建我的新用户,而是为我的 SQL Azure 环境中的特定数据库(顺便说一下,我的 SQL Azure 中有 5 个数据库)
如果您有任何想法可以帮助我,请提前感谢
【问题讨论】:
-
您没有将登录名映射到特定数据库,因此默认为 master。请阅读文档 (docs.microsoft.com/en-us/sql/t-sql/statements/…)
-
来自文档 DEFAULT_DATABASE =database 指定要分配给登录的默认数据库。如果不包括此选项,则默认数据库设置为 master。 这似乎是您的问题。