Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Описание аргументов




{ALL | DEFAULT} Соединиться со всеми ДБ, указанными в SET DATABASE; опции, указанные с CONNECT TO ALL, применяются ко всем БД.

’filespec’ Имя файла БД; может включать полный путь и имя удаленного компьютера. Если задаваемая строка содержит пробелы, ее необходимо заключить в кавычки.

dbhandle Дескриптор (handle) БД, объявленный в предыдущем операторе SET DATABASE; может использоваться в приложениях на встроенном SQL, но не в isql.

:variable Переменная, содержащая имя БД, имя пользователя или пароль. Не допустимо в isql.

AS dbhandle Соединяется с БД и присваивает предварительно объявленному дескриптору указатель на БД. Не допустимо в isql.

USER {’username’ |:variable} Строка или переменная, содержащая имя пользователя. Сервер проверяет имя пользователя на наличие в БДЗ. Имя пользователя не чувствительно к регистру.

PASSWORD {‘password’ |:variable} Строка или переменная, содержащая пароль пользователя. Максимальный размер 8 символов. Сервер проверяет имя пользователя и пароль на наличие в БДЗ. При сравнении регистр учитывается.

ROLE {‘rolename’ |:variable} Строка или переменная, содержащая роль пользователя. Максимальный размер 31 символ. Предварительно пользователю необходимо дать право на роль. Пользователь получает все права, назначенные роли. Пользователь может указать роль только при соединении с БД. Нельзя поменять роль во время соединения, для этого необходимо отсоединиться и присоединиться заново с другой ролью.

CACHE int [BUFFERS] Устанавливает количество буферов в кеш-памяти БД. Данное число определяет количество страниц памяти БД, с которыми программа может работать одновременно. Значение целочисленное. Значение по умолчанию – 256. Максимальное значение зависит от параметров ОС и компьютера. Нельзя использовать назначение кеша, если имя БД описано с помощью filespec.

Описание

Оператор CONNECT:

Инициализирует структуры данных БД.

Определяет, находится ли БД на вызывающем компьютере (локальная БД) или на другом компьютере (удаленная БД). Если InterBase не может найти БД, происходит ошибка.

Опционально устанавливает одно или больше имен пользователей, паролей и ролей. Все имена пользователей, пароли и роли должны быть известны. При сравнении паролей учитываются только первые 8 символов. Если установлены переменные окружения ISC_USER и ISC_PASSWORD, и пользователь, определяемый данными переменными не существует в БДЗ, выдается ошибка “undefined user name and password.”

Выполняет соединение с БД и проверяет сигнатуру файла БД. Файл БД должен содержать неповрежденную структуру БД, версия дисковой структуры файла должна распознаваться текущей версией InterBase. В противном случае возвращается ошибка.

Опционально создает дескрипторы БД, объявленные в операторе SET DATABASE.

Создает буфер БД для процесса, соединяющегося с БД.

В SQL перед тем, как БД может быть открыта с помощью CONNECT, ее предварительно надо объявить с помощью оператора SET DATABASE. При работе с isql оператор SET DATABASE не требуется. Несмотря на то, что CONNECT может открывать более чем одну БД, лучше использовать несколько операторов для облегчения понимания текста. При соединении используется набор символов (character set) по умолчанию (NONE). Можно определить другой набор символов с помощью оператора SET NAMES, он должен следовать до оператора CONNECT.

 

Подмножество оператора CONNECT доступно из isql. isql может присоединиться только к одной БД за раз. Перед каждым следующим оператором CONNECT происходит отсоединение от предыдущего соединения.

 

Примеры: оператор открывает БД из isql.

 

CONNECT ’employee.gdb’ USER ’ACCT_REC’ PASSWORD ’peanuts’;

 

Оператор встроенного SQL присоединяется БД, (путь к файлу БД хранится в переменной) и определяет предварительно объявленный дескриптор:

 

EXEC SQL

SET DATABASE DB1 = ’employee.gdb’;

EXEC SQL

CONNECT:db_file AS DB1;

 

Оператор встроенного SQL присоединяется к employee.gdb, выделяет 150 буферов:

EXEC SQL

CONNECT ’accounts.gdb’ CACHE 150;

 

Оператор встроенного SQL присоединяет пользователя ко всем предварительно объявленным с помощью SET DATABASE ДБ:

 

EXEC SQL

CONNECT ALL USER ’ACCT_REC’ PASSWORD ’peanuts’

CACHE 50;

 

Оператор встроенного SQL присоединяет employee.gdb с 80 буферами и employee2.gdb с 75 буферами (по умолчанию):

 

EXEC SQL

CONNECT ’employee.gdb’ CACHE 80, ’employee2.gdb’;

 

Оператор встроенного SQL соединяется с двумя БД, для каждой указывая своего пользователя:

 

EXEC SQL

CONNECT

:orderdb AS DB1 USER ’ACCT_REC’ PASSWORD ’peanuts’,

:salesdb AS DB2 USER ’ACCT_PAY’ PASSWORD ’payout’;

 

 

3 Порядок выполнения работы:

1. Ознакомиться с теоретическим материалом «Команды SQL для реализации разграничения доступа»;

2. Создать базу данных по схеме согласно варианту. Для создания схемы использовать ISQL;

3. Занести образцы данных в БД (не менее 10 строк в таблице);

4. Реализовать разграничение прав по группам пользователей;

5. Продемонстрировать работу ограничений.

 




Поделиться с друзьями:


Дата добавления: 2015-01-03; Просмотров: 256; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.