Система управления базой данных объектов гражданской обороны для принятия решений в чрезвычайной ситуацииРефераты >> Военная кафедра >> Система управления базой данных объектов гражданской обороны для принятия решений в чрезвычайной ситуации
NOT NULL - должно иметь значение
Рисунок 7.2. Диаграмма потоков данных (взаимосвязь таблиц)
7.6. Создание SQL сценария
После того как таблицы созданы и определена их связь необходимо составить SQL сценарий для создания базы данных.
7.6.1. Создание базы данных
Перед созданием базы данных ее необходимо спроектировать. Этап проектирования базы данных включает в себя планирование ограничений файлов и включение файлов а новую базу данных. Этап создания состоит в выполнении этого плана с помощью команды SQL CREATE DATABASE и некоторых сценариев.
Основные задачи включают в себя следующее:
· Определение соответствующих значений в команде CREATE DATABASE. для параметров ограничений файлов.
· Планирование размера и расположения файлов начальных данных табличной области SYSTEM новой базы данных.
· Планирование для новой базы данных размера и расположения групп и членов журнала транзакций.
· Определение набора символов для хранения информации базы данных.
· Создание файла параметров инициализации и спецификации имен управляющих файлов базы данных.
Сценарий с файлами инициализации базы данных приведены в ПРИЛОЖЕНИИ 3.
7.6.2. Создание таблиц
Таблицы создаются с помощью оператора SQL CREATE TABLE.
Фрагмент из ПРИЛОЖЕНИЯ 4:
CREATE TABLE ACTIVITY
(
ACTIVITY_ID NUMBER(7) NOT NULL,
ACTIVITY_CHAR VARCHAR2(50) NULL
);
Полный сценарий приведен в ПРИЛОЖЕНИИ 4.
7.6.3. Создание индексов
Индексы облегчают поиск и сортировку данных. Индексы создаются с помощью оператора SQL CREATE INDEX. Фрагмент из ПРИЛОЖЕНИЯ 4:
CREATE UNIQUE INDEX IPKACTIVITY ON ACTIVITY
(
ACTIVITY_ID ASC
);
7.6.4. Определение первичных ключей
Добавление определения первичного ключа к существующей таблице:
ALTER TABLE ACTIVITY
ADD ( PRIMARY KEY (ACTIVITY_ID) ) ;
Полный сценарий приведен в ПРИЛОЖЕНИИ 4.
7.6.5. Определение вторичных ключей
Добавление определения вторичного ключа к существующей таблице:
ALTER TABLE OBECONOM
ADD ( FOREIGN KEY (ACTIVITY_ID)
REFERENCES ACTIVITY ) ;
Полный сценарий приведен в ПРИЛОЖЕНИИ 4.
7.6.6. Создание триггеров
Триггер - это скомпилированная программа SQL, которая выполняется, когда в таблице происходит данное событие. С триггером, как правило, связываются три самых распространенных события: вставка, удаление и обновление строки.
CREATE TRIGGER IU_STUDY BEFORE INSERT OR UPDATE ON GO.STUDY
FOR EACH ROW
BEGIN
IF INSERTING THEN
SELECT GOBASEUSER_ID INTO :NEW.NAMEADD_ID
FROM GO.ORAUSER
WHERE ORAUSER_ID=UID;
:NEW.DATEADD := SYSDATE;
END IF;
SELECT GOBASEUSER_ID INTO :NEW.NAMEINS_ID
FROM GO.ORAUSER
WHERE ORAUSER_ID=UID;
:NEW.DATEINS := SYSDATE;
END;
Полный сценарий приведен в ПРИЛОЖЕНИИ 4.
В частности в данной программе с помощью триггеров выполняется автоматическая регистрация вводимых данных (кто вел, когда).
7.6.7. Создание последовательностей
С помощью последовательностей генерируются уникальные целые числа. Последовательные номера используются для автоматической генерации основных ключей.
CREATE SEQUENCE S_STUDY
Полный сценарий приведен в ПРИЛОЖЕНИИ 4.
7.7.Выбор типа создаваемого приложения
Существует два варианта - системы обработки транзакций и системы поддержки решений. Как правило, системы поддержки решений используются управленческим персоналом компаний для обзора некоторой части данных, а системы обработки транзакций отвечают за ввод и обработку этих данных. Таким образом, приложениям поддержки решений необходим уровень доступа к данным только в режиме чтения, а системы обработки транзакций должны иметь возможность как читать, так и записывать данные. Это фундаментальное различие между двумя типами приложений лежит в основе выбора типа приложения.
Система GOBASE - это приложение обработки транзакций. Поскольку пользователи должны иметь возможность добавлять, изменять и удалять данные, данная система выпадает из разряда приложений поддержки решений. Но, с другой стороны, некоторая информация, полученная с помощью этого приложения, по всей видимости, будет использоваться при принятии решений, т.е. данная система - это в некотором роде гибрид. Однако основное направление ее как приложение - это обработка транзакций.
7.8. Соглашение о название компонентов в программе GOBASE
Соглашение о название компонентов Таблица 7.3
Компонент |
Аббревиатура |
Компонент |
Аббревиатура | |
AutoObject |
ao |
QRDBText |
qt | |
BatchMove |
bm |
QRDetailLink |
qd | |
Bevel |
be |
QRGroup |
qg | |
BiGauge |
bg |
QRLabel |
ql | |
BiPict |
bp |
QRMemo |
qm | |
Biswitch |
bs |
QRPreview |
qp | |
BitBtn |
bb |
QRShape |
qh | |
Button |
bu |
QRSysData |
qs | |
Calendar |
ca |
Query |
qu | |
ChartFX |
ch |
QuickReport |
qr | |
CheckBox |
ck |
RadioButton |
rb | |
ColorDialog |
c_ |
RadioGroup |
rg | |
ColorGrid |
сg |
ReplaceDialog |
r_ | |
ComboBox |
cb |
Report |
rp | |
Database |
db |
RichEdit |
re | |
DataModule, DBMemo |
dm |
SaveDialog |
s_ | |
DataSource |
ds |
ScrollBar |
sa | |
DBCheckBox |
dk |
ScrollBox |
sx | |
DBComboBox |
dc |
Session |
se | |
DBEdit |
de |
SpeedButton |
sb | |
DBGrid |
gr |
SpinButton |
su | |
DBImage |
di |
SpinEdit |
sd | |
DBListBox |
di |
StatusBar |
st | |
DBLookupComboBox, DBLookupCombo |
lc |
FindDialog |
n_ | |
DBLookupListBox, DBLookupList |
ll |
Font Dialog |
f_ | |
DBNavigator |
na |
Form |
fm | |
DBRadioGroup |
dg |
Gauge |
ga | |
DBText |
te |
Graphics Server |
gs | |
DdeClientConv |
cc |
GroupBox |
gs | |
DdeCI lent Item |
ci |
Header |
he | |
DdeServerConv |
sc |
HeaderControi |
hc | |
DdeServerItem |
si |
HotKey |
hk | |
DirectoryListBox |
dy |
IBEventAierter |
ie | |
DirectoryOutline |
do |
Image |
im | |
DrawGrid |
dr |
Image List |
il | |
DriveCoitiboBox |
rc |
Label |
la | |
Edit |
ed |
ListBox |
lb | |
FileListBox |
fl |
ListView |
lv | |
FilterComboBox |
fc |
MainMenu |
mm | |
MaskEdit |
md |
StoredProc |
sp | |
MediaPlayer |
mp |
StringGrid |
sg | |
Memo |
me |
TabbedNotebook |
tn | |
Notebook |
nb |
TabControi |
tc | |
OleContainer |
ol |
Table |
ta | |
OpenDialog |
od |
TabSet |
ts | |
OutLine |
ou |
Thread |
th | |
PageControl |
pc |
Timer |
ti | |
PaintBox |
pb |
TrackBar |
tb | |
Panel |
pa |
TreeView |
tv | |
PopupMenu |
pu |
UpdateSQL |
us | |
PrintDialog |
p_ |
UpDown |
ud | |
PrinterSetupDialog |
i_ |
VCFirstImpression |
vf | |
ProgressBar |
pr |
VCFormulaOne |
vo | |
QRBand |
qb |
VCSpeller |
vs | |
QRDBCalc |
qc | |||