2. Кодирование
DBDesigner позволяет преобразовывать полученную модель в код на языке SQL, который может быть использован для создания базы данных с помощью других средств, например, с помощью MySQL.
Для получения кода необходимо выбрать в меню File – Export – SQL Create Script. Откроется диалоговое окно, представленное на рисунке:
В основных настройках (General Settings) можно назначить экспортировать в SQL код только выделенные таблицы или экспортировать все таблицы модели, также можно задать упорядочить таблицы по внешним ключам.
- Export selected tables only – кодировать только выбранные таблицы
- Order Tables by Foreign Keys – позволяет изменить порядок кодирования
В настройках SQL кода (SQL Creates Settings) можно настроить параметры связанные с первичными ключами и внешними ключами, а также задать настройки относительно индексов.
- Copy Script to Clipboard. Позволяет скопировать SQL код в буфер обмена;-
- Save Script to file. Позволяет сохранить SQL код в файл. Файл сохраняется в формате *.sql. Открыть его можно и в текстовом редакторе «Блокнот»
Выбрав необходимые параметры, необходимо нажать Save Script to file. Файл с SQL кодом будет сохранен на диске.
CREATE TABLE tarif (
tarif VARCHAR(20) NOT NULL AUTO_INCREMENT,
stoimost INTEGER UNSIGNED NOT NULL,
PRIMARY KEY(tarif)
);
CREATE TABLE user (
nomer_dogovora INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
tarif_tarif VARCHAR(20) NOT NULL,
name VARCHAR(20) NOT NULL,
address VARCHAR(20) NOT NULL,
phone INTEGER UNSIGNED NOT NULL,
computer_name VARCHAR(20) NOT NULL,
nick VARCHAR(20) NOT NULL,
ip_address VARCHAR(20) NOT NULL,
mac_address VARCHAR(20) NOT NULL,
stat BOOL NOT NULL,
tarif VARCHAR(20) NOT NULL,
balance INTEGER UNSIGNED NOT NULL,
date_connect DATE NOT NULL,
otmetki VARCHAR(45) NOT NULL,
PRIMARY KEY(nomer_dogovora, tarif_tarif),
INDEX user_FKIndex1(tarif_tarif)
);
CREATE TABLE zachislenie (
nomer_zachisleniya INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
user_nomer_dogovora INTEGER UNSIGNED NOT NULL,
nomer_dogovora INTEGER UNSIGNED NOT NULL,
name VARCHAR(20) NOT NULL,
tarif VARCHAR(20) NOT NULL,
summa INTEGER UNSIGNED NOT NULL,
date DATE NOT NULL,
otmetki VARCHAR(45) NOT NULL,
PRIMARY KEY(nomer_zachisleniya, user_nomer_dogovora),
INDEX zachislenie_FKIndex1(user_nomer_dogovora)
);
DBDesigner позволяет также создавать базу данных на сервере и выполнять с ней различные операции. Это обеспечивается за счет подключения DBDesigner к MySQL серверу, созданию базы данных и установлению синхронизации между базой на сервере и визуальной моделью. Синхронизация – это сравнение визуальной модели и базы данных, находящейся на сервере. В случае внесения изменений в таблицу, изменения связей между таблицами или удаления таблиц в модели, DBDesigner внесет и соответствующие изменения в базу на сервере.
1) Установление соединения с базой данных на сервереДля занесения базы данных, соответствующей полученной модели, на сервер MySQL, необходимо установить соединение с сервером.
- Выполните Database –> Connect to Database.
- В окне Network Hosts выберите MySQL
- В открывшемся списке баз данных, выберите либо существующую базу, либо создать новую, щелкнув два раза по значку «…» и задав имя новой базы.
- Введите название соединения (Connection), имя пользователя (Username) и пароль (Password), если они нужны.
- В центральном окне находится список серверов баз данных, с которыми велась работа и для которых указаны IP-адрес, тип, размещение и название. Так как в данной работе предполагается, что сервер MySQL находиться на локальном компьютере, то все необходимые параметры будут установлены автоматически. Однако при использовании сети, необходимо знать IP-адрес сервера и иметь доступ на работу.
- Нажмите на кнопку Connect, после чего соединение с базой будет установлено.
2) СинхронизацияДля синхронизации модели и базы на сервере необходимо:
- Выбрать в меню Database - Database Synchronisation и установить соединение с нужной базой.
- В диалоговом окне Database Synchronisation задать необходимые параметры:
o Apply changes to Database – вносить изменения модели в базу
o Don't delete exisiting Tables – при использовании этой опции таблицы, удаленные из модели, не будут удалены из базы
o Execute Standard Inserts when Creating New Tables – создавать стандартный запрос на внесение данных в таблицу - Нажать Execute, после чего база данных будет занесена на сервер. Также будет выведен отчет и сообщения об ошибках в модели, если они есть.
Проверка получившегося с помощью клиента MySQL:
4. SQL-запросыDBDesigner также позволяет создавать запросы на языке SQL. Причем код запроса можно либо непосредственно написать, либо использовать готовые шаблоны, в которые необходимо только внести какие-то изменения.
Для работы с запросами необходимо:
- Переключиться в Query Mode, выбрав в меню Display -> Query Mode.
- В меню инструментов слева появятся кнопки, с помощью которых можно выполнить основные запросы.
- Выбрав кнопку (например, SELECT), следует щелкнуть по заголовку таблицы, а затем, не отпуская кнопку мыши, сдвинуть указатель вниз.
- В появившемся меню выбрать нужную операцию.
- Код на языке SQL появиться в нижней части экрана.
SELECT *
FROM user
- Нажав на кнопку Execute SQL Query, в нижней части экрана можно увидеть результат запроса.
SELECT user.Nomer_dogovora, user.name, user.computer_name
FROM user
WHERE user.computer_name Like ‘Ivan%*’
ORDER BY user.Nomer_dogovora;
SELECT zachislenie.nomer_zachisleniya, user.name, user.Nomer_dogovora, tarif.tarif_name
FROM taruf INNER JOIN (user INNER JOIN zachislenie ON user.Nomer_dogovora = zachislenie.nomer_dogovora) ON tarif.tarif_name = zachislenie.tarif
WHERE zachislenie.nomer_zachisleniya Between 1 And 12 AND user.name Like ‘Юзер%’ AND user.Nomer_dogovora<>701 AND tarif.tarif_name Like ‘а%’;
UPDATE tarif
SET stoimost = stoimost*1.5
WHERE stoimost<350;
SELECT MAX(stoimost) AS 'самая максимальная стоимость тарифа'
FROM tarif
DBDesigner предоставляет различные функции для работы с запросами: сохранение кода, внесение изменений в базу и отмена внесенных изменений. Благодаря этим встроенным функциям работа с запросами существенно упрощается.
Кроме того, в программе есть очень удобное средство для внесения данных в таблицу. Щелкнув правой кнопкой мыши по таблице и выбрав в меню Edit Table Data, можно заносить данные в таблицу или изменять их без использования языка SQL.
· DBDesigner “HELP”
· DBDesigner4_manual
· «Базы данных», А.Д.Хомоненко. «Корона принт», 2000 год
0 комментариев