русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Роли Oracle


Дата добавления: 2015-07-09; просмотров: 701; Нарушение авторских прав


Синтаксис создания ролей в Oracle также схож с синтаксисом создания пользователей.

-- создание ролиCREATE ROLE rolename; -- роль с паролемCREATE ROLE rolename IDENTIFIED BY pswd; -- добавление права ролиGRANT select ON tblname TO rolename; -- добавление роли пользователюGRANT rolename TO username; -- уничтожение ролиDROP ROLE rolename;

Роли MySQL

MySQL пока не поддерживает ролей.

Файловый вывод/ввод

Большинство программ, работающих с БД, позволяют сохранять выборки в различных форматах, но не все позволяют сохранить в виде простого текстового файла. Например, была ситуация, когда в БД была необходимая информация о сотрудниках (более тысячи человек) для одной стандартной формы. А формат файла, описывающий эту форму, оказался текстовым. Поэтому проблема решилась выборкой в файл и вставкой его содержимого в файл формы. А соответствующий отдел был избавлен от лишней работы. Для конкретности примера, воспользуемся следующей таблицей с данными.

-- таблица цветовcreate table colors(id integer,cname varchar(45), constraint pk_colors primary key (id)); insert into colors values(1,'красный');insert into colors values(2,'синий');insert into colors values(3,'зеленый');insert into colors values(4,'белый');insert into colors values(5,'черный');commit;

Oracle

В Oracle вывод в файл реализуется с помощью команды SQL plus spool. Она служит как для начала вывода в файл, так и для остановки. По умолчанию расширение файла lst.

-- открываем вывод в файлspool c:\\myfile; -- выборкаselect t.id || ' ' || t.cname from colors t; -- закрываем вывод в файлspool off;

Так как это не SQL команда, то ее нельзя использовать внутри PL/SQL блока, но можно поместить блок между этими командами. По этой же причине, чтобы выполнить этот пример в PL/SQL developer, нужно открыть Command window.



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

-- открываем вывод в файлspool c:\myfile; -- выборкаselect t.id || ' ' || t.cname from colors t; -- закрываем вывод файл и распечатываемspool out;

MySQL

В MySQL данная задача реализована аналогично сохранению выборки в списке переменных в команде select.

select *into outfile 'c:/myfile.lst' -- указываем файлfields terminated by ',' -- разделитель полейenclosed by '"' -- заключить каждое поле между "lines terminated by '\\n' -- разделитель строкиfrom colors;

Если какой-либо разделитель не нужен, то его определение можно опустить. В отличие от Oracle здесь нельзя вывести более одной выборки в один файл.

Команда LOAD DATA INFILE является обратной и позволяет загрузить данные из файла в таблицу.

Например пусть есть файл myfile.lst, со следующим содержимым в обычной для Windows русской кодировке.

"50", "светло-коричневый""51", "темно-коричневый"

Тогда загрузить данные можно следующей командой.

load data infile 'c:/myfile.lst' ignore -- пропускаем если данные уже в таблице into table colors character set cp1251 -- кодировка исходного файла fields terminated by ',' -- разделитель полей enclosed by '"' -- поле заключено между " lines terminated by '\\n'; -- разделитель строки

Если таблица colors использует другую кодировку, например utf-8, данные преобразуются корректно.



<== предыдущая лекция | следующая лекция ==>
Роли PostgreSQL | Новые возможности (компонент Database Engine) SQL Server 2012


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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