SQL Server 2005 - создание базы данных с разрешениями для другой базы данных - PullRequest
0 голосов
/ 22 апреля 2011

Я новичок в SQL Server, но у меня есть опыт работы с Oracle и MySQL.Я использую SQL Server Management Studio.

У меня есть база данных, из которой я хочу создать представления, но я хочу, чтобы эти представления находились в другой базе данных (схеме?), Которая будет доступна отдельной учетной записи пользователяможно подключить через JDBC.

Я могу достаточно легко создать базу данных, щелкнуть правой кнопкой мыши «Базы данных» и выбрать «Новая база данных».Оттуда я потерялся.

1) Как предоставить разрешения на выбор / обновление / удаление (для создания и обновления представлений) для одной базы данных новой базе данных?

2) Как создать нового пользователя?

3) Как предоставить разрешения для пользователей?

Заранее спасибо.

1 Ответ

1 голос
/ 17 мая 2011

Как сказал Мартин, вам нужна новая схема, а не база данных.

CREATE SCHEMA [SchemaName] AUTHORIZATION dbo;

Затем создайте ваши представления под новым именем схемы,

CREATE LOGIN [LoginName] {FROM WINDOWS} (если вы используете группу AD)

USE [DatabaseName];

CREATE USER [LoginName / Username];(Они могут быть одинаковыми)

GRANT EXECUTE, SELECT, INSERT, DELETE, VIEW DEFINITION ON Schema :: [NewSchemaName] TO [LoginName / Username];

Если вы хотите иметьРоль Создать роль в базе данных и сделать UserName участником роли и предоставить разрешения для роли.

...