Yoj*_*les 5 c# sql-server azure azure-sql-database
我正在尝试在 Azure SQL Server 中使用 C# 创建数据库用户。但我需要设置其默认数据库 ( DEFAULT_DATABASE
),但该脚本在 Azure 上不起作用。
有谁知道我该怎么做?
CREATE USER newlogin FOR LOGIN newlogin;
ALTER LOGIN newlogin WITH DEFAULT_DATABASE = myDatabase;
Run Code Online (Sandbox Code Playgroud)
但它会抛出一个错误:
此版本的 SQL Server 不支持关键字或语句选项“default_database”。
创建用户并尝试连接到 SQL Server 后,出现以下错误:
这可以在 Azure 中完成,但正如@Larnu 所暗示的那样,这并不完全简单。他们的答案中给出的建议适用于单次登录,但在任何生产场景中可能都不实用或不理想。我建议执行以下操作:
Azure Sql Server 中的代码与本地代码略有不同:
-- run in [master]
create login [YourGroupName] from external provider;
alter login [YourGroupName] with default_database = [YourDefaultDatabase];
-- run in [YourDefaultDatabase]
create user [YourGroupName] from login [YourGroupName];
Run Code Online (Sandbox Code Playgroud)
编辑:
Azure Sql Server 中的用户通常包含在单个数据库中,甚至不存在于“服务器级别”;更多信息可以在这里找到。如果您只想在 Azure Sql Server 数据库中创建用户,那么您所需要做的就是以create user [YourUserName] with password = 'YourSecret';
. 请注意,这假设您已经连接到要在其中创建用户的数据库。如果您处于诸如 之类的上下文中[master]
,并且无法更改连接字符串,那么您需要首先使用ChangeDatabase。
归档时间: |
|
查看次数: |
7711 次 |
最近记录: |