Мегаобучалка Главная | О нас | Обратная связь


Идентификаторы пользователей и права владения



2019-12-29 188 Обсуждений (0)
Идентификаторы пользователей и права владения 0.00 из 5.00 0 оценок




Идентификатором пользователяназывается обычный идентификатор языка SQL, используемый для обозначения некоторого пользователя базы данных. Каждому пользователю базы данных должен быть назначен собственный идентификатор, присваиваемый администратором базы данных. По очевидным соображениям защиты данных идентификатор пользователя, как правило, защищается паролем. Каждый выполняемый СУБД оператор SQL выполняется от имени какого-либо пользователя. Идентификатор пользователя применяется для определения того, на какие объекты базы данных может ссылаться пользователь и какие операции с этими объектами он имеет право выполнять. Каждый созданный в среде SQL объект имеет своего владельца. Владелец задается идентификатором пользователя, определенным в конструкции AUTHORIZATION той схемы, которой этот объект принадлежит. Первоначально только владелец объекта знает о существовании данного объекта и имеет право выполнять с этим объектом любые операции.

     6.2 Привилегии

Привилегиями называют определения действий, которые пользователь имеет право выполнять в отношении данной таблицы базы данных или представления. В стандарте ISO определяется следующий набор привилегий:

     ‒SELECT право выбирать данные из таблицы;

     ‒ INSERT право вставлять в таблицу новые строки;

     ‒UPDATE право изменять данные в таблице;

     ‒ DELETE право удалять строки из таблицы;

     ‒REFERENCES право ссылаться на столбцы указанной таблицы в описаниях требований поддержки целостности данных;

     ‒USAGE право использовать домены, проверки, наборы символов и трансляции.

     Понятия проверок, наборов символов и трансляций не рассматриваются в этой книге. Привилегии INSERT и UPDATE могут ограничиваться лишь отдельными столбцами таблицы; в этом случае пользователь может модифицировать значения указанных столбцов, но не изменять значения остальных столбцов таблицы. Аналогичным образом, привилегия REFERENCES может распространяться только на отдельные столбцы таблицы, что позволит использовать их имена в формулировках требований защиты целостности данных (например, в конструкциях CHECK и FOREIGN KEY), входящих в определения других таблиц, тогда как применение для подобных целей остальных столбцов будет запрещено.

     Заключение

 

Стандарт ISO предусматривает использование восьми базовых типов данных: логических, символьных и битовых строк, точных и округленных чисел, даты/времени и временного интервала, а также символьных и больших двоичных объектов.

Операторы языка SQL DDL позволяют создавать новые объекты базы данных. Операторы CREATE и DROP SCHEMA позволяют создавать и удалять схемы. Операторы CREATE, ALTER и DROP TABLE обеспечивают создание, модификацию и удаление таблиц базы данных. Операторы CREATE и DROP INDEX позволяют создавать и удалять индексы для указанной таблицы.

Стандарт ISO языка SQL предусматривает использование в операторах CREATE TABLE и ALTER TABLE специальных конструкций, предназначенных для определения требований поддержки целостности данных, к которым относятся условие обязательности. Обязательность наличия данных указывается с помощью ключевого слова NOT NULL. Ограничения для доменов атрибутов задаются либо с помощью конструкций CHECK, либо посредством создания соответствующих доменов с помощью операторов CREATE DOMAIN. Первичные ключи определяются с помощью конструкции PRIMARY KEY, а альтернативные ключи описываются с помощью комбинации ключевых слов NOT NULL и описателей UNIQUE. Внешние ключи описываются с помощью конструкции FOREIGN KEY, а также задания правил удаления и обновления с использованием конструкций ON UPDATE и ON DELETE. 

 Представления могут использоваться с целью упрощения структуры базы данных с точки зрения пользователя и формулирования запросов к базе данных. Кроме того, представления могут использоваться для защиты определенных столбцов и/или строк таблицы от несанкционированного доступа. Не все виды представлений допускают обновление содержащихся в них данных.

Оператор COMMIT указывает на успешное завершение транзакции и необходимость фиксации в базе данных всех изменений, внесенных при ее выполнении. Оператор ROLLBACK указывает, что выполнение транзакции должно быть прекращено, а все внесенные в ходе ее выполнения изменения должны быть отменены.

Управление доступом в языке SQL к данным построено на базе концепций идентификаторов пользователей, предоставления привилегий и прав владения. Идентификаторы пользователей назначаются всем пользователям базы данных ее администратором и предназначены для идентификации отдельных пользователей. Каждый создаваемый в базе данных объект SQL имеет своего владельца. Владелец объекта может предоставить другим пользователям базы данных те или иные привилегии доступа к данному объекту, для чего используется оператор G^ANT. Предоставленные привилегии могут быть впоследствии отменены с помощью оператора REVOKE. К предоставляемым привилегиям относятся USAGE, SELECT, DELETE, INSERT, UPDATE и REFERENCES, причем три последние могут быть ограничены отдельными столбцами таблицы или представления. Пользователю может быть предоставлено, право передавать полученные им привилегии другим пользователям базы данных по его собственному усмотрению, для чего используется конструкция WITH GRANT OPTION. Этот режим может быть отменен с помощью конструкции GRANT OPTION FOR оператора REVOKE.

И так язык SQL является стандартом для использования в реляционных базах данных, наиболее современных хранилищах информации. Перспективы их развития БД огромны, но прослеживается четкая тенденция во всех новых СУБД - обязательная поддержка языка SQL.


Глоссарии

№ п/п

Новое понятие

                            Содержание
1

Двойное назначение SQL

  Использование языка SQL как интерактивного и как встроенного
  2

 Идентификатором пользователя

  Обычный идентификатор языка SQL, используемый для обозначения некоторого пользователя базы данных  
  3

 Представление

Динамически сформированный результат одной или нескольких реляционных операций, выполненных над отношениями базы данных с целью получения нового отношения
  4

Привилегиями

Определения действий, которые пользователь имеет право выполнять в отношении данной таблицы базы данных или представления
  5

Транзакцией

Логическая единица работы, состоящая из одного или нескольких операторов SQL, которая с точки зрения восстановления данных будет рассматриваться, и обрабатываться системой как единое неделимое действие
6 Распределение транзакции

Транзакция, осуществляемая доступ к данным, сохраняемых более чем в одном местоположение

 7 ISO

 

Национальная Организация Стандартов

       

     Список использованных источников

1. Глушаков С.В. Базы данных. – М.:АСТ, 2001. 211 с.

2. Дейт К. Дж. Введение в системы баз данных. 6-е изд. - М.: Вильямс. 2000.   316 с.

3. Документация Microsoft SQL Server 2000. 169 с.

4. Конноли Т., Бегг Л., Страчан А. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. 2-е изд. М.Вильямс 2000., 240 с.

5. Кириллов В.В.Основы проектирование реляционных баз данных. СПб. 2000.,245с.

6. Когаловский М.Р. Энциклопедия технологий баз данных. – М. 2002. 479с.

7. Мамаев Е. Microsoft SQL Server 2 – СПБ.: БХВ-Петербург, 2002. 243 с.

8. Федоров А., Елманова Н.,Базы данных для всех.М.: Компьютер- пресс,2001. 312 с.

9. Фаронов В.В. Основы программирования в SQL. - М.: Издатель Молгачева С.В., 2002. – 329 с.

10. Харрингтон. Проектирование реляционных баз данных просто и доступно. –  М.:Лори,2000.–339с.
                                                     Приложение А

 

Таблица №1 - Типы операторов

Оператор Назначение Оператор Назначение
BIT_LENGTH Возвращает длину заданной строки в битах. Например, результат вычисления выражения BIT_LENGTH(X'FFFF') равен 16
OCTET_LENGTH Возвращает длину заданной строки в октетах (длина в битах, деленная на 8}. Например, результат вычисления выражения OCTET_LENGTH (X'FFFF') равен 2
CHAR__LENGTH Возвращает длину заданной строки в символах(или в октетах, если строка является битовой). Например, результат вычисления выражения CHAR_LENGTH ( ' Beech') равен 5
CAST Преобразует значение выражения, построенного из данных одного типа, в значение данных другого типа. В качестве примера можно привести выражение CAST (Б .2Е6 AS INTEGER)
| | Операция конкатенации, Соединенные с помощью этой операции две символьные или битовые строки преобразуются в одну строку. Например, выражение f Name j | IName позволяет объединить в одну символьную строку имя и фамилию работника
CURRENTJJSER ИЛИ USER Функция возвращает символьную строку, представляющую собой текущий идентификатор в системе авторизации (или, как принято говорить, имя учетной записи) текущего пользователя
SESSION_USER Функция возвращает символьную строку, представляющую собой идентификатор текущего сеанса SQL
SYSTEMJJSER Функция возвращает символьную строку, представляющую собой идентификатор пользователя, активизировавшего текущий модуль
LOWER Функция преобразует в заданной строке все прописные буквы в строчные. Например, в результате вычисления выражения LOWER(SELECT fName FROM Staff WHERE staffNo = 'SL21') будет получено значение 'john'
UPPER Функций преобразует в заданной строке все строчные буквы в прописные. Например, в результате вычисления выражения UPPER(SELECT fName FROM Staff WHERE staffNo = SL21') будет получено значение 'JOHN'
TRIM Функция удаляет указанные ведущие (LEADING), конечные (TRAILING) или те и другие (BOTH) символы из заданной строки. Например, вычисление выражения TRIM (BOTH ' * ' FROM ' *** Hello World * * * ' ) даст результат 'Hello World1
POSITION Функция возвращает позицию одной строки в другой строке. Например, в результате вычисления выражения POSITION (' ее' IN 'Beech') будет получено значение 2
SUBSTRING Функция выполняет выделение подстроки из заданной строки. Например, в результате вычисления выражения SUBSTRING!'Beech' FROM 1 то з) будет получено значение 'Bee1
EXTRACT Функция возвращает значение указанного поля из значения типа даты, времени или интервала. В качестве примера можно указать Выражение EXTRACT(YEAR FROM Registration.dateJoined)
CASE Оператор возвращает одно из значений заданного набора исходя из результатов проверки выполнения указанных условий. Например CASE type WHEN 'House' THEN 1 WHEN 'Flat' THEN 2 ELSE  END  
CURRENT_DATE Функция возвращает текущую дату того часового пояса, в котором находится пользователь
CURRENTJTIME Функция возвращает текущее время того часового пояса, который в настоящее время применяется по умолчанию для текущего сеанса, Например, выражение CTJRRENTJTIME (6) возвращает текущее время с точностью до микросекунд
CURRENT_TIME_STAMP функция возвращает текущую дату и время того часового пояса, который в настоящее время применяется по умолчанию для текущего сеанса. Например, выражение CURRENT_TIMESTAMP(O) возвратит временную отметку с точностью до целых секунд

                                 

                   

                                                          Приложение Б

 

 

     Таблица № 2 - Скалярные типы данных языка SQL

 

     Типы данных                                       Объявления                        
boolean (Логический) BOOLEAN
character (Символьный) CHAR VARCHAR
bit (Битовый) BIT BIT VARYING
exact numeric (Точные числа) NUMERIC DECIMAL INTEGER SMALLINT
approximate numeric (Округленные числа) FLOAT REAL DOUBLE PRECISION
datetime (Дата/время) DATE TIME TIMESTAMP
interval (Интервал) INTERVAL

 

                                       


         [1] Дейт К.Дж. Введение в системы баз данных. 6-е изд. - М.: Вильямс. 2000 . с.16.

  [2] Глушаков С.В. Базы данных. – М.:АСТ, 2001. 11 с.

 

[3] Конноли Т., Бегг Л., Страчан А. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. 2-е изд. М.Вильямс 2000., 20 с.

 

[4] Федоров А.,Елманова Н.Базы данных для всех.М.: Компьютер- пресс,2001. 12 с.

 

        [5] Мамаев Е. Microsoft SQL Server 2 – СПБ.: БХВ-Петербург, 2002. 43 с.



2019-12-29 188 Обсуждений (0)
Идентификаторы пользователей и права владения 0.00 из 5.00 0 оценок









Обсуждение в статье: Идентификаторы пользователей и права владения

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Почему в редких случаях у отдельных людей появляются атавизмы?
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (188)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.01 сек.)