azure SQL数据库创建表权限被拒绝

lawou6xi  于 2023-11-21  发布在  其他
关注(0)|答案(2)|浏览(146)

我有几个脚本在某些Azure数据库中创建一些表,这些脚本由init.sh启动。如果我使用同一用户登录SSMS,我将传递给连接字符串,然后手动运行脚本,它们成功运行,没有问题。但是,当我运行代码时,我得到了以下内容:
第一个月
我使用的用户与手动运行的用户相同。这对我来说毫无意义。我错过了什么?我在虚拟机中的Docker容器中运行SQL DB上的代码,一切正常,创建了表。代码,不应该是问题。

fdx2calv

fdx2calv1#

当我试图在master数据库中创建一个表时,我得到了如下所示的相同错误:
x1c 0d1x的数据
向用户授予使用以下代码解决错误的权限:

USE Master;
GRANT CREATE TABLE TO <user>;

字符串



在授予权限后,我可以在master数据库中创建一个表:



但是,根据this
主数据库是一个系统数据库-它并不是真的让你在里面闲逛和存储东西。我们通常为主数据库设计不同的备份和恢复过程,而不是用户数据库。
最好在专用数据库中创建表。有关详细信息,请参阅this

wztqucjr

wztqucjr2#

我的错误,第一个错误是下面的,然后是我原来的帖子:

USE statement is not supported to switch between databases. Use a new connection to connect to a different database.

字符串
USE语句不适用于Azure SQL数据库。由于这不起作用,我认为它会默认master并尝试在那里创建:)

相关问题