Разработка приложений баз данных для СУБД Sybase SQL Anywhere


Cвойства таблиц данных - часть 5


Поле области Check Constraint вкладки Constraints предназначено для задания условия накладываемые на значения таблицы. В утилите ISQL эти действия реализуются следующими операторами:

/* Установка условий для значений таблицы */ ALTER TABLE Stepanov.Books ADD CHECK(Number>0 AND Start_date>=1992); /* Снятие условий для значений таблицы */ ALTER TABLE Stepanov.Books DELETE CHECK

Назначение вкладки Permissions (рис. 54) состоит в установлении для пользователей привилегий по манипулированию текущей таблицей.

Рис. 54. Окно свойств таблицы Books - вкладка Permissions

На вкладке Permissions показано, что пользователь Sidorova имеет привилегию SELECT () для таблицы Books (). Причем он(она) имеет право предоставлять эту привилегию другим пользователям. Такие привилегии данному пользователю предварительно установил автор. Для предоставлении привилегий другим пользователям следует щелкнуть мышью по кнопке Grant.

Рис. 55. Назначение пользователей, допущенных к работе с таблицей Books

После этого необходимо выделить из предлагаемого списка требуемых отдельных пользователей или/и групп пользователей. Этим самым реализуется назначение индивидуальных или групповых привилегий. На рис. 55 показано выделение пользователей Ivanova, Popova и группы пользователей LIBRARIANS. После этого следует щелкнуть по кнопке Grant Permission. Результат допуска этих пользователей будет отображен в вкладке Permissions (рис. 56).

Рис. 56. Пользователи допущенные к работе с таблицей Books и перечень их привилегий

По умолчанию каждому пользователю назначаются все привилегии без права из передачи другим пользователям. Для коррекции привилегий отдельного пользователя следует выделить его как показано на рис. 56. В результате этого становятся доступными группы флажков Permission и Grant option. Установка/снятие флажков в первой группе соответствует назначению/отмене соответствующих привилегий. На рис. 56 показано, что какие привилегии устанавливаются пользователю Petrova. Этому пользователю назначены все привилегии кроме привилегии DELETE (). Привилегия UPDATE () позволяет пользователю Petrova модифицировать только поля Number и Times_read. Уточнение привилегий для подмножества полей таблицы осуществляется при помощи кнопок с многоточием. Кроме того, пользователь Petrova имеет право назначать привилегию SELECT () для таблицы Books другим пользователям. Следует отметить, в закладке Permissions (см. рис. 56) можно устанавливать как индивидуальные, так и групповые привилегии. Так на рис. 56 видно, что индивидуальные привилегии установлены для пользователей Petrova, Ivanova и Sidorova. Групповые привилегии определены для группы пользователей LIBRARIANS. Из этого следует, что для всех членов этой группы (пользователей Petrova, Ivanova, Sidorova и Popova) определена привилегия INSERT () для работы с таблицей Stepanov.Books. Таким образом, установка данной привилегий для пользователей Petrova и Ivanova является избыточной.

Все действия, произведенные в SQL Central при рассмотрении вкладки Permissions, можно произвести и в утилите .ISQL Для этого следует выполнить последовательность ниже приведенных SQL-операторов:




Содержание  Назад  Вперед