русс | укр

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

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

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

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


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

Операторы работы со снимками


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


Для того, чтобы разрешить возможные коллизии и создать у пользователей иллюзию их «единственности», в СУБД HyTech используется механизм «фотографий» (мгновенных снимков) состояния БД.

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

Для каждой открытой таблицы и для каждого пользователя хранится текущий снимок состояния таблицы. Снимок делается автоматически (при первом поиске по таблице) или при явном вызове функции htMakePhoto.

Текущий снимок можно отменить с помощью оператора fix.Операции, закрывающие доступ к таблице (например, close table), также отменяют текущий снимок. Для таблиц, которые включены в транзакцию, механизм снимков отключается. Для временных таблиц механизм снимков также отключается.

Создание снимка не захватывает таблицы в монопольное пользование. Другие пользователи могут продолжать работать с этими же таблицами.

SQL оператор fix table отменяет текущий снимок у указанной таблицы. При очередном поиске по данной таблице будет сделан новый снимок состояния.

Формат:

fix table Имя_таблицы;

Аргументы:

Аргумент Значение
Имя_таблицы Задает имя таблицы, текущий снимок которой надо отменить. Таблица с указанным именем должна существовать.

 

Результат выполнения оператора можно проверить, вызвав SQL-функцию lastsqlerr.

Пример:

drop table TEST;

create table TEST
(
FIELD1 int
);

insert into TEST values (1);

var @i = 0;

while(@i <= 10)
{
fix table TEST;
insert into TEST select * from TEST;
@i = @i + 1;
}



fix all;

select
FIELD1
from
TEST;

Если в примере убрать оператор fix table, то оператор insert select будет вставлять по одной записи. Всего будет добавлено 10 записей. Если же есть предыдущие снимки таблицы TEST, то поведение оператора insert select будет непосредственно зависеть от них.

Если оставить оператор fix table, то перед выполнением поиска insert select будет сделан снимок, в который попадут записи, добавленные в предыдущей итерации. В результате выполнения этой программы в таблице будет 1024 записи.

Аналогично fix table, SQL оператор fix all отменяет текущий снимок у всех таблиц пользователя. При очередном поиске по таблице будет сделан новый снимок состояния.

Формат:

fix all;

Результат выполнения оператора можно проверить, вызвав SQL-функцию lastsqlerr.



<== предыдущая лекция | следующая лекция ==>
Оператор results table | Механизм транзакций и механизм снимков


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


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

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

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


 


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

 
 

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

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