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 внесет и соответствующие изменения в базу на сервере.
Для занесения базы данных, соответствующей полученной модели, на сервер MySQL, необходимо установить соединение с сервером.
- ВыполнитеDatabase –> Connect to Database.
- Вокне Network Hosts выберите MySQL
- В открывшемся списке баз данных, выберите либо существующую базу, либо создать новую, щелкнув два раза по значку «…» и задав имя новой базы.
- Введите название соединения (Connection), имя пользователя (Username) и пароль (Password), если они нужны.
- В центральном окне находится список серверов баз данных, с которыми велась работа и для которых указаны IP-адрес, тип, размещение и название. Так как в данной работе предполагается, что сервер MySQL находиться на локальном компьютере, то все необходимые параметры будут установлены автоматически. Однако при использовании сети, необходимо знать IP-адрес сервера и иметь доступ на работу.
- Нажмите на кнопку Connect, после чего соединение с базой будет установлено.
Для синхронизации модели и базы на сервере необходимо:
- Выбрать в меню Database - DatabaseSynchronisation и установить соединение с нужной базой.
- В диалоговом окне DatabaseSynchronisation задать необходимые параметры:
o ApplychangestoDatabase – вносить изменения модели в базу
o Don'tdeleteexisitingTables – при использовании этой опции таблицы, удаленные из модели, не будут удалены из базы
o ExecuteStandardInsertswhenCreatingNewTables – создавать стандартный запрос на внесение данных в таблицу - Нажать Execute, после чего база данных будет занесена на сервер. Также будет выведен отчет и сообщения об ошибках в модели, если они есть.
Проверка получившегося с помощью клиента MySQL:
DBDesigner также позволяет создавать запросы на языке SQL. Причем код запроса можно либо непосредственно написать, либо использовать готовые шаблоны, в которые необходимо только внести какие-то изменения.
Для работы с запросами необходимо:
- Переключиться в QueryMode, выбрав в меню Display -> QueryMode.
- В меню инструментов слева появятся кнопки, с помощью которых можно выполнить основные запросы.
- Выбрав кнопку (например, SELECT), следует щелкнуть по заголовку таблицы, а затем, не отпуская кнопку мыши, сдвинуть указатель вниз.
- В появившемся меню выбрать нужную операцию.
- Код на языке SQL появиться в нижней части экрана.
SELECT *
FROM user
- Нажав на кнопку ExecuteSQLQuery, в нижней части экрана можно увидеть результат запроса.
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
WHEREstoimost<350;
SELECTMAX(stoimost) AS 'самая максимальная стоимость тарифа'
FROM tarif
DBDesigner предоставляет различные функции для работы с запросами: сохранение кода, внесение изменений в базу и отмена внесенных изменений. Благодаря этим встроенным функциям работа с запросами существенно упрощается.
Кроме того, в программе есть очень удобное средство для внесения данных в таблицу. Щелкнув правой кнопкой мыши по таблице и выбрав в меню EditTableData, можно заносить данные в таблицу или изменять их без использования языка SQL.
· DBDesigner “HELP”
· DBDesigner4_manual
· «Базы данных», А.Д.Хомоненко. «Корона принт», 2000 год