安装MSI时,拒绝CREATE DATABASE权限

时间:2019-08-21 15:04:18

标签: c# sql windows-10 windows-installer sql-server-2016-express

我创建了一个MSI文件来安装程序。作为安装过程的一部分,我需要在Windows 10 Enterprise上使用SQL Server 2016 Express创建本地数据库。当我运行MSI时,会发生以下错误:

CREATE DATABASE permission denied in database 'master'.
SQL error number = 262 ==> SQL server = (local)\MYCOMPUTER --> SQL state = 1 --> Error code = -2146232060 --> SQL Error: System.Data.SqlClient.SqlError: CREATE DATABASE permission denied in database 'master'.

如何解决此问题并创建本地数据库?我需要在SQL Server或代码本身中更改设置吗?

谷歌搜索这个问题告诉我,我需要给用户登录名“ sysadmin”和“ dbcreator”,但这是行不通的。我现在已为用户禁用了这些角色。

1 个答案:

答案 0 :(得分:0)

在脚本中添加以下内容

USE master;
GRANT CREATE ANY DATABASE TO <LoginName>;
GRANT CREATE TABLE TO <LoginName>;