|
Программирование >> Разработка пользовательского интерфейса
Рис. 6.26. Отображение данных для таблицы Model в Manage Tables Создаем таблицу Firm: CREATE TABLE firm (key firm smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, name firm varchar(20) NOT NULL, key country smallint REFERENCES country(key country), times timestamp) На рис. 6.26 приведен результат выполнения команд CREATE TABLE и ALTER TABLE для таблицы Model, а на рис. 6.27 - список всех созданных таблиц в Server Manager. Microsoft SQLServeis L-; RJaEW2(S0LEerefS.DJ фС1 DatabasftDevices 1 J Dump Devices В Dilefaaifr: Ч g Liito aliofe a Qj Publics iom. в (2j Groups/UBf*-. S auto тоЫе.рамегщс!, car (dbo) Щ Ьоф [dbol cuslomer (cbo) О fym [dboj !- fLJcLoi! Idbo] i- mcdei (dbc) :-Ш o-deL sale fdbo] Й О Views Tl i J StofedPiocedme Рис. 6.27. Приведем правила SQL Server для присвоения идентификаторов полей: 1. 2. 3. 4. 5. Названия должны быть длиной от 1 до 30 символов. Первым символом может быть буква или знаки # . Идентификаторы, которые начинаются с зарезервированы для локальных переменных, а идентификаторы, которые начинаются с # , зарезервированы для временных объектов. Остальными символами могут быть буквы, цифры, знаки # или $ . Пробелы внутри названий не допускаются. Названия полей должны быть уникальными для одного и того же пользователя в одной и той же таблице. Названия колонок должны быть уникальными внутри одной таблицы. Самое время сделать несколько замечаний относительно использования русского языка в названиях таблиц и полей. Естественно, что все рассматриваемые СУБД, работающие под управлением Windows 95, прекрасно поддерживают эту возможность. Оказывается, такой на порядок более серьезный продукт, как SQL Server, также позволяет создавать таблицы с русскими полями, более того, имя таблицы также может быть русским. Не возникает проблем и при наращивании БД (upsizing) с русскими названиями полей и таблиц в архитектуру клиент-сервер. Например: CREATE TABLE Таблица с русскими полями (код smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, наименование varchar(20) NOT NULL, время timestamp) На рис. 6.28 приведен результат выполнения данного примера. После создания таблиц необходимо позаботиться о привилегиях доступа пользователей к той или иной таблице или полю. Привилегии доступа выделяются пользователям или группам посредством оператора GRANT и изымаются с помощью оператора REVOKE. Эти привилегии, как
Рис. 6.28. Применительно к таблицам и представлениям можно управлять следующими правами доступа: SELECT - право на выборку данных; INSERT - право на добавление данных; DELETE - право на удаление данных; UPDATE - право на обновление данных (можно указать определенные столбцы, разрешенные для обновления); REFERENCES - право на использование внешних ключей, ссылающихся на данную таблицу (можно указать определенные столбцы). Допустим, что у нас в системе два пользователя, Karina и Lena, которые входят в одно подразделение Piter group, и нам необходимо предоставить полномочия, указанные в табл. 6.6. Таблица 6.6. Образец назначения привилегий доступа для пользователей Таблицы Поля SELECT INSERT DELETE UPDATE Country Firm
Для назначения указанных полномочий создаем группу Piter group: sp addgroup piter group Последовательно создаем процедуры регистрации с именами login lev1, login lev2 и соответствующими им паролями lev1, lev2 для БД Auto Store: sp addlogin login lev1, lev1, auto store sp addlogin login lev2, lev2, auto store Созданные процедуры регистрации появляются в списке, который можно просмотреть в Server Manager, как это показано на рис. 6.29. правило, присваивает владелец соответствующих объектов (он же - администратор базы данных).
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |