РАСПРЕДЕЛЕННАЯ СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ ORACLE

Размер: px
Начинать показ со страницы:

Download "РАСПРЕДЕЛЕННАЯ СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ ORACLE"

Транскрипт

1 Глава 2 РАСПРЕДЕЛЕННАЯ СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ ORACLE 2.1. Структура экземпляров Oracle. Экземпляр Oracle сложный комплекс структур памяти и процессов операционной системы (рис. 2.1). Рис Экземпляр Oracle

2 Глобальная системная область 75 Экземпляр Oracle Каждая база данных (БД) Oracle имеет связанный с ней экземпляр. Организация экземпляра позволяет СУБД обслуживать множество типов транзакций, обеспечивать высокую производительность, целостность данных и безопасность. Термин процесс означает любую задачу, выполняемую без вмешательства пользователя. Открытие БД Oracle включает три стадии. 1. Формирование экземпляра Oracle (предустановочная стадия). 2. Установка базы данных экземпляром (установочная стадия). 3. Открытие БД (стадия открытия). Экземпляр, в котором нет базы данных, называется незанятым (idle), но он занимает память и не выполняет никакой работы. Экземпляр может подсоединиться только к одной БД, а до тех пор, пока не будет использован Parallel Server, БД может быть подключена только к одному экземпляру Oracle. Экземпляр это мозг системы обработки данных. В экземпляре выполняются все операции, в то время как в БД хранятся все данные. Большинство настроек экземпляра связано с компонентами в глобальной системной области. Но кроме них существуют и некоторые опции настройки, касающиеся фоновых процессов Глобальная системная область. В SGA (System Global Area) хранятся структуры памяти, необходимые для манипулирования данными, анализа предложений SQL и кэширования транзакций. К этой области одновременно имеет доступ множество процессов, которые могут считывать данные из нее или модифицировать их. Все операции с БД используют информацию, находящуюся в SGA. SGA выделяется сразу же после создания экземпляра еще на предустановочной стадии. Освобождается эта область только после полного выключения экземпляра. Экземпляр Oracle представляет собой сложный комплекс взаимодействующих процессов. SGA состоит из следующих компонентов: разделяемый пул (SHARED POOL); кэш-буфер данных (DATABASE BUFFER CACHE); буфер журнала транзакций (REDO LOG BUFFER);

3 76 Глава 2. Распределенная система управления базами данных Oracle 2.1. Структура экземпляров Oracle. структуры сервера многозадачной среды (MULTI- THREADED SERVER MTS). Разделяемый пул Разделяемый пул (рис. 2.1) содержит кэш библиотеки, кэш словаря и управляющие структуры сервера (такие, как набор символов БД). Кэш библиотеки хранит план выполнения предложений SQL. Здесь содержатся заголовки пакетов PL/SQL и процедур, выполнявшихся ранее. Кэш словаря хранит строки словаря данных, которые были использованы для лексического анализа предложений SQL. Сервер Oracle использует кэш библиотеки для повышения скорости выполнения операторов SQL. Размер разделяемого пула задается параметром SHARED POOL SIZE в файле INIT.ORA. Размерность значения параметра байты. Объем пула необходимо заказывать. Кэш-буфер данных Кэш-буфер данных состоит из блоков памяти того же размера, что и блоки ORACLE. Все данные, с которыми работает СУБД, первым делом загружаются в кэш-буфер. В этих же блоках памяти выполняется и любое обновление данных. Поэтому очень важно правильно установить размер буфера. СУБД переносит данные на диск в соответствии с порядком их размещения в списке LRU (LEAST RECENTLY USED). Этот список отслеживает обращение к блокам данных и учитывает частоту обращений. Если выполняется обращение к блоку данных, хранящемуся в кэш-буфере, то оно помещается в тот конец списка, который носит название MRU (MOST RECENTLY USED). Если серверу требуется место в кэш-буфере для загрузки нового блока, то он решает этот момент с помощью списка LRU какой из блоков перенести на диск, чтобы освободить место для нового. Блоки, наиболее отстоящие в списке от MRU, кандидаты на удаление из кэш-буфера. Таким образом, дольше всего остаются в кэш-буфере те блоки, к которым чаще всего выполняется обращение. Модифи-

4 Фоновые процессы Oracle 77 Множество фоновых процессов Oracle цированные блоки называются грязными (dirty) и помещаются в соответствующий dirty-список. Буфер журнала транзакций Данные о транзакциях хранятся в этом буфере до тех пор, пока не будут переписаны в файл оперативного журнала транзакций. После заполнения буфера его содержимое переносится в файл журнала транзакций. Размер буфера журнала транзакций задается параметром LOG_BUFFER. Значение параметра указывает размер буфера в байтах. В результате вы получите время, которое пользовательские процессы находились в состоянии ожидания при обращении к буферу журнала транзакций Фоновые процессы Oracle. В процессе работы СУБД ORACLE просматривает тысячи записей в таблицах данных, отвечает на сотни запросов пользователей одновременно. Вся работа распределяется между множеством программ, которые работают независимо одна от другой, причем у каждой своя роль. В совокупности эти программы называются фоновыми процессами ORACLE. Множество фоновых процессов Oracle включает: SMON и PMON, RECO, DBWR, SNPn, LGWR, Dnnn, ARCH, LCKn, СКРТ, Pnnn Также нужно обратить внимание на процессы USER и SERVER, выполняющие обработку транзакций конечного пользователя БД. Хотя эти процессы и не квалифицируются как фоновые, они играют значительную роль в функционировании системы. Процессы PMON и SMON выполняют автоматическую уборку после внезапно прекратившихся или завершившихся ава-

5 78 Глава 2. Распределенная система управления базами данных Oracle 2.1. Структура экземпляров Oracle. рийно процессов. После запуска БД процесс SMON (System Monitor) выполняет автоматическое восстановление экземпляра. Если при последнем выключении БД что-либо не было завершено, SMON автоматически запускает незавершенные операции. PMON Process Monitor (Монитор процессов) выполняет автоматическую уборку после внезапно прекратившихся или завершившихся аварийно процессов. Эта уборка включает удаление сеанса, блокировок, которые были им установлены, непринятых транзакций, освобождение ресурсов глобальной системной области, выделенных этому процессу. Фоновые процессы SMON и PMON должны быть непременно пущены при запуске системы. В противном случае система функционировать не будет. Процесс DBWR (DataBase Writer) отвечает за перенос обновленных блоков, занесенных в dirty-cписок из кэш-буфера данных в файлы данных. Вместо того, чтобы записывать каждый блок на диск сразу, DBWR ждет, пока не будет выполнено одно из условий, а затем просматривает dirty-cписок и все отмеченные в нем блоки переписывает на диск. Процесс LGWR (Log Writer) четвертый и последний фоновый процесс, запуск которого обязателен для работы СУБД ORACLE. Этот процесс отвечает за перезапись информации из буфера журнала транзакций, который находится в глобальной системной области, в файлы оперативного журнала. ORACLE не считает транзакцию выполненной до тех пор, пока процесс LGWR не перезапишет данные о ней из буфера журнала транзакций в файл. Этот процесс редко служит причиной осложнений в работе. Фоновые процессы-диспетчера Dnnn. Остановимся подробнее на этих процессах. Все процессы сервера могут закрепляться за определенными пользовательскими процессами, либо использоваться несколькими процессами пользователя. В последнем случае они называются разделяемые (shared) процессами или серверами. Для работы с применением разделяемого сервера необходима установка Multi Threaded Server (MTS). При использовании разделяемых процессов, в системе должен существовать как минимум один про-

6 Фоновые процессы Oracle 79 Дополнительный фоновый процесс ARCH (Archiver) цесс диспетчер. Процесс-диспетчер передает запросы пользователей в очередь SGA и возвращает ответы сервера соответствующему процессу пользователя. Фоновый процесс Dnnn, где nnn это число, задаваемое в файле init.ora. Параметр указывает протокол, который будет использован диспетчером и количество процессов. Дополнительный фоновый процесс ARCH (Archiver) отвечает за копирование полностью заполненного оперативного журнала транзакций в архивные файлы журналов транзакций. Во время перезаписи в архив никакой другой процесс не может получить доступ к журналу. Во время копирования в архив система должна находиться в состоянии ожидания. CKPT (Check Point) это дополнительный фоновый процесс, который отвечает за обработку контрольных точек. Необходимость в нем возникает, когда надо снизить нагрузку на LGWR. Процесс RECO (Recovery) отвечает за восстановление незавершенных транзакций в распределенной системе БД. Когда возникает подозрительная транзакция, RECO выполняет свои функции автоматически без вмешательства администратора БД. Процесс SNPn (Snapshot) выполняет автоматические обновления снимков БД и запускает процедуры в соответствии с расписанием, зафиксированным в пакете DBMS_JOB. В файле init.ora задается количество запускаемых процессов SNPn и длительность интервала, в течение которого процесс засыпает прежде чем выполнить задание. Процесс LCKn (Parallel Server Lock) в среде, производящей параллельное обслуживание нескольких экземпляров БД, на LCKn возлагается ответственность за координацию блокировок устанавливаемых разными экземплярами БД. Если в системе нет параллельного обслуживания, то запуск LCKn не нужен. Процессы параллельных запросов (Parallel Query) получили в системе наименование Pnnn. Сервер Oracle запускает и останавливает процессы Pnnn в зависимости от активности работы с БД и настройки опций параллельных запросов. Эти процессы принимают

7 80 Глава 2. Распределенная система управления базами данных Oracle 2.1. Структура экземпляров Oracle. участие в формировании индексов, таблиц и запросов. Количество запускаемых процессов определяется двумя параметрами: PARALLEL_MIN SERVERS и PARALLEL_MAX SERVERS, определяющими, соответственно, минимальное и максимальное количество запускаемых процессов Процессы пользователя и сервера Приложения и утилиты связываются с СУБД посредством процессов пользователя. Каждый процесс пользователя подключается к процессу сервера. Процесс сервера анализирует и выполняет переданные ему операторы SQL и возвращает результат процессу пользователя. Кроме того, процесс сервера считывает блоки данных из файлов данных и размещает их в кэш-буфере данных. Приложения и клиентские части связываются с сервером Oracle посредством процессов пользователя. Каждый процесс пользователя имеет подключение к процессу сервера (рис. 2.1), который может быть либо жестко связан с одним процессом пользователя, либо распределяться между многими. Процесс сервера, анализирует и выполняет переданные ему операторы SQL и возвращает результат процессу пользователя. Так же процесс сервера считывает блоки данных из файла данных и размещает их в кэш-буфере данных. Каждому процессу пользователя выделяется область памяти, которая называется глобальной областью процесса PGA (Process Global Area). Содержимое PGA зависит от режима подключения процесса пользователя к процессу сервера. Если процесс пользователя имеет выделенный процесс сервера, то в PGA размещается информация о текущем сеансе работы пользователя, стек и информация о состоянии курсора. Если же процесс пользователя связан с разделяемым процессом сервера, то информация о текущем сеансе и текущем состоянии курсора хранится в SGA. В общем, это не очень существенно, хотя некоторое увеличение размера SGA все же потребуется. В этом и состоит разница между двумя типами взаимодействия клиента и сервера в БД Oracle.

8 2.2. Основные объекты СУБД ORACLE 81 Таблица, представление, пользователь 2.2. Основные объекты СУБД ORACLE. Oracle поддерживает реляционную модель данных, поэтому, естественно, что к числу основных объектов Oracle относятся: таблица, представление, пользователь. Таблица, представление, пользователь Таблица (TABLE) является базовой структурой реляционной модели. Вся информация в базе данных хранится в таблицах. Таблицы состоят из множества поименованных столбцов или атрибутов. Множество значений столбца определено с помощью ограничений целостности, то есть поддерживается ограниченная концепция домена. Полное имя таблицы в базе данных состоит из имени схемы, в данной реализации совпадающем с именем пользователя, создавшего таблицу, и собственно имени таблицы. Таблица может быть пустой или состоять из одной или более строк значений атрибутов. Строки значений атрибутов таблицы называются также кортежами. Представление (VIEW) это поименованная, динамически поддерживаемая сервером выборка из одной или нескольких таблиц. Оператор SELECT, определяющий выборку, ограничивает видимые пользователем данные. Сервер гарантирует актуальность представления, то есть формирование представления (материализация соответствующего запроса), производится каждый раз при использовании представления. Используя представления, администратор безопасности ограничивает доступную пользователям часть базы данных только теми данными, которые реально необходимы для выполнения его работы. Пользователь (USER) объект, обладающий возможностью создавать и использовать другие объекты ORACLE, а также запрашивать выполнение функций сервера. К числу таких функций относятся организация сессии, изменение состояния сервера и базы данных, запрос на выполнение операторов SQL и др. Для упрощения решения задач идентификации и именования в базе данных ORACLE поддерживает объекты: последовательность и синоним.

9 82 Глава 2. Распределенная система управления базами данных Oracle 2.2. Основные объекты СУБД ORACLE. Последовательность (SEQUENCE) это объект, обеспечивающий генерацию уникальных номеров в условиях многопользовательского асинхронного доступа. Обычно элементы последовательности используются для вставки уникальных идентификационных номеров для элементов таблиц базы данных. Синоним (SYNONYM) это альтернативное имя-псевдоним объекта ORACLE, который позволяет пользователям базы данных иметь доступ к данному объекту. Синоним может быть частным и общим. Общий (public) синоним позволяет всем пользователям базы данных обращаться к соответствующему объекту по альтернативному имени. Для управления эффективностью доступа к данным Oracle поддерживает объекты: индекс, табличная область и кластер. Индекс (INDEX) это объект базы данных, создаваемый для повышения производительности выборки данных. Индекс создается для столбцов таблицы или для представления в пространстве базы данных и обеспечивает более быстрый доступ к данным базы данных за счет хранения прямых ссылок на место расположения строк, содержащих требуемые данные. Табличная область (TABLESPACE) именованная часть базы данных, используемая для распределения памяти для таблиц и индексов. Кластер (CLUSTER) объект, задающий способ совместного хранения данных нескольких таблиц, содержавших информацию, обычно обрабатываемую совместно. Кластеризация столбцов таблиц позволяет уменьшить время выполнения выборки. Строки таблиц, имеющие одинаковое значение в кластеризованных столбцах, хранятся в базе данных специальным образом. Для эффективного управления разграничением доступа к данным Oracle поддерживает объект роль. Роль (ROLE) именованная совокупность привилегий, которые могут быть предоставлены пользователям или другим ролям.

10 2.2. Основные объекты СУБД ORACLE 83 Cнимок и связь базы данных ORACLE поддерживает несколько стандартных или предопределенных ролей. Специфичными для распределенных систем являются объекты ORACLE: снимок и связь базы данных. Cнимок и связь базы данных Снимок (SNAPSHOT) локальная копия таблицы удаленной базы данных, которая используется либо для тиражирования (копирования) всей или части таблицы, либо для тиражирования результата запроса данных из нескольких таблиц. Снимки могут быть модифицируемыми или предназначенными только для чтения. Снимки только для чтения возможно периодически обновлять, отражая изменения основной таблицы. Изменения, сделанные в модифицируемом снимке, распространяются на основную таблицу и другие копии. Связь базы данных (DATABASE LINK) это объект базы данных, который позволяет обратиться к объектам удаленной базы данных. Имя связи базы данных можно рассматривать как ссылку на параметры механизма доступа к удаленной базе данных (имя узла, протокол и т.п.). Использование одного имени упрощает работу с объектами удаленной базы данных. Для программирования алгоритмов обработки данных, реализации механизмов поддержки целостности базы данных Oracle использует объекты: процедура, функция, пакет и триггер. Процедура (PROCEDURE) это поименованный, структурированный набор переменных и операторов SQL и PL/SQL, предназначенный для решения конкретной задачи. Функция (FUNCTION) это поименованный, структурированный набор переменных и операторов SQL и PL/SQL, предназначенный для решения конкретной задачи и возвращающий значение переменной. Пакет (PACKAGE) это поименованный, структурированный набор переменных, процедур и функций, связанных единым функциональным замыслом. Например, ORACLE поставляет пакет DBMS_OUTPUT, в котором собраны процедуры и функции, предназначенные для организации ввода-вывода.

11 84 Глава 2. Распределенная система управления базами данных Oracle 2.3. Язык PL/SQL Триггер (TRIGGER) это хранимая процедура, которая запускается (автоматически выполняется) тогда, когда происходит связанное с триггером событие. Обычно события связаны с выполнением операторов INSERT, UPDATE или DELETE в некоторой таблице Язык PL/SQL Типы данных ORACLE. Существует следующие типы данных в PL/SQL: скалярный (простой) тип; составной тип запись; ссылочный указатель на объект программы; LOB (LOCATORS) графические образы. Скалярные (простые) типы Строковые типы Тип CHARACTER используется для хранения строк фиксированной длины. Синтаксис: CHARACTER[(длина)] CHAR[(длина)] Максимальное значение параметра длина 255 символов. Тип VARCHAR используется для хранения строк переменной длины. Следующие предложения эквивалентны: VARCHAR[(длина)] CHAR VARYING[(длина)] CHARACTER VARYING[(длина)] Если длина строки не указана явно, она полагается равной единице во всех случаях. Максимальное значение параметра длина 2000 символов для всех трех случаев. Пример Str1 CHAR(15) Str2 CHARACTER VarSts1 VARCHAR(15) VarStr2 CHARACTER VARYING(10)

12 Есть тип, характерный только для ORACLE VARCHAR2[(длина)] Типы данных ORACLE 85 Числовые типы С помощью этого типа резервируется необходимое пространство для хранения строк максимальной длины байт, хотя максимальная ширина столбца базы данных типа VARCHAR2 равна 2000 байт. Тип LONG. Для хранения больших строк переменной длины используется тип LONG[(длина)]. Если параметр длина не указан, то предполагается, что у строки длина 2 мегабайта, максимальная длина 2 гигабайта. Числовые типы. Тип INTEGER используется для представления чисел от 2 31 до 2 31 Синтаксис: INTEGER, INT Пример varint INTEGER varint2 INT Тип NUMBER [Только для ORACLE] используется для представления чисел с заданной точностью. Синтаксис: NUMBER[(точность[,масштаб])] Если значение параметра точность не указано явно, оно полагается равным 38. Значение параметра масштаб по умолчанию предполагается равным 0. Значение параметра точность может изменяться от 1 до 38; значение параметра масштаб может изменяться от 84 до 128. Использование отрицательных значений масштаба означает сдвиг десятичной точки в сторону старших разрядов. Например, определение NUMBER(7, 3) означает округление до тысяч. Tипы DECIMAL и NUMERIC полностью эквивалентны типу NUMBER. Синтаксис: DECIMAL[(точность[,масштаб])] DEC[(точность[,масштаб]) NUMERIC[(точность[,масштаб])]

13 86 Глава 2. Распределенная система управления базами данных Oracle 2.3. Язык PL/SQL Пример Varcounter NUMBER Vardec1 DEC Vardec2 DEC(7) Vardec3 DECIMAL(7,3) Varnum NUMERIC Битовые строки Тип RAW [Только для ORACLE] используется для хранения битовых строк переменной длины. Отличие типа RAW от типов CHAR, VARCHAR2 состоит в том, что для типов символьных строк ORACLE (точнее SQL*Net) производит автоматическое преобразование данных при их передаче между клиентом и сервером. Синтаксис: RAW[(длина)] Параметр длина измеряется в байтах. Максимальное значение параметра длина 255 байт. Тип LONG RAW [Только для Oracle] используется для хранения больших битовых строк переменной длины. Синтаксис: LONG RAW[(длина)] Параметр длина измеряется в байтах. Если длина строки не указана явно, она полагается равной 2 мегабайтам. Максимальное значение параметра длина 2 гигабайта символов. Для переменных типа LONG RAW невозможно построение индекса. Пример Bit1 RAW(15) Verylong1 LONG RAW(100000) Типы дата и время Тип DATE [Только для Oracle] используется для хранения даты и времени. Поддерживаются даты с 1 января 4712 г. до н.э. до 31 декабря 4712 г. н.э. Для начального присваивания даты обычно используется функция ТО_DATE('символьная_строка_даты', 'формат_даты')

14 Типы данных ORACLE 87 Метод %TYPE При определении даты без уточнения времени по умолчанию принимается время полуночи. Функция SYSDATE присваивает переменной текущее значение даты и времени. Синтаксис: DATE Пример BIRTHDAY DATE Наличие специального типа для хранения даты и времени позволяет поддерживать специальную арифметику дат и времен. Добавление к переменной типа DATE целого числа означает увеличение даты на соответствующее число дней, а вычитание выполняется как определение более ранней даты. Рассмотрим несколько примеров. Пример SQL>select sysdate from dual; SYSDATE 15-NOV-98 SQL>select sysdate+20 sysd+20 from dual; sysd DEC-98 SQL>select sysdate-20 sysd-20 from dual; sysd OCT-98 Метод %TYPE. Предопределенный метод %TYPE позволяет определить тип переменной, совпадающий с типом атрибута некоторой таблицы, например: V_ENAME EM.ENAME%TYPE; V_MIN_BALANCE EM.BALANCE%TYPE := 10 В этом примере объявляется переменная V_ENAME того же типа, что и поле ENAME в таблице EM, а переменная V_MIN_BALANCE того же типа, что поле BALANCE в таблице EM. Однако для колонок NOT NULL нельзя пользоваться этим методом.

15 88 Глава 2. Распределенная система управления базами данных Oracle 2.3. Язык PL/SQL Составные типы К составным типам относятся: PL/SQL записи; PL/SQL таблицы; таблица записей. Записи Запись это группа родственных данных, каждое из которых имеет имя и тип. PL/SQL запись содержит скаляр, запись или поле из PL/SQL таблицы. Синтаксис команды создания PL/SQL записи: где --Создание типа type_name TYPE type_name is record (field_declaration[, field_declaration]...); --Создание переменной типа type_name identifier type_name; где field_declaration есть: field_name {field_type variable%type table.column%type table%rowtype} [[not null] {:=default} expr] field_name имя поля, field_type его тип, expr начальное значение field_name. Пример Type emp_record_type is record (ename varchar2(10), job varchar2(9), sal number(7,2)); emp_record emp_record_type; Метод %ROWTYPE Предопределенный метод %ROWTYPE может применяться как ко всей таблице, так и к ее отдельным полям (атрибутам). При использовании этого метода с таблицей или представлением объявляется запись той же структуры, что и таблица или представление, при этом поля записи имеют имена и типы полей таблицы или представления.

16 оператора определения таблиц Таблицы 89 Cинтаксис оператора определения таблиц Пример Declare Emp_record emp%rowtype; После такого описания запись EMP_RECORD имеет те же поля, что и запись EMP. Использование %ROWTYPE имеет ряд преимуществ: число и тип колонок базы данных может быть неизвестен; число типов колонок базы данных может меняться; этот атрибут полезен, когда колонка определяется с помощью SELECT утверждения. Если метод %ROWTYPE применяется к отдельными полям (атрибутам), происходит объявление переменной того же типа, что и столбец в таблице, например: dept_record dept%rowtype Таблицы. Cинтаксис Таблица является базовой структурой реляционной модели. Полное имя таблицы в базе данных состоит из имени схемы, как правило, совпадающем с именем пользователя, и имени таблицы. Оператор определения таблиц имеет следующий синтаксис: CREATE TABLE[имя_схемы.]имя таблицы ({ограничение_целостности_таблицы имя_столбца тип_данных_столбца [DEFAULT выражение] [ограничение_целостности_столбца...]},...) [{CLUSTER имя_кластера(имя_столбца[,...]) {PCTFREE целое PCTUSED целое INITRANS целое MAXTRANS целое TABLESPACE имя_табличной_области STORAGE размер памяти {RECOVERABLE UNRECOVERABLE}}...] [PARALLEL возможность_параллельной_обработки] [{ENABLE проверяемые_ограничения_целостности DISABLE игнорируемые_ограничения_целостности}...]

17 90 Глава 2. Распределенная система управления базами данных Oracle 2.3. Язык PL/SQL [AS запрос] [GACHE NOCACHE] Ключевое слово DEFAULT указывает на то, что при вводе данных соответствующему столбцу будет присвоено значение, определенное переменной выражение, если в операторе INSERT не указано явно другое значение столбца. Тип данных выражение должен соответствовать типу данных столбца и выражение не должно содержать ссылок на другие выражения. Ключевые слова PCTFREE, PCTUSED, INITRANS, MAXTRANS, TABLESPACE, STORAGE, RECOVERABLE, UNRECOVERABLE характеризуют пространство, распределяют его при работе с таблицей. Ключевое слово PCTFREE определяет процент пространства блока, который резервируется для модификации таблицы. Допустимые значения от 0 до 99. Значение по умолчанию 10, то есть при заполнении каждого блока 10% пространства остается не использованным. Это пространство используется для записи в него данных при выполнении в дальнейшем модификации строк таблицы. Ключевое слово PCTUSED определяет минимальный процент использования пространства блока, при котором в него вводятся данные, по умолчанию 40, то есть если в блоке занято менее 40% пространства, в него вводятся данные при выполнении операции вставки. Сумма значений параметров PCTFREE и PCTUSED не должна превышать 100. Ключевое слово INITRANS определяет начальное число параллельных транзакций, которые могут выполняться для модификации данных блока. Значение по умолчанию 1. Ключевое слово MAXTRANS определяет максимальное число параллельных транзакций, которые могут выполняться для модификации данных блока. В большинстве случаев явное задание этих параметров не требуется. Ключевое слово TABLESPACE определяет имя табличной области, в которой будет размещена таблица. Если значение параметра не определено, то таблица размещается в табличной области, задан-

18 Таблицы 91 Иимя табличной области (ключевое слово TABLESPACE) ной по умолчанию для пользователя, который является владельцем схемы, содержащей таблицу. Иимя табличной области (ключевое слово TABLESPACE) Ключевое слово STORAGE определяет объем внешней памяти, выделяемый под таблицу. Для больших таблиц целесообразно явно выделять требуемую память, чтобы уменьшить число запросов на динамическое выделение пространства. Ключевые слова RECOVERABLE и UNRECOVERABLE. Для управления записью в журнальный файл контрольной информации используются ключевые слова RECOVERABLE, UNRECOVERABLE. Значение UNRECOVERABLE может быть использовано только с ключевым словом AS подзапрос, при этом операция создания таблицы выполняется быстрее за счет исключения записи управляющей информации в журнал. Но при этом автоматическое восстановление операции создания таблицы в случае сбоя становится невозможным. Ключевое слово CLUSTER указывает привязку столбцов таблицы к кластеру. Обычно столбцы кластера образуют из элементов первичного ключа. Ключевое слово ENABLE указывает на включение ограничений целостности для данной таблицы. Соответствующее ограничение целостности должно быть определено в данном предложении создания таблицы. По умолчанию все ограничения целостности, определенные в предложении, включаются. Ключевое слово DISABLE указывает на выключение ограничений целостности для данной таблицы. Соответствующее ограничение целостности должно быть определено в данном предложении создания таблицы. Ключевое слово AS запрос включает в создаваемую таблицу строки, являющиеся результатом выполнения запроса. Необходима определенная осторожность при использовании вставки строк через подзапрос и определение ограничений целостности в том же предложении. Если результат запроса не соответствует ограничениям це-

19 92 Глава 2. Распределенная система управления базами данных Oracle 2.3. Язык PL/SQL лостности, то Oracle не создает таблицу и возвращает сообщение об ошибке. Ключевое слово CACHE указывает на то, что блоки, выбираемые из таблицы, помечаются в системном кеше, как наиболее используемые. Оно рекомендуется для маленьких таблиц, используемых для преобразования кодов в значения. По умолчанию используется NOCACHE, для которого выбранные блоки помещаются в конец таблицы частот обращений к кешу. Оператором DECLARE можно создать PL/SQL таблицу следующим образом: TYPE type_name IS TABLE OF {column_type variable%type table.column%type}[not null] [index by binary_integer]; identifier type_name; Пример TYPE ename_table_type is table of emp.ename%type index by binary_integer; ename_table ename_table_type; Структура созданной PL/SQL таблицы показана на рис PRIMARY KEY COLUMN 1 Jones 2 Smith BINARY_INTEGER SCALAR Рис Структура PL/SQL таблицы Приведем еще пример создания PL/SQL таблицы. Пример Declare TYPE ename_table_type is table of emp.ename%type

20 функции Таблицы 93 Табличные функции index by binary_integer; TYPE hiredate_table_type is table of date index by binary_integer; ename_table ename_table_type; hiredate_table hiredate_table_type; begin ename_table(1):= Cameron ; hiredate_table(8):=sysdate+7;... end; Следующие функции облегчают работу с таблицами: Табличные EXISTS (N) возвращает TRUE, если n-ый элемент в таблице существует; COUNT возвращает количество элементов в данный момент в PL/SQL таблице; FIRST and LAST возвращает первый и последний (самый маленький или самый большой) индексы в PL/SQL таблице; PRIOR(N) возвращает значение индекса, предшествующего индексу N в PL/SQL таблице; NEXT возвращает значение индекса, следующего за индексом N в PL/SQL таблице; EXTEND(n,i) увеличивает размер таблицы, присоединяет n копий i го элемента PL/SQL таблицы; TRIM(N) удаляет N элементов из конца PL/SQL таблицы; DELETE(N) удаляет N элементов из PL/SQL таблицы. Например, следующим образом можно определить таблицу, каждый элемент которой является записью: Declare TYPE dept_table_type is table of dept%rowtype index by binary_integer; dept_table dept_table_type; --Каждый элемент таблицы является записью Пример Declare type e_table_type is table of emp.ename%type

Лекция 1. Архитектура системы баз данных. Функции администратора системы баз данных в корпоративной информационной системе. Объекты базы данных.

Лекция 1. Архитектура системы баз данных. Функции администратора системы баз данных в корпоративной информационной системе. Объекты базы данных. 1 из 6 Лекция 1. Архитектура системы баз данных. Функции администратора системы баз данных в корпоративной информационной системе. Объекты базы данных. 1.1. Архитектура системы баз данных ANSI/SPARC...1

Подробнее

Микротест - источник ваших знаний

Микротест - источник ваших знаний Курс Oracle: Основы SQL и PL/SQL (Код: MT-SQL/PLSQL) Код: MT-SQL/PLSQL Курс длится 40 академических часов Январь 17 Февраль 17 Март 17 Апрель 17 Май 17 Июнь 17 Июль 17 Август 17 Сентябрь 17 Октябрь 17

Подробнее

Лекция 8. Язык SQL. Язык SQL (Structured Query Language) состоит из 3-х частей.

Лекция 8. Язык SQL. Язык SQL (Structured Query Language) состоит из 3-х частей. Лекция 8 Язык SQL. Язык SQL (Structured Query Language) состоит из 3-х частей. На самом деле в SQL гораздо больше разделов, но эти три самые важные, основные, с которыми вам придётся познакомиться непосредственно,

Подробнее

Базы данных и информационные системы 1.3. Доступ к данным. Использование SQL*plus. Сумы СумГУ,2014

Базы данных и информационные системы 1.3. Доступ к данным. Использование SQL*plus. Сумы СумГУ,2014 Базы данных и информационные системы 1.3 Доступ к данным. Использование SQL*plus 1 Сумы СумГУ,2014 Содержание Основы работы с SQL*plus Запуск Форматирование вывода Запись результатов в файл Просмотр структуры

Подробнее

Базы данных и Информационные системы 9/15 DataManupulationLanguage

Базы данных и Информационные системы 9/15 DataManupulationLanguage Базы данных и Информационные системы 9/15 DataManupulationLanguage Кузиков Б.О. Сумы, СумГУ 2013 Задачи Сегодня мы должны узнать: Как вставить данные в таблицу Как обновить данные в таблице Как удалить

Подробнее

Дж.Боуман, С.Эмерсон, М.Дарновски ПРАКТИЧЕСКОЕ РУКОВОДСТВО ПО SQL Эта книга поможет даже в тех случаях, когда бесполезно самое лучшее руководство

Дж.Боуман, С.Эмерсон, М.Дарновски ПРАКТИЧЕСКОЕ РУКОВОДСТВО ПО SQL Эта книга поможет даже в тех случаях, когда бесполезно самое лучшее руководство Дж.Боуман, С.Эмерсон, М.Дарновски ПРАКТИЧЕСКОЕ РУКОВОДСТВО ПО SQL Эта книга поможет даже в тех случаях, когда бесполезно самое лучшее руководство пользователя. Здесь раскрываются темы, которые часто пропускаются

Подробнее

Лабораторная работа 5. Хранимые процедуры

Лабораторная работа 5. Хранимые процедуры Лабораторная работа 5. Хранимые процедуры Цель работы: научиться создавать хранимые процедуры в среде SQL Server Management Studio. Теоретические сведения Хранимая процедура SQL-запрос, который имеет параметры,

Подробнее

Модели данных. Старший преподаватель Каф. Процессов управления и информационной безопасности Пермского государственного университета Неверов А.В.

Модели данных. Старший преподаватель Каф. Процессов управления и информационной безопасности Пермского государственного университета Неверов А.В. Модели данных Старший преподаватель Каф. Процессов управления и информационной безопасности Пермского государственного университета Неверов А.В. Понятие модели данных Модель данных это абстрактное, самодостаточное,

Подробнее

Procedural Structured Query Language

Procedural Structured Query Language Procedural Structured Query Language Курс «Базы данных» Вадим Цесько Санкт-Петербургский государственный политехнический университет 29 марта 2012 г. Вадим Цесько (СПбГПУ) Procedural Structured Query Language

Подробнее

Базы данных и информационные системы 1.2. Доступ к данным. Использование SQL*plus. Сумы СумГУ,2016

Базы данных и информационные системы 1.2. Доступ к данным. Использование SQL*plus. Сумы СумГУ,2016 Базы данных и информационные системы 1.2 Доступ к данным. Использование SQL*plus 1 Сумы СумГУ,2016 Содержание Основы работы с SQL*plus Запуск Форматирование вывода Запись результатов в файл Просмотр структуры

Подробнее

СМОЛЕНСКОЕ ОБЛАСТНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «ВЯЗЕМСКИЙ ПОЛИТЕХНИЧЕСКИЙ ТЕХНИКУМ»

СМОЛЕНСКОЕ ОБЛАСТНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «ВЯЗЕМСКИЙ ПОЛИТЕХНИЧЕСКИЙ ТЕХНИКУМ» СМОЛЕНСКОЕ ОБЛАСТНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «ВЯЗЕМСКИЙ ПОЛИТЕХНИЧЕСКИЙ ТЕХНИКУМ» ОДОБРЕНО УТВЕРЖДЕНО Протоколом Методического совета

Подробнее

Oracle 12c: введение в SQL 1:

Oracle 12c: введение в SQL 1: Введение в базу данных Oracle 12c Oracle 12c: введение в SQL 1: Обзор основных возможностей БД Oracle 12c Обсуждение основных концепций, а также теоретических и физических аспектов реляционной базы данных

Подробнее

Обратная связь Отзывы, замечания и предложения направляйте по адресу:

Обратная связь Отзывы, замечания и предложения направляйте по адресу: PL/pgSQL Курсоры Авторские права Postgres Professional, 2017 год. Авторы: Егор Рогов, Павел Лузанов Использование материалов курса Некоммерческое использование материалов курса (презентации, демонстрации)

Подробнее

Введение в СУБД. Сабитов Андрей Альбертович р.т Пирогов Сергей Анатольевич

Введение в СУБД. Сабитов Андрей Альбертович р.т Пирогов Сергей Анатольевич Введение в СУБД учебный курс Сабитов Андрей Альбертович sabitov@sabitov.su, р.т. 326 94 81 Пирогов Сергей Анатольевич s.a.pirogov@gmail.com Новосибирский Государственный Университет Физический факультет,

Подробнее

3.1. Структура запросов

3.1. Структура запросов Лекция 3. Язык SQL. Средства манипулирования данными 3.1. Структура запросов Для того, чтобы можно было более или менее точно рассказать про структуру запросов в стандарте SQL/89, необходимо начать со

Подробнее

Базы данных и Информационные системы 4.1/15 Создание и управление таблицами

Базы данных и Информационные системы 4.1/15 Создание и управление таблицами Базы данных и Информационные системы 4.1/15 Создание и управление таблицами Кузиков Б.О. Сумы, СумГУ 2014 Задачи занятия После завершения занятия вы должны уметь и знать следующее: Основные объекты БД

Подробнее

ВВЕДЕНИЕ В VISUAL BASIC FOR APPLICATIONS

ВВЕДЕНИЕ В VISUAL BASIC FOR APPLICATIONS 2 ВВЕДЕНИЕ В VISUAL BASIC FOR APPLICATIONS Информатика 2 семестр План лекции 1. Макросы и язык VBA 2. Объектно-ориентированные аспекты VBA 3. Переменные и типы данных 4. Ветвления 5. Циклы 6. Функции 7.

Подробнее

SLIT-027: PostgreSQL: Разработка SLIT-027: PostgreSQL: Разработка

SLIT-027: PostgreSQL: Разработка SLIT-027: PostgreSQL: Разработка SLIT-027: PostgreSQL: Разработка SLIT-027: PostgreSQL: Разработка Содержание Краткая информация... 2 Обзор... 2 О курсе... 2 Профиль аудитории... 2 По окончании курса... 2 Детальная информация о курсе...

Подробнее

Дополнительная профессиональная программа повышения квалификации. «Основы базы данных (MS SQL Server)»

Дополнительная профессиональная программа повышения квалификации. «Основы базы данных (MS SQL Server)» МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего образования «Саратовский государственный технический университет имени Гагарина

Подробнее

Лекция #7. Базыданных. Михаил Моисеев. Procedural SQL

Лекция #7. Базыданных. Михаил Моисеев. Procedural SQL Лекция #7 Базыданных Михаил Моисеев Procedural SQL Представления Представление именованный SELECT запрос, хранимый в БД. CREATE VIEW [(,...)] AS CREATE VIEW studs

Подробнее

БД и схема БД. В чем разница? Схема структура БД Схема- объект БД

БД и схема БД. В чем разница? Схема структура БД Схема- объект БД Схема базы данных БД и схема БД В чем разница? Схема структура БД Схема- объект БД 2 3 Метаданные Все объекты, определенные в базе данных называются ее схемой или метаданными СУБД сохраняют метаданные

Подробнее

Тема 7. Программирование на языке Паскаль. Основные конструкции. Реализация линейной и разветвляющейся структур.

Тема 7. Программирование на языке Паскаль. Основные конструкции. Реализация линейной и разветвляющейся структур. Тема 7. Программирование на языке Паскаль. Основные конструкции. Реализация линейной и разветвляющейся структур. Общие сведения о языке программирования Паскаль Язык программирования Паскаль (Pascal) является

Подробнее

Введение 15 Для кого предназначена эта книга 16 СУБД, рассмотренные в книге 16 Условные обозначения 17 Ждем ваших отзывов! 18

Введение 15 Для кого предназначена эта книга 16 СУБД, рассмотренные в книге 16 Условные обозначения 17 Ждем ваших отзывов! 18 Содержание Об авторе 13 Введение 15 Для кого предназначена эта книга 16 СУБД, рассмотренные в книге 16 Условные обозначения 17 Ждем ваших отзывов! 18 Урок 1. Основы SQL 19 Терминология баз данных 19 Базы

Подробнее

ПРИЛОЖЕНИЕ 2 КОДЫ ОШИБОК Syntax error RETURN without GOSUB Out of data Illegal fuction call

ПРИЛОЖЕНИЕ 2 КОДЫ ОШИБОК Syntax error RETURN without GOSUB Out of data Illegal fuction call 165 ПРИЛОЖЕНИЕ 2 КОДЫ ОШИБОК В QBasic существуют два основных типа ошибок: ошибки периода компиляции и периода выполнения. Первые это в основном синтаксические ошибки, обнаруженные компилятором, вторые

Подробнее

Содержание. Часть I. Погружение в С++ Глава 1. Введение и настройка среды разработки...20

Содержание. Часть I. Погружение в С++ Глава 1. Введение и настройка среды разработки...20 Содержание Часть I. Погружение в С++ Глава 1. Введение и настройка среды разработки...20 Что такое язык программирования?...20 В чем различие между C и C++?.........................................21 Обязательно

Подробнее

1. Напишите запрос для вывода идентификатора фильма, его наименования, года выхода и рейтинга всех строк таблицы film.

1. Напишите запрос для вывода идентификатора фильма, его наименования, года выхода и рейтинга всех строк таблицы film. Домашнее задание 1 1. Напишите запрос для вывода идентификатора фильма, его наименования, года выхода и рейтинга всех строк таблицы film. 2. Напишите запрос, позволяющий вывести все строки таблицы city,

Подробнее

ЛЕКЦИЯ 5. УСЛОВНЫЕ ОПЕРАТОРЫ (ОПЕРАТОРЫ ВЕТВЛЕНИЯ)

ЛЕКЦИЯ 5. УСЛОВНЫЕ ОПЕРАТОРЫ (ОПЕРАТОРЫ ВЕТВЛЕНИЯ) ЛЕКЦИЯ 5. УСЛОВНЫЕ ОПЕРАТОРЫ (ОПЕРАТОРЫ ВЕТВЛЕНИЯ) Логические операции... 1 Операции сравнения... 3 Приоритет операций... 5 Инструкция if - else... 5 Синтаксис инструкции if:... 5 Тернарный оператор?:...

Подробнее

Простейшие конструкции языка SQL

Простейшие конструкции языка SQL Простейшие конструкции языка SQL Дмитрий Барашев 13 сентября 2016 г. Computer Science Center Этот материал распространяется под лицензией Creative Commons Attribution - Share Alike 3.0 http://creativecommons.org/licenses/by-sa/3.0/us/deed.ru

Подробнее

Создание хранимых процедур

Создание хранимых процедур Лабораторная работа 4 Цель работы: Создание хранимых процедур 1. Работа в среде Visual Studio.Net 2. Работа с языком Transact-SQL 3. Написание процедур с переменными параметрами Хранимые процедуры позволяют

Подробнее

Центр программирования «ИнитГраф» Страница 1

Центр программирования «ИнитГраф» Страница 1 ПРОГРАММА ПОВЫШЕНИЯ КВАЛИФИКАЦИИ PHP ПРОГРАММИСТ Модуль 1. PHP программирование - уровень 1 Занятие 1-2. Сервер Apache. Установка PHP Как работает HTML Как работает PHP Установка сервера Apache Служба

Подробнее

Лекция 6. Всё, что вы хотели знать про SQL, но боялись спросить

Лекция 6. Всё, что вы хотели знать про SQL, но боялись спросить Лекция 6. Всё, что вы хотели знать про SQL, но боялись спросить Что это? SQL (Structured Query Language, язык структурированных запросов) язык запросов к базам данных. Базы данных нужны для того, чтобы

Подробнее

Лекции Лекция 1. Лекция 2. Лекция 3. Лекция 4. Лекция 5. Лекция 6. Лекция 7. Лекция 8. Лекция 9. Лекция 10. Лекция 11. Лекция 12. Лекция 13.

Лекции Лекция 1. Лекция 2. Лекция 3. Лекция 4. Лекция 5. Лекция 6. Лекция 7. Лекция 8. Лекция 9. Лекция 10. Лекция 11. Лекция 12. Лекция 13. Лекции Лекция 1. Диалект SQL фирмы Oracle............................ 11 Лекция 2. Инструменты для работы с данными и демонстрационный пример.............................................. 32 Лекция 3.

Подробнее

Oracle Database Change Notification

<Insert Picture Here> Oracle Database Change Notification Oracle Database Change Notification Игорь Мельников старший консультант План Слежение за изменениями в БД Обработка событий изменения данных в БД Поддержка в Oracle Provider for ADO

Подробнее

MICROSOFT ACCESS: СВЯЗИ, ВЫЧИСЛЯЕМЫЕ ПОЛЯ, СОЗДАНИЕ КНОПОЧНОЙ ФОРМЫ БД

MICROSOFT ACCESS: СВЯЗИ, ВЫЧИСЛЯЕМЫЕ ПОЛЯ, СОЗДАНИЕ КНОПОЧНОЙ ФОРМЫ БД MICROSOFT ACCESS: СВЯЗИ, ВЫЧИСЛЯЕМЫЕ ПОЛЯ, СОЗДАНИЕ КНОПОЧНОЙ ФОРМЫ БД I. СВЯЗИ ТАБЛИЦ Современные базы данных обычно состоят из многих таблиц, связанных между собой. Одной из целей создания хорошей структуры

Подробнее

MS SQL 2011 (Denali) With Result Set

MS SQL 2011 (Denali) With Result Set 1 Violet Tape MS SQL 2011 With Result Set MS SQL 2011 Denali With Result Set Модификация возвращаемого набора данных NEW В оригинальном звучании и в жизни эта возможность звучит как With Result Set. Эта

Подробнее

Организация распределенного каталога

Организация распределенного каталога Организация распределенного каталога 1 Глобальный каталог (ССД) Некоторые варианты хранения глоюального системного каталога: 1. Централизованный каталог. Весь каталог хранится в одном месте, т.е. на центральном

Подробнее

Подсистема управления процессами и вычислениями ОГЛАВЛЕНИЕ

Подсистема управления процессами и вычислениями ОГЛАВЛЕНИЕ Приложение 4 Подсистема управления процессами и вычислениями ОГЛАВЛЕНИЕ 1. Общие сведения... 2 2. Моделирование состояний и рабочих процессов... 2 2.1. Управление списком групп состояний... 2 2.2. Создание

Подробнее

ЛАБОРАТОРНАЯ РАБОТ 3. ВЫПОЛНЕНИЕ ЗАПРОСОВ К БАЗЕ ДАННЫХ

ЛАБОРАТОРНАЯ РАБОТ 3. ВЫПОЛНЕНИЕ ЗАПРОСОВ К БАЗЕ ДАННЫХ ЛАБОРАТОРНАЯ РАБОТ 3. ВЫПОЛНЕНИЕ ЗАПРОСОВ К БАЗЕ ДАННЫХ Цель: получить навыки формирования SQL запросов на добавление, изменение, извлечение и удаление данных на примере созданной согласно варианту базы

Подробнее

Оглавление. Предисловие...3

Оглавление. Предисловие...3 Оглавление Предисловие...3 Ч а с т ь I. Базы данных, СУБД и модели данных Глава 1. Назначение технологии баз данных. Функции и основные компоненты систем управления базами данных..........................................

Подробнее

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ «УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ «УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ

Подробнее

Проектирование баз данных

Проектирование баз данных Базы данных Проектирование баз данных "Сложная система, спроектированная наспех, никогда не работает, и исправить её, чтобы заставить работать, невозможно". Законы Мерфи. 16-й закон системантики Этапы

Подробнее

ООП. С++. Вопросы для проверки и закрепления знаний. 7. Проанализируйте ранее разработанные Вами программы

ООП. С++. Вопросы для проверки и закрепления знаний. 7. Проанализируйте ранее разработанные Вами программы ООП. С++. Вопросы для проверки и закрепления знаний. 1. Проанализируйте ранее разработанные Вами программы и ответьте на вопрос: в каких из них наблюдается слабая связь между структурой данных и функционированием

Подробнее

ОГЛАВЛЕНИЕ УДК ББК c Астахова И. Ф., Мельников В. М., Толстобров А. П., Фертиков В. В., 2007 c ФИЗМАТЛИТ, 2007

ОГЛАВЛЕНИЕ УДК ББК c Астахова И. Ф., Мельников В. М., Толстобров А. П., Фертиков В. В., 2007 c ФИЗМАТЛИТ, 2007 УДК 681.066 ББК 22.18 А с т а х о в а И. Ф., М е л ь н и к о в В. М., Т о л с т о б р о в А. П., Ф е р т и к о в В. В. СУБД: язык SQL в примерах и задачах. М.: ФИЗМАТЛИТ, 2007. 168 c. ISBN Учебное пособие

Подробнее

Базы данных. Оптимизация реляционных запросов

Базы данных. Оптимизация реляционных запросов Базы данных Оптимизация реляционных запросов Оптимизация запросов Оптимизация как написание "оптимальных" запросов. Это задача программиста (или квалифицированного пользователя): она заключается в написании

Подробнее

Общие сведения о Transact-SQL. Лекция 3

Общие сведения о Transact-SQL. Лекция 3 Общие сведения о Transact-SQL Лекция 3 План лекции Типы данных Переменные в Transact-SQL Управляющие конструкции Transact-SQL Функции Transact-SQL Server 2008. Лекция 3 2 Типы данных Server 2008. Лекция

Подробнее

Языки программирования и методы трансляции

Языки программирования и методы трансляции Языки программирования и методы трансляции Имена, связывание, области видимости 1 Время связывания 2 3 Статические области видимости Динамические области видимости Имя, область видимости и связывание Имя

Подробнее

Рекомендации по настройке СУБД ЛИНТЕР для улучшения производительности

Рекомендации по настройке СУБД ЛИНТЕР для улучшения производительности РЕЛЯЦИОННАЯ СУБД ЛИНТЕР БАСТИОН ЛИНТЕР СТАНДАРТ Рекомендации по настройке СУБД ЛИНТЕР для улучшения производительности НАУЧНО-ПРОИЗВОДСТВЕННОЕ ПРЕДПРИЯТИЕ Товарные знаки РЕЛЭКС, ЛИНТЕР являются товарными

Подробнее

Модуль защиты информации от несанкционированного доступа «IRTech Security» Руководство по КСЗ

Модуль защиты информации от несанкционированного доступа «IRTech Security» Руководство по КСЗ Модуль защиты информации от несанкционированного доступа «IRTech Security» Руководство по КСЗ 2 АННОТАЦИЯ Настоящий документ является руководством по комплексу встроенных средств защиты информации (КСЗ)

Подробнее

ТЕХНОЛОГИИ ФИЗИЧЕСКОГО УРОВНЯ ПЕРЕДАЧИ ДАННЫХ Занятие 22 Организация доступа к данным по сети

ТЕХНОЛОГИИ ФИЗИЧЕСКОГО УРОВНЯ ПЕРЕДАЧИ ДАННЫХ Занятие 22 Организация доступа к данным по сети ТЕХНОЛОГИИ ФИЗИЧЕСКОГО УРОВНЯ ПЕРЕДАЧИ ДАННЫХ Занятие 22 Организация доступа к данным по сети 1. Классификация сетей по принципу передачи данных и по типу коммуникационной среды, по способу доступа к данным

Подробнее

Настройте ODBC на ISE 2.3 с базой данных Oracle

Настройте ODBC на ISE 2.3 с базой данных Oracle Настройте ODBC на ISE 2.3 с базой данных Oracle Содержание Введение Предварительные условия Требования Используемые компоненты Настройка Шаг 1. Базовая конфигурация Oracle Шаг 2. Базовая конфигурация ISE

Подробнее

1 Практическое занятие 1. Массивы данных

1 Практическое занятие 1. Массивы данных 1 Практическое занятие 1 Массивы данных Цель работы: ознакомиться с понятием массива данных и методами его обработки. 1. Массивы данных Массив данных совокупность значений, объединенная общим названием.

Подробнее

Язык Си. Реализация списков с помощью цепочек динамических объектов

Язык Си. Реализация списков с помощью цепочек динамических объектов Язык Си. Реализация списков с помощью цепочек динамических объектов А. А. Вылиток В языке Си нет встроенных типов данных и операций для работы со списками. Программируя на языке Паскаль (в котором также

Подробнее

Задание #1 Вопрос: Какие серверы применяются в технологии "клиент-сервер"?

Задание #1 Вопрос: Какие серверы применяются в технологии клиент-сервер? Тест: C:\Documents and Settings\BOG\Мои документы\study\бд\атт\тесты\бд_тест_общий.mtf Тест Задание #1 Какие серверы применяются в технологии "клиент-сервер"? Выберите несколько из 8 вариантов ответа:

Подробнее

ЯЗЫК VBA ОБЗОР ТИПОВ ДАННЫХ VBA

ЯЗЫК VBA ОБЗОР ТИПОВ ДАННЫХ VBA ЯЗЫК VBA Язык VBA является объектно-ориентированным. Это значит, что многие его команды имеют особенный формат. Типичная команда VBA имеет вид: ..< >.

Подробнее

Это означает «получить текущее значение x, прибавить к нему 1 и затем обновить x, присвоив ему новое значение».

Это означает «получить текущее значение x, прибавить к нему 1 и затем обновить x, присвоив ему новое значение». Python for Informatics Автор: Dr. Charles R. Severance Содержание курса: http://pycode.ru/edu/why-python/ Глава 5. Итерации 5.1. Обновление переменной Общим шаблоном в инструкциях присваивания является

Подробнее

«Основы конструкторско-технологической информатики»

«Основы конструкторско-технологической информатики» МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ имени Н.Э. БАУМАНА Рабочая тетрадь для выполнения лабораторных работ по курсу : «Основы конструкторско-технологической информатики» МГТУ имени Н.Э. Баумана

Подробнее

12cISQL: Oracle Database 12c: Введение в SQL 12cISQL: Oracle Database 12c: Introduction to SQL

12cISQL: Oracle Database 12c: Введение в SQL 12cISQL: Oracle Database 12c: Introduction to SQL 12cISQL: Oracle Database 12c: Введение в SQL 12cISQL: Oracle Database 12c: Introduction to SQL Содержание Краткая информация... 2 Обзор... 2 О курсе... 2 Профиль аудитории... 2 По окончании курса... 2

Подробнее

Ключевые слова языка С#

Ключевые слова языка С# 1 abstract, см. также 11, 55 2 as, см. также 37 Ключевые слова языка С# Модификатор abstract используется при объявлении класса, метода или свойства. Использование модификатора abstract в объявлении класса

Подробнее

Oracle Database 11g: Введение в SQL.

Oracle Database 11g: Введение в SQL. Продолжительность обучения 40 часов. Oracle Database 11g: Введение в SQL. Для успешного усвоения материала курса, слушатель должен обладать следующими знаниями и умениями: Общее представление о реляционной

Подробнее

Содержание ЧАСТЬ I. ОБЗОР SQL 27. Глава 1. Введение 29. Об авторах 21 О техническом редакторе 21 Благодарности 22 Введение 23

Содержание ЧАСТЬ I. ОБЗОР SQL 27. Глава 1. Введение 29. Об авторах 21 О техническом редакторе 21 Благодарности 22 Введение 23 Содержание Об авторах 21 О техническом редакторе 21 Благодарности 22 Введение 23 Как организована книга 24 Соглашения, принятые в книге 25 Для кого предназначена эта книга 25 ЧАСТЬ I. ОБЗОР SQL 27 Глава

Подробнее

CRLS. Руководство администратора. (Система управления доступом к данным)

CRLS. Руководство администратора. (Система управления доступом к данным) 2011 CRLS (Система управления доступом к данным) Система CRLS предназначена для осуществления политики разграничения доступа к информации на уровне записей и ячеек защищаемых таблиц, хранящихся в базе

Подробнее

➀ Информационные системы и банки данных.

➀ Информационные системы и банки данных. ➀ Информационные системы и банки данных. Важнейшим условием обеспечения эффективного функционирования любой организации является наличие развитой информационной системы. Информационная система это система,

Подробнее

41. Основы проектирования баз данных. Методы построения СУБД. SQL, примеры реализации. Основы современных баз данных.

41. Основы проектирования баз данных. Методы построения СУБД. SQL, примеры реализации. Основы современных баз данных. Братчиков И.Л. 41. Основы проектирования баз данных. Методы построения СУБД. SQL, примеры реализации. Основы современных баз данных. 1. Основные определения. Терминология. В литературе можно встретить

Подробнее

Операционные системы. Реализация файловой системы

Операционные системы. Реализация файловой системы Операционные системы Лекция 12 Реализация файловой системы 12.1 Структура файловой системы Возможная структура файловой системы Все что до "Загрузочного блока" и включая его одинаково у всех ОС. Дальше

Подробнее

ПЕРЕМЕННЫЕ И КОНСТАНТЫ

ПЕРЕМЕННЫЕ И КОНСТАНТЫ ПЕРЕМЕННЫЕ И КОНСТАНТЫ Переменные Основной способ сохранения информации в ходе выполнения программы PHP состоит в использовании переменных; этот способ предусматривает выбор некоторого имени переменной

Подробнее

Лабораторная работа 2 Триггеры в распределённой базе данных. Цель работы. Обеспечение целостности данных средствами SQL

Лабораторная работа 2 Триггеры в распределённой базе данных. Цель работы. Обеспечение целостности данных средствами SQL Лабораторная работа 2 Триггеры в распределённой базе данных Получить навыки обеспечения целостности распределѐнной базы данных с помощью триггеров. Цель работы Обеспечение целостности данных средствами

Подробнее

1.1. Основы работы с базами данных Базы данных и системы управления базами данных. Модели данных

1.1. Основы работы с базами данных Базы данных и системы управления базами данных. Модели данных 1.1. Основы работы с базами данных 1.1.1. Базы данных и системы управления базами данных. Модели данных База данных (БД) это именованная совокупность структурированных данных, относящихся к определенной

Подробнее

Одной из важнейших характеристик PL/SQL является тесная интеграция с базой данных Oracle в отношении как изменения данных в таблицах, так и выборки

Одной из важнейших характеристик PL/SQL является тесная интеграция с базой данных Oracle в отношении как изменения данных в таблицах, так и выборки 15Выборка данных Одной из важнейших характеристик PL/SQL является тесная интеграция с базой данных Oracle в отношении как изменения данных в таблицах, так и выборки данных из таблиц. В этой главе рассматриваются

Подробнее

3. К основным функциям CУБД не относится A. определение данных *B. хранение данных C. обработка данных D. управление данными

3. К основным функциям CУБД не относится A. определение данных *B. хранение данных C. обработка данных D. управление данными @БД, CУБД 1. Структура данных, для которой характерна подчиненность объектов нижнего уровня объектам верхнего уровня, называется A. табличной B. реляционной *C. иерархической D. сетевой 2. Отличительная

Подробнее

" т. [ 4-е издание 1 L 1. Освой самостоятельно SQL

 т. [ 4-е издание 1 L 1. Освой самостоятельно SQL Освой самостоятельно SQL Г " т [ 4-е издание 1 L 1 Оглавление Введение IS УРОК 1. Основы SQL 19 УРОК 2. Извлечение данных из таблиц 27 УРОК 3. Сортировка полученных данных 39 УРОК 4. Ф ильтрация данных

Подробнее

Программирование в Matlab

Программирование в Matlab Программирование в Matlab Типы программных файлов Программный код Matlab размещают в файлах с расширением «m» (m-файлах) m-файлы бывают двух видов: скрипты (scripts) функции (functions) 2 Скрипты Представляют

Подробнее

Владимир Кириллов Геннадий Громов

Владимир Кириллов Геннадий Громов Владимир Кириллов Геннадий Громов Санкт-Петербург «БХВ-Петербург» 2009 УДК 681.3.06 ББК 32.973.26-018.2 К43 Кириллов, В. В. К43 Введение в реляционные базы данных / В. В. Кириллов, Г. Ю. Громов. СПб.:

Подробнее

Тема 5. Структура программы, выражения, операции, операторы

Тема 5. Структура программы, выражения, операции, операторы Тема 5. Структура программы, выражения, операции, операторы 5.1. Структура программы. Программы в среде разработки Delphi строятся на принципах модульной компоновки. Модуль это автономно компилируемая

Подробнее

ОСОБЕННОСТЬ 1. ОЧИСТКА ЗНАЧЕНИЙ В КОЛОНКАХ ТАБЛИЦЫ ФОРМЫ

ОСОБЕННОСТЬ 1. ОЧИСТКА ЗНАЧЕНИЙ В КОЛОНКАХ ТАБЛИЦЫ ФОРМЫ ОСОБЕННОСТИ ПЛАТФОРМЫ "1С:ПРЕДПРИЯТИЕ 8.2" В платформе "1С:Предприятие 8.2" есть ряд неочевидных особенностей, о которых лучше знать заранее, чем внезапно натолкнуться в реальной практике. Обратите внимание,

Подробнее

Архитектура PostgreSQL

Архитектура PostgreSQL Архитектура PostgreSQL Темы Взаимодействие процессов Структуры памяти Подключение клиентов и выполнение запросов Механизмы обеспечения транзакционности Процессы записи журналов, записи буферов, выполнения

Подробнее

Язык SQL. SEQUEL (Structured English Query Language, структурированный английский язык для запросов)

Язык SQL. SEQUEL (Structured English Query Language, структурированный английский язык для запросов) Язык SQL Язык SQL SEQUEL (Structured English Query Language, структурированный английский язык для запросов) SQL (Structured Query Language, структурированный язык запросов) 2 Стандарты языка SQL 1986

Подробнее

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД «ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ»

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД «ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ» МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ДЕРЖАВНИЙ ВИЩИЙ НАВЧАЛЬНИЙ ЗАКЛАД «ЗАПОРІЗЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ» Спеціальність 6.040302 Інформатика Дисципліна «Програмування» Підсумкова модульна контрольна

Подробнее

Процедуры, функции и параметры

Процедуры, функции и параметры 17 Процедуры, функции и параметры В предыдущих частях книги подробно рассматривались основные компоненты и конструкции языка PL/SQL: курсоры, исключения, циклы, переменные и т. д. Однако для создания хорошо

Подробнее

Последовательные операторы VHDL-описания

Последовательные операторы VHDL-описания Последовательные операторы VHDL-описания В языке VHDL последовательные операторы (sequential statement) подобны операторам языков высокого уровня. Последовательные операторы называют также операторами

Подробнее

Администрирование в информационных системах. Практическое занятие 2. Системные и пользовательские БД

Администрирование в информационных системах. Практическое занятие 2. Системные и пользовательские БД Администрирование в информационных системах Практическое занятие 2. Системные и пользовательские БД На физическом уровне каждая БД SQL Server хранится как минимум в двух файлах: Файл данных (data file)

Подробнее

И.С. Задворьев. Язык PL/SQL. учебно-методическое пособие УК 3800

И.С. Задворьев. Язык PL/SQL. учебно-методическое пособие УК 3800 И.С. Задворьев Язык PL/SQL учебно-методическое пособие УК 3800 Москва 2017 2 Задворьев И.С. Язык PL/SQL. Учебнометодическое пособие. М., 2017. 188 с. Автор: Задворьев И.С., кандидат технических наук. В

Подробнее

Управление правами доступа

Управление правами доступа Глава 11 Управление правами доступа У базы данных может быть несколько пользователей с различными правами доступа к ее объектам. Так, одним пользователям разрешено только просматривать некоторые таблицы,

Подробнее

ПРОГРАММА. (название программы) по программе профессиональной переподготовки специалистов «Разработка и администрирование баз данных»

ПРОГРАММА. (название программы) по программе профессиональной переподготовки специалистов «Разработка и администрирование баз данных» ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» «УТВЕРЖДАЮ» Проректор по учебно-методической

Подробнее

БАЗЫ ДАННЫХ (БД). СИСТЕМЫ УПРАВЛЕНИЯ БД

БАЗЫ ДАННЫХ (БД). СИСТЕМЫ УПРАВЛЕНИЯ БД БАЗЫ ДАННЫХ (БД). СИСТЕМЫ УПРАВЛЕНИЯ БД Общие положения Цель любой информационной системы - обработка данных об объектах реального мира. В широком смысле слова база данных - это совокупность сведений о

Подробнее

Рекомендации по установке и настройке сервера БД ORACLE НИЦ CALS-технологий «Прикладная логистика»

Рекомендации по установке и настройке сервера БД ORACLE НИЦ CALS-технологий «Прикладная логистика» PDM STEP Suite Рекомендации по установке и настройке сервера БД ORACLE 8.1.7 НИЦ CALS-технологий «Прикладная логистика» 1. Содержание 1. Содержание...2 2. Установка...2 3. Создание и настройка БД...3 4.

Подробнее

Об авторе 14 Благодарности 16 Введение 17. àñòü I. Èíñòàëëÿöèÿ 23. Глава 1. Введение в базы данных 25. Глава 2. Техническое описание MySQL 35

Об авторе 14 Благодарности 16 Введение 17. àñòü I. Èíñòàëëÿöèÿ 23. Глава 1. Введение в базы данных 25. Глава 2. Техническое описание MySQL 35 6 Ñîäåðæàíèå Ñîäåðæàíèå Об авторе 14 Благодарности 16 Введение 17 àñòü I. Èíñòàëëÿöèÿ 23 Глава 1. Введение в базы данных 25 Общая картина... 25... и небольшие базы данных 28 История и развитие 28 Возможности

Подробнее

4.13. Строки. 10 символов char string[11]; "строка в кавычках" Строковая константа - char str[ ] = Counted by compiler! ;

4.13. Строки. 10 символов char string[11]; строка в кавычках Строковая константа - char str[ ] = Counted by compiler! ; -одномерные массивы типа char, заканчивающийся нулевым байтом - '\0 или '\x0 10 символов char string[11]; 4.13. Строки Строковая константа - "строка в кавычках" добавляется '\0 char str[ ] = Counted by

Подробнее

Метаданные теста. 1 База данных (БД) это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих...

Метаданные теста. 1 База данных (БД) это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих... Метаданные теста Автор теста: Неверова Елена Григорьевна, старший преподаватель кафедры «ПИ» Название курса: Базы данных в информационных системах Предназначено для студентов специальности: очное отделение

Подробнее

Распределенные базы данных. Введение

Распределенные базы данных. Введение Распределенные базы данных Введение Основная литература: Список литературы Коннолли Т., Бегг К. Базы данных: проектирование, реализация, сопровождение. Теория и практика, 3-е изд. : Пер. с англ. : Уч.

Подробнее

Лекция 2. Синтаксис языка PHP

Лекция 2. Синтаксис языка PHP Лекция 2. Синтаксис языка PHP PHP и HTML-текст Начав писать PHP-код, вы будете работать с самыми обычными текстовыми файлами, содержащими код PHP и HTML. HTML это простой язык разметки, позволяющий определить,

Подробнее

Базы данных. Язык запросов SQL. Введение

Базы данных. Язык запросов SQL. Введение Базы данных Язык запросов SQL. Введение SQL Structured Query Laguage SQL это структурированный язык запросов к реляционным базам данных (БД). SQL декларативный язык, основанный на операциях реляционной

Подробнее

Основные правила записи выражений. Построение формул

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

Подробнее

Глава 2. Управляющие операторы языка

Глава 2. Управляющие операторы языка Глава 2. Управляющие операторы языка В теории программирования доказано, что программу для решения задачи любой сложности можно составить только из трех структур, называемых следованием, ветвлением и циклом.

Подробнее

Тема 10. Основы технологии баз данных

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

Подробнее

Язык SQL. SEQUEL (Structured English Query Language, структурированный английский язык для запросов)

Язык SQL. SEQUEL (Structured English Query Language, структурированный английский язык для запросов) Язык SQL Язык SQL SEQUEL (Structured English Query Language, структурированный английский язык для запросов) SQL (Structured Query Language, структурированный язык запросов) Стандарты языка SQL 1986 г.

Подробнее

Приложение «Книжный магазин» Взаимодействие клиента с СУБД

Приложение «Книжный магазин» Взаимодействие клиента с СУБД Приложение «Книжный магазин» Взаимодействие клиента с СУБД Авторские права Postgres Professional, 2017 год. Авторы: Егор Рогов, Павел Лузанов Использование материалов курса Некоммерческое использование

Подробнее

Реляционная модель данных. Технологии баз данных. Лекция 4

Реляционная модель данных. Технологии баз данных. Лекция 4 Реляционная модель данных Технологии баз данных. Лекция 4 Семантическое моделирование Семантическое моделирование разработка модели предметной области, представляющей смысл данных этой предметной области.

Подробнее

Оглавление. Введение Логические константы и переменные Операции сравнения Логические операции Логическое выражение...

Оглавление. Введение Логические константы и переменные Операции сравнения Логические операции Логическое выражение... Введение...2 1. Логические константы и переменные...2 2. Операции сравнения...2 3. Логические операции...3 4. Логическое выражение...4 5. Условный оператор...5 6. Функция IIf...7 7. Оператор множественного

Подробнее

ИМПОРТ АНАТОМНО-ТЕРАПЕВТИЧЕСКИ- ХИМИЧЕСКОЙ КЛАССИФИКАЦИИ

ИМПОРТ АНАТОМНО-ТЕРАПЕВТИЧЕСКИ- ХИМИЧЕСКОЙ КЛАССИФИКАЦИИ АО «БАРС ГРУП» ИМПОРТ АНАТОМНО-ТЕРАПЕВТИЧЕСКИ- ХИМИЧЕСКОЙ КЛАССИФИКАЦИИ БАРС.ЗДРАВООХРАНЕНИЕ-МИС РУКОВОДСТВО АДМИНИСТРАТОРА 2015 Версия 1.01 2 СОДЕРЖАНИЕ 1. Введение... 4 2. Создание таблицы импорта АТХ...

Подробнее

Практическая работа 1.

Практическая работа 1. Практическая работа 1. Тема: Технология создания БД в Дельфи: BDE. Цели: 1. Изучить технологию создания БД в Дельфи: BDE. 2. Изучить алгоритм создания БД в Delphi. 3. На практическом примере изучить работу

Подробнее