-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathcreate_database.sql
84 lines (74 loc) · 2.21 KB
/
create_database.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
CREATE DATABASE IF NOT EXISTS `LAS2PEERMON`;
USE LAS2PEERMON;
CREATE TABLE `MESSAGE` (
`ID` int NOT NULL AUTO_INCREMENT,
`EVENT` varchar(255) NOT NULL,
`TIME_STAMP` timestamp NOT NULL,
`SOURCE_NODE` varchar(255) DEFAULT NULL,
`SOURCE_AGENT` char(32) DEFAULT NULL,
`DESTINATION_NODE` varchar(255) DEFAULT NULL,
`DESTINATION_AGENT` char(32) DEFAULT NULL,
`REMARKS` json DEFAULT NULL,
PRIMARY KEY (`ID`)
);
CREATE TABLE IF NOT EXISTS AGENT
(
AGENT_ID CHAR(32) NOT NULL,
TYPE ENUM("USER",
"SERVICE",
"GROUP",
"MONITORING",
"MEDIATOR"
)
,
CONSTRAINT AGENT_PK PRIMARY KEY
(AGENT_ID)
);
CREATE TABLE IF NOT EXISTS NODE
(
NODE_ID VARCHAR(255) NOT NULL,
NODE_LOCATION VARCHAR(255) NOT NULL,
CONSTRAINT NODE_PK PRIMARY KEY (NODE_ID)
);
CREATE TABLE IF NOT EXISTS REGISTERED_AT
(
REGISTRATION_DATE TIMESTAMP NULL,
UNREGISTRATION_DATE TIMESTAMP NULL,
AGENT_ID CHAR(32) NOT NULL,
RUNNING_AT VARCHAR(255),
CONSTRAINT AGENT_ID_FK FOREIGN KEY (AGENT_ID) REFERENCES AGENT(AGENT_ID),
CONSTRAINT RUNNING_AT_FK FOREIGN KEY (RUNNING_AT) REFERENCES NODE(NODE_ID)
);
CREATE TABLE IF NOT EXISTS SERVICE
(
AGENT_ID CHAR(32) NOT NULL,
SERVICE_CLASS_NAME VARCHAR(255),
SERVICE_PATH VARCHAR(255) NULL,
CONSTRAINT SERVICE_PK PRIMARY KEY (AGENT_ID),
CONSTRAINT SERVICE_FK FOREIGN KEY (AGENT_ID) REFERENCES AGENT(AGENT_ID),
CONSTRAINT SERVICE_UK UNIQUE
KEY
(AGENT_ID,SERVICE_CLASS_NAME)
);
CREATE TABLE IF NOT EXISTS GROUP_INFORMATION
(
GROUP_AGENT_ID_MD5 CHAR(32) NOT NULL,
GROUP_AGENT_ID CHAR(128) NOT NULL,
GROUP_NAME VARCHAR(255) NOT NULL,
PUBLIC BOOLEAN,
CONSTRAINT GROUP_AGENT_ID_FK FOREIGN KEY
(GROUP_AGENT_ID_MD5) REFERENCES AGENT
(AGENT_ID)
);
CREATE TABLE IF NOT EXISTS `EVENTLOG` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`CASE_ID` char(36) NOT NULL,
`ACTIVITY_NAME` varchar(255) NOT NULL,
`EVENT_TYPE` varchar(255) DEFAULT NULL,
`RESOURCE` varchar(255) DEFAULT NULL,
`RESOURCE_TYPE` varchar(255) DEFAULT NULL,
`LIFECYCLE_PHASE` varchar(255) DEFAULT NULL,
`TIME_STAMP` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`REMARKS` json DEFAULT NULL,
PRIMARY KEY (`ID`)
);