Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Тут можно читать онлайн Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство БХВ-Петербург, год 2006. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
  • Автор:
  • Жанр:
  • Издательство:
    БХВ-Петербург
  • Год:
    2006
  • Город:
    Санкт-Петербург
  • ISBN:
    5-94157-609-9
  • Рейтинг:
    4/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ краткое содержание

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - описание и краткое содержание, автор Хелен Борри, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Рассмотрены вопросы, необходимые разработчику для создания клиент-серверных приложений с использованием СУБД Firebird, явившейся развитием СУБД Borland Interbase 6. Содержится обзор концепций и моделей архитектуры клиент/сервер, а также практические рекомендации по работе с клиентскими библиотеками Firebird. Детально описаны особенности типов данных SQL, язык манипулирования данными (Data Manipulation Language, DML), а также синтаксис и операторы языка определения данных ( Data Definition Language, DDL). Большое внимание уделено описанию транзакций и приведены советы по их использованию при разработке приложений. Описано программирование на стороне клиента и сервера написание триггеров и хранимых процедур, создание и использование событий базы данных, обработка ошибок в коде на сервере и многое другое. Материал сопровождается многочисленными примерами, советами и практическими рекомендациями.

Для разработчиков баз данных

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать онлайн бесплатно полную версию (весь текст целиком)

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать книгу онлайн бесплатно, автор Хелен Борри
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

. ! .

Условие поиска может:

* проверять, что вводимое значение находится в указанном диапазоне;

* проверять, что значение присутствует в списке допустимых значений;

* сравнивать значение с константой, выражением или со значением данных другого столбца из этой же строки.

Замечания по использованию CHECK

Существуют определенные условия использования ограничений CHECK.

* Столбец может иметь только одно ограничение CHECK, хотя его логика может быть представлена как сложное условие поиска - одно ограничение, много условий.

* Ограничение CHECK для столбца, основанного на домене, не может перекрывать наследуемую от домена проверку. Определение столбца может использовать обычное предложение CHECK, чтобы добавить дополнительную логику ограничения в наследуемое ограничение. Оно будет соединено с наследуемым ограничением конъюнкцией (логической операцией И).

* Ограничение CHECK не может ссылаться на домен. Синтаксис ограничения CHECK:

CHECK (<���условие-поиска>);

<���условие-поиска> =

{ | {<���выбор-одного>) }

| [NOT] BETWEEN AND

| [NOT] LIKE [ESCAPE ]

| [NOT] IN ( [, ...] | <���список-выбора>)

| IS [NOT] NULL

| { [NOT] { = | < | > } |>=|<=}

{ ALL | SOME | ANY }(<���список-выбора>)

| EXISTS (<���выражение-выбора>)

| SINGULAR (<���выражение-выбора>)

| [NOT] CONTAINING

| [NOT] STARTING [WITH]

| (<���условие-поиска>)

| NOT <���условие-поиска>

| <���условие-поиска> OR <���условие-поиска>

l <���условие-поиска> AND <���условие-поиска>

Диапазон возможностей при определении ограничений CHECK действительно весьма широк - теоретически в нем может быть использовано почти любое условие поиска. Для разработчика важно выбрать разумные и безопасные условия, т. к. они действуют для каждой операции INSERT и UPDATE для таблицы.

В части V данной книги описывается синтаксис установки различных стилей условия поиска.

Пример. Следующее ограничение проверяет значения двух столбцов для гарантии, что одно больше другого. Хотя оно также предполагает условия NOT NULL для обоих столбцов - проверка будет ошибочной, если хотя бы один столбец будет иметь пустое значение, - оно не устанавливает ограничение NOT NULL для столбца:

CHECK (COL_1 > COL_2);

Проверка даст ошибку, если арифметическая проверка будет ошибочной или если любой из столбцов COL_1 или COL_2 имеет значение NULL. Следующая операция будет успешной:

INSERT INTO TABLE_1 (COL_1, COL_2) VALUES (6,5);

Ограничения UNIQUE

Ограничение UNIQUE, как и ограничение первичного ключа, гарантирует, что никакие две строки не будут иметь то же значение указанного столбца или группы столбцов. Вы можете объявить для таблицы более одного ограничения UNIQUE, но оно не может использовать тот же набор столбцов, который был использован для ограничения PRIMARY KEY или другого UNIQUE.

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

В Firebird 1.0.x атрибут NOT NULL должен быть применен для всех столбцов, с которыми оперирует ограничение UNIQUE.

Как и ограничение PRIMARY KEY, UNIQUE создает свой постоянный уникальный индекс для поддержания его правил. Правила именования ограничения и индекса соответствует тем же правилам поведения, применимым к другим ключам. Следующий пример isql иллюстрирует именование в Firebird 1.5:

SQL> CREATE TABLE TEST_UQ (

CON> ID BIGINT NOT NULL,

CON> DATA VARCHAR(10),

CON> DATA_ID BIGINT NOT NULL);

SQL> COMMIT;

SQL> ALTER TABLE TEST_UQ

CON>ADD CONSTRAINT PK_TEST_UQ PRIMARY KEY(ID),

CQN>ADD CONSTRAINT UQ1_DATA UNIQUE(DATA_ID) ;

SQL> COMMIT;

SQL> SHOW TABLE TEST_UQ;

ID BIGINT NOT NULL

DATA VARCHAR(10) NULLABLE

DATA_ID BIGINT NOT NULL

CONSTRAINT PK_TEST_UQ:

Primary key (ID)

CONSTRAINT UQ1_DATA:

Unique key (DATA_ID)

SQL> SHOW INDICES TEST_UQ;

PK_TEST_UQ UNIQUE INDEX ON TEST_UQ(ID)

UQ1_DATA UNIQUE INDEX ON TEST_UQ(DATA_ID)

SQL>

! ! !

ПРИМЕЧАНИЕ. Запомните следующее заклинание: индекс не является ключом. Вы можете создавать уникальные индексы (подробности см. в главе 18), но создание уникального индекса не создает уникального ключа. Если существует вероятность, что вам может понадобиться для использования уникально индексированный столбец или структура в качестве ключа, создайте вместо индекса ограничение.

. ! .

Использование внешних файлов в качестве таблиц

В текущем жаргоне SQL Firebird поддерживает внешние виртуальные таблицы (External Virtual Table, EVT). Файлы файловой системы в текстовом формате ASCII могут быть использованы в Firebird для чтения и манипулирования, как если бы они были таблицами, хотя и со значительными ограничениями, связанными с тем фактом, что они не являются внутренними объектами базы данных. Другие приложения могут обмениваться данными с базой данных Firebird, независимо от любых специальных механизмов преобразования. Внешние таблицы могут быть конвертированы во внутренние.

Предложение EXTERNAL FILE позволяет определять таблицы со структурой строки, отображаемой в "поля" фиксированной длины в "записях" (обычно разделенных символом перевода строки), которые размещаются во внешнем файле. Firebird может выбирать данные из файла и помещать данные в файл, как если бы это было обычной таблицей. При этом он не может выполнять операции изменения и удаления с внешними таблицами.

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

Синтаксис для CREATE TABLE...EXTERNAL FILE

Оператор CREATE TABLE для внешнего файла определяет как спецификацию внешнего файла (размещение и имя файла), так и характеристики столбцов Firebird, представляющих структуру хранимых записей.

CREATE TABLE внешняя-таблица

EXTERNAL FILE спецификация-файла (определение-столбца [, определение-столбца, ...], [разделитель-строки-1 CHAR(l) [,разделитель-строки-2 CHAR(l)]]);

спецификация-файла - полный путь и имя файла для внешнего файла данных. Файл не должен существовать во время создания таблицы. При этом в Firebird 1.5 и выше оператор CREATE будет неудачным, если спецификация ссылается на несконфигуриро- ванное размещение внешнего файла. См. раздел "Организация защиты внешних файлов" далее в этой главе и разд. "Конфигурирование внешних размещений" главы 36.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Хелен Борри читать все книги автора по порядку

Хелен Борри - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ отзывы


Отзывы читателей о книге Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ, автор: Хелен Борри. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x