Azure SQL Database новый созданный пользователь со схемой dbo, но не может искать таблицы в схеме dbo - PullRequest
0 голосов
/ 15 февраля 2019

В основной базе данных:

CREATE LOGIN Test_Admin   
    WITH PASSWORD = 'xxxx';  
GO  

CREATE USER Test_Admin
    FOR LOGIN Test_Admin
    WITH DEFAULT_SCHEMA = [guest]; --want to grant minimum access rights
GO

В целевой базе данных:

CREATE USER Test_Admin
    FOR LOGIN Test_Admin
    WITH DEFAULT_SCHEMA = [dbo];
GO

Однако я не смог найти в существующих таблицах dbo ниже SQL:

SELECT * FROM INFORMATION_SCHEMA.TABLES

Почему и как я могу посмотреть назад таблицы dbo?

1 Ответ

0 голосов
/ 15 февраля 2019

Вы создаете пользователя в главной БД и хотите, чтобы пользователь Test_Admin мог обращаться к целевой БД, я прав?

Если вы хотите сделать это, вам нужно предоставить пользователям базы данных права db_owner с помощьюприсоединение к роли базы данных.

Вы можете изменить свой код, повторив попытку:

В основной базе данных:

CREATE LOGIN Test_Admin   
    WITH PASSWORD = 'xxxx';  
GO  

CREATE USER Test_Admin
    FOR LOGIN Test_Admin
    WITH DEFAULT_SCHEMA = [guest]; --want to grant minimum access rights
GO
EXEC sp_addrolemember 'db_owner', 'Test_Admin'

В целевой базе данных:

CREATE USER Test_Admin
    FOR LOGIN Test_Admin
    WITH DEFAULT_SCHEMA = [dbo];
GO
EXEC sp_addrolemember 'db_owner', 'Test_Admin'
GO

Надеюсь, это поможет.

...