Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Интернет для Delphi-программиста" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Бесплатный курс уроков по Delphi
Бесплатный курс уроков по Delphi
http://znania.al.ru - Электронные учебники для программистов, базы данных... www.di-givoder-ul.narod.ru - Игры и карты, программы, сочинения, доклады, создание сайтов... |
Урок 17. Создание таблиц с помощью Database Desktop.
Содержание
-
Обзор
-
Утилита Database Desktop
-
Заключение
1) Обзор
На данном уроке я расскажу, как создавать таблицы базы данных с помощью утилиты Database Desktop, входящей в поставку Delphi. Хотя для создания таблиц можно использовать различные средства (SQL - компонент TQuery и WISQL, компонент TTable), применение этой утилиты позволяет создавать таблицы в интерактивном режиме и сразу же просмотреть их содержимое - и все это для большого числа форматов. Это особенно удобно для локальных баз данных, в частности Paradox и dBase.
2) Утилита Database Desktop
Database Desktop - это утилита, во многом похожая на Paradox, которая поставляется вместе с Delphi для интерактивной работы с таблицами различных форматов локальных баз данных - Paradox и dBase, а также SQL-серверных баз данных InterBase, Oracle, Informix, Sybase (с использованием SQL Links). Исполняемый файл утилиты называется DBD.EXE, расположен он, как правило, в директории, называемом DBD (при установке по умолчанию). Для запуска Database Desktop просто дважды щелкните по
ее иконке.
Рис. 1: Выпадающий список в диалоговом окне Table Type позволяет выбрать тип создаваемой таблицы
После старта Database Desktop выберите команду меню File|New|Table для создания новой таблицы. Перед Вами появится диалоговое окно выбора типа таблицы, как показано на рис.1. Вы можете выбрать любой формат из предложенного, включая различные версии одного и того же формата.
После выбора типа таблицы Database Desktop представит Вам диалоговое окно, специфичное для каждого формата, в котором Вы сможете определить поля таблицы и их тип, как показано на рис.2.
Рис. 2: Database Desktop позволяет задать имена и типы полей в таблице
Имя поля в таблице формата Paradox представляет собой строку, написание которой подчиняется следующим правилам:
· Имя должно быть не длиннее 25 символов.
· Имя не должно начинаться с пробела, однако может содержать пробелы. Однако, если Вы предполагаете в будущем переносить базу данных в другие форматы, разумнее будет избегать включения пробелов в название поля. Фактически, в целях переносимости лучше ограничиться девятью символами в названии поля, не включая в него пробелы.
· Имя не должно содержать квадратные, круглые или фигурные скобки [], () или {}, тире, а также комбинацию символов
“тире” и “больше” (->).
· Имя не должно быть только символом #, хотя этот символ может присутствовать в имени среди других символов. Хотя Paradox поддерживает точку (.) в названии поля, лучше ее избегать, поскольку точка зарезервирована в Delphi для других целей.
Имя поля в таблице формата dBase представляет собой строку, написание которой подчиняется правилам, отличным от Paradox:
· Имя должно быть не длиннее 10 символов.
· Пробелы в имени недопустимы.
Таким образом, Вы видите, что имена полей в формате dBase подчиняются гораздо более строгим правилам, нежели таковые в формате Paradox. Однако, мы еще раз хотим подчеркнуть, что если перед Вами когда-либо встанут вопросы совместимости, то лучше сразу закладывать эту совместимость - давать полям имена, подчиняющиеся более строгим правилам.
Укажем еще правила, которым подчиняется написание имен полей в формате InterBase.
· Имя должно быть не длиннее 31 символа.
· Имя должно начинаться с букв A-Z, a-z.
· Имя поля может содержать буквы (A-Z, a-z), цифры, знак $ и символ подчеркивания (_).
· Пробелы в имени недопустимы.
·ebиц запрещается использовать зарезервированные слова InterBase.
Следующий (после выбора имени поля) шаг состоит в задании типа поля. Типы полей очень сильно различаются друг от друга, в зависимости от формата таблицы. Для получения списка типов полей перейдите к столбцу “Type”, а затем нажмите пробел или щелкните правой кнопкой мышки. Приведем списки типов полей, характерные для форматов Paradox, dBase и InterBase.
Итак, поля таблиц формата Paradox могут иметь следующий тип (для ввода типа поля можно набрать только подчеркнутые буквы или цифры):
Табл. A: Типы полей формата Paradox.
Типы полей
|
Описание полей
|
Поля таблиц формата dBase могут иметь следующий тип (для ввода типа поля можно набрать только подчеркнутые буквы или цифры):
Табл. B: Типы полей формата dBase
Типы полей
|
Описание полей
|
Поля таблиц формата InterBase могут иметь следующий тип:
Табл. C: Типы полей формата InterBase
SHORT - числовое поле длиной 2 байта, которое может содержать только целые числа в диапазоне от -32768 до 32767
LONG - числовое поле длиной 4 байта, которое может содержать целые числа в диапазоне от -2147483648 до 2147483648
FLOAT - числовое поле длиной 4 байта, значение
которого может быть положительным и отрицательным. Диапазон чисел - от 3.4*10-38 до 3.4*1038 с 7 значащими цифрами
DOUBLE - числовое поле длиной 8 байт (длина зависит от платформы), значение которого может быть положительным и отрицательным. Диапазон чисел - от 1.7*10-308 до 1.7*10308 с 15 значащими цифрами
CHAR - строка символов фиксированной длины (0-32767 байт), содержащая любые печатаемые символы. Число символов зависит от Character Set, установленного
в InterBase для данного поля или для всей базы данных (например, для символов в кодировке Unicode число символов будет в два раза меньше длины строки)
VARCHAR - строка символов переменной длины (0-32767 байт), содержащая любые печатаемые символы. Число символов также зависит от Character Set, установленного в InterBase для данного поля или для всей базы данных
DATE - поле даты длиной 8 байт, значение
которого может быть от 1 января 100 года до 11 декабря 5941 года (время также содержится)
BLOB - поле, содержащее любую двоичную информацию. Может иметь любую длину. Database Desktop не имеет возможности редактировать поля типа BLOB
ARRAY - поле, содержащее массивы данных. InterBase позволяет определять массивы, имеющие размерность 16. Поле может иметь любую длину. Однако, Database Desktop не имеет
возможности не только редактировать поля типа ARRAY, но и создавать их
TEXT BLOB - подтип BLOB-поля, содержащее только текстовую информацию. Может иметь любую длину. Database Desktop не имеет возможности редактировать поля типа TEXT BLOB
Итак, вы изучили все типы полей, являющиеся “родными” для Delphi.
После этого для таблиц Paradox мы можем определить поля, составляющие первичный ключ, причем все они должны быть в начале записи, а первое поле, входящее в ключ, должно быть первым полем в записи. Для этого достаточно по ней дважды щелкнуть мышкой или нажать любую клавишу.
После создания таблицы, с ней можно связать некоторые свойства, перечень которых зависит от формата таблицы.
Так, для таблиц формата Paradox можно задать:
· Validity Checks (проверка правильности) - относится к полю записи и определяет минимальное и максимальное значение, а также значение по умолчанию. Кроме того, позволяет задать маску ввода
· Table Lookup (таблица для “подсматривания”) - позволяет вводить значение в таблицу, используя уже существующее значение в другой таблице
· Secondary Indexes (вторичные индексы) - позволяют доступаться к данным в порядке, отличном от порядка, задаваемого
первичным ключом
· Referential Integrity (ссылочная целостность) - позволяет задать связи между таблицами и поддерживать эти связи на уровне ядра. Обычно задается после создания всех таблиц в базе данных
· Password Security (парольная защита) - позволяет закрыть таблицу паролем
· Table Language (язык таблицы) - позволяет задать для таблицы языковый драйвер.
В таблицах dBase не существует первичных ключей. Однако, это обстоятельство можно преодолеть путем определения
уникальных (Unique) и поддерживаемых (Maintained) индексов (Indexes). Кроме того, для таблиц dBase можно определить и язык таблицы (Table Language
) - языковый драйвер, управляющий сортировкой и отображением символьных данных.
Определения дополнительных свойств таблиц всех форматов доступны через кнопку “Define” (для таблиц InterBase данная кнопка называется “Define Index...” и позволяет определять лишь только индекс, но не первичный ключ) в правой верхней части окна (группа Table
Properties). Причем, все эти действия можно проделывать не только при создании таблицы, но и тогда, когда она уже существует. Для этого используется команда Table|Restructure Table (для открытой в данный момент таблицы) или Utilities|Restructure (с возможностью выбора таблицы). Однако, если Вы желаете изменить структуру или добавить новые свойства для таблицы, которая в данный момент уже используется другим приложением, Database Desktop откажет Вам в этом, поскольку данная операция требует монопольного доступа
к таблице. Но зато все произведенные в структуре изменения сразу же начинают “работать” - например, если Вы определите ссылочную целостность для пары таблиц, то при попытке вставить в дочернюю таблицу данные, отсутствующие в родительской таблице, в Delphi возникнет исключительное состояние.
В заключение отмечу, еще часто используемую очень полезную возможность Database Desktop. Создавать таблицу любого формата можно не только “с чистого листа”, но и путем копирования структуры уже существующей
таблицы. Для этого достаточно воспользоваться кнопкой “Borrow”, имеющейся в левом нижнем углу окна. Появляющееся диалоговое окно позволит Вам выбрать существующую таблицу и включить/выключить дополнительные опции, совпадающие с уже перечисленными свойствами таблиц. Это наиболее легкий способ создания таблиц.
3) Заключение
Итак, на данном уроке я вас познакомил со штатной утилитой, используемой для интерактивного создания и модификации таблиц различной структуры. И хотя управление таблицами можно осуществлять с помощью различных средств (SQL-скрипт в WISQL, компонент TTable, компонент TQuery), данная утилита позволяет делать это в интерактивном режиме наиболее простым способом.
Автор - Александр Емельянов. Сайт рассылки - http://znania.al.ru
Subscribe.Ru
Поддержка подписчиков Другие рассылки этой тематики Другие рассылки этого автора |
Подписан адрес:
Код этой рассылки: comp.soft.prog.urokidelphi Архив рассылки |
Отписаться
Вебом
Почтой
Вспомнить пароль |
В избранное | ||