|
|
@@ -0,0 +1,57 @@
|
|
|
+create database if not exists seecoder;
|
|
|
+use seecoder;
|
|
|
+create table tree_nodes
|
|
|
+(
|
|
|
+ id int auto_increment,
|
|
|
+ title varchar(24) not null,
|
|
|
+ description varchar(512) null,
|
|
|
+ type int default 0 not null,
|
|
|
+ priority int default 0 null,
|
|
|
+ state int default 0 not null,
|
|
|
+ processor varchar(64) not null,
|
|
|
+ time_to_take int default 0 not null,
|
|
|
+ start_time datetime default CURRENT_TIMESTAMP null,
|
|
|
+ end_time datetime null,
|
|
|
+ is_leaf int default 0 null,
|
|
|
+ group_id int null,
|
|
|
+ constraint tree_nodes_id_uindex
|
|
|
+ unique (id)
|
|
|
+);
|
|
|
+
|
|
|
+alter table tree_nodes
|
|
|
+ add primary key (id);
|
|
|
+
|
|
|
+create table messages
|
|
|
+(
|
|
|
+ message_id int auto_increment,
|
|
|
+ creator varchar(64) not null,
|
|
|
+ tree_node_id int null,
|
|
|
+ detail varchar(512) null,
|
|
|
+ constraint messages_message_id_uindex
|
|
|
+ unique (message_id),
|
|
|
+ constraint tree_node_fk
|
|
|
+ foreign key (tree_node_id) references tree_nodes (id)
|
|
|
+ on update cascade on delete cascade
|
|
|
+);
|
|
|
+
|
|
|
+alter table messages
|
|
|
+ add primary key (message_id);
|
|
|
+
|
|
|
+create table tree_sides
|
|
|
+(
|
|
|
+ side_id int auto_increment,
|
|
|
+ parent_id int null,
|
|
|
+ child_id int null,
|
|
|
+ constraint tree_sides_side_id_uindex
|
|
|
+ unique (side_id),
|
|
|
+ constraint child_fk
|
|
|
+ foreign key (child_id) references tree_nodes (id)
|
|
|
+ on update cascade on delete cascade,
|
|
|
+ constraint parent_fk
|
|
|
+ foreign key (parent_id) references tree_nodes (id)
|
|
|
+ on update cascade on delete cascade
|
|
|
+);
|
|
|
+
|
|
|
+alter table tree_sides
|
|
|
+ add primary key (side_id);
|
|
|
+
|