Смекни!
smekni.com

Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner (стр. 2 из 2)

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)

);


3. Работа с базой данных

DBDesigner позволяет также создавать базу данных на сервере и выполнять с ней различные операции. Это обеспечивается за счет подключения DBDesigner к MySQL серверу, созданию базы данных и установлению синхронизации между базой на сервере и визуальной моделью. Синхронизация – это сравнение визуальной модели и базы данных, находящейся на сервере. В случае внесения изменений в таблицу, изменения связей между таблицами или удаления таблиц в модели, DBDesigner внесет и соответствующие изменения в базу на сервере.

1) Установление соединения с базой данных на сервере

Для занесения базы данных, соответствующей полученной модели, на сервер MySQL, необходимо установить соединение с сервером.

- ВыполнитеDatabase –> Connect to Database.

- Вокне Network Hosts выберите MySQL

- В открывшемся списке баз данных, выберите либо существующую базу, либо создать новую, щелкнув два раза по значку «…» и задав имя новой базы.

- Введите название соединения (Connection), имя пользователя (Username) и пароль (Password), если они нужны.

- В центральном окне находится список серверов баз данных, с которыми велась работа и для которых указаны IP-адрес, тип, размещение и название. Так как в данной работе предполагается, что сервер MySQL находиться на локальном компьютере, то все необходимые параметры будут установлены автоматически. Однако при использовании сети, необходимо знать IP-адрес сервера и иметь доступ на работу.

- Нажмите на кнопку Connect, после чего соединение с базой будет установлено.

2) Синхронизация

Для синхронизации модели и базы на сервере необходимо:

- Выбрать в меню Database - DatabaseSynchronisation и установить соединение с нужной базой.

- В диалоговом окне DatabaseSynchronisation задать необходимые параметры:

o ApplychangestoDatabase – вносить изменения модели в базу

o Don'tdeleteexisitingTables – при использовании этой опции таблицы, удаленные из модели, не будут удалены из базы

o ExecuteStandardInsertswhenCreatingNewTables – создавать стандартный запрос на внесение данных в таблицу - Нажать Execute, после чего база данных будет занесена на сервер. Также будет выведен отчет и сообщения об ошибках в модели, если они есть.

Проверка получившегося с помощью клиента MySQL:

4. SQL-запросы

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 год