back to latest head
[mir.git] / dbscripts / hibernate_schema.sql
1 alter table role_x_rights drop constraint fk_right_role;
2 alter table role_x_rights drop constraint fk_role_right;
3 alter table category drop constraint fk_category_categorytype;
4 alter table category drop constraint fk_category_parentcategory;
5 alter table category drop constraint fk_topic_childcategories;
6 alter table media drop constraint fk_media_user;
7 alter table media_x_media drop constraint fk_mediaxmedia_sourcemedia;
8 alter table media_x_media drop constraint fk_mediaxmedia_relatedmedia;
9 alter table media_x_media drop constraint fk_mediaxmedia_mediarelationtype;
10 alter table uploaded_media drop constraint fk_uploadedmedia_mediafolder;
11 alter table uploaded_media drop constraint fk_uploadedmedia_mediatype;
12 alter table uploaded_media drop constraint fk_uploadedmedia_media;
13 alter table article drop constraint fk_article_language;
14 alter table article drop constraint fk_article_articlestatus;
15 alter table article drop constraint fk_article_media;
16 alter table article drop constraint fk_article_lockinguser;
17 alter table article_x_category drop constraint fk_article_category_2;
18 alter table article_x_category drop constraint fk_articlexcategory_category;
19 alter table article_x_category drop constraint fk_article_category;
20 alter table article_x_category drop constraint fk_category_article;
21 alter table article_x_category drop constraint fk_articlexcategory_article_type;
22 alter table article_x_category drop constraint fk_articlexcategory;
23 alter table users drop constraint fk_user_role;
24 alter table users drop constraint fk_role_user;
25 drop table role_x_rights;
26 drop table category_type;
27 drop table media_type;
28 drop table rights;
29 drop table category;
30 drop table media;
31 drop table roles;
32 drop table article_type;
33 drop table media_x_media;
34 drop table language;
35 drop table uploaded_media;
36 drop table article;
37 drop table media_relation_type;
38 drop table article_x_category;
39 drop table breaking_news_items;
40 drop table comment_status;
41 drop table users;
42 drop table media_folder;
43 drop table messages;
44 drop sequence language_id_seq;
45 drop sequence users_id_seq;
46 drop sequence media_relation_type_id_seq;
47 drop sequence category_type_id_seq;
48 drop sequence breaking_id_seq;
49 drop sequence media_type_id_seq;
50 drop sequence article_type_id_seq;
51 drop sequence right_id_seq;
52 drop sequence comment_status_id_seq;
53 drop sequence media_folder_id_seq;
54 drop sequence media_id_seq;
55 drop sequence category_id_seq;
56 drop sequence role_id_seq;
57 create table role_x_rights (
58    role_id int4 not null,
59    right_id int4 not null,
60    primary key (role_id, right_id)
61 );
62 create table category_type (
63    id int4 not null,
64    name varchar(40) not null,
65    primary key (id)
66 );
67 create table media_type (
68    id int4 not null,
69    name varchar(80) not null,
70    mime_type varchar(40) not null,
71    classname varchar(80) not null,
72    tablename varchar(80) not null,
73    dcname varchar(20),
74    primary key (id)
75 );
76 create table rights (
77    id int4 not null,
78    name varchar(80) not null,
79    description varchar(255),
80    primary key (id)
81 );
82 create table category (
83    id int4 not null,
84    title varchar(80) not null,
85    description varchar(255),
86    filename varchar(20) not null,
87    category_type int4,
88    parent_id int4,
89    primary key (id)
90 );
91 create table media (
92    id int4 not null,
93    title varchar(255),
94    description text,
95    creator varchar(80),
96    creator_main_url varchar(255),
97    creator_email varchar(80),
98    creator_address varchar(80),
99    creator_phone varchar(80),
100    internal_comment varchar(255),
101    is_produced bool not null,
102    creation_date timestamp not null,
103    last_change timestamp,
104    to_publisher int4,
105    primary key (id)
106 );
107 create table roles (
108    id int4 not null,
109    name varchar(16) not null unique,
110    description varchar(255) not null,
111    primary key (id)
112 );
113 create table article_type (
114    id int4 not null,
115    name varchar(40) not null,
116    primary key (id)
117 );
118 create table media_x_media (
119    source_media_id int4 not null,
120    media_relation_type_id int4 not null,
121    related_media_id int4 not null,
122    primary key (source_media_id, related_media_id)
123 );
124 create table language (
125    id int4 not null,
126    name varchar(40) not null,
127    code varchar(2) not null,
128    primary key (id)
129 );
130 create table uploaded_media (
131    media_id int4 not null,
132    publish_server varchar(255),
133    publish_path varchar(255),
134    storage_path varchar(255),
135    icon_produced bool not null,
136    icon_path varchar(255),
137    size int4,
138    to_media_folder int4,
139    to_media_type int4,
140    primary key (media_id)
141 );
142 create table article (
143    media_id int4 not null,
144    date varchar(8) not null,
145    subtitle varchar(255),
146    edittitle varchar(255),
147    content text not null,
148    is_html bool not null,
149    to_article_status int4,
150    to_locking_user int4,
151    to_language int4,
152    primary key (media_id)
153 );
154 create table media_relation_type (
155    id int4 not null,
156    name varchar(255),
157    primary key (id)
158 );
159 create table article_x_category (
160    article_type_id int4 not null,
161    category_id int4 not null,
162    article_id int4 not null,
163    primary key (category_id, article_id)
164 );
165 create table breaking_news_items (
166    id int4 not null,
167    text varchar(255) not null,
168    creationDate timestamp not null,
169    primary key (id)
170 );
171 create table comment_status (
172    id int4 not null,
173    name varchar(40) not null,
174    primary key (id)
175 );
176 create table users (
177    id int4 not null,
178    login varchar(16) not null unique,
179    password varchar(255) not null,
180    internal_comment varchar(255),
181    is_disabled bool not null,
182    email varchar(255) not null,
183    profile varchar(255),
184    creationDate timestamp not null,
185    lastlogin timestamp,
186    to_role int4,
187    primary key (id)
188 );
189 create table media_folder (
190    id int4 not null,
191    name varchar(255) not null,
192    date varchar(8) not null,
193    place varchar(80),
194    keywords varchar(255),
195    internal_comment varchar(255),
196    creationDate timestamp not null,
197    last_change timestamp,
198    primary key (id)
199 );
200 create table messages (
201    id int4 not null,
202    title varchar(30),
203    description varchar(255) not null,
204    creator varchar(30) not null,
205    creation_date timestamp not null,
206    primary key (id)
207 );
208 alter table role_x_rights add constraint fk_right_role foreign key (right_id) references rights;
209 alter table role_x_rights add constraint fk_role_right foreign key (role_id) references roles;
210 alter table category add constraint fk_category_categorytype foreign key (category_type) references category_type;
211 alter table category add constraint fk_category_parentcategory foreign key (parent_id) references category;
212 alter table category add constraint fk_topic_childcategories foreign key (parent_id) references category;
213 alter table media add constraint fk_media_user foreign key (to_publisher) references users;
214 alter table media_x_media add constraint fk_mediaxmedia_sourcemedia foreign key (source_media_id) references media;
215 alter table media_x_media add constraint fk_mediaxmedia_relatedmedia foreign key (related_media_id) references media;
216 alter table media_x_media add constraint fk_mediaxmedia_mediarelationtype foreign key (media_relation_type_id) references media_relation_type;
217 alter table uploaded_media add constraint fk_uploadedmedia_mediafolder foreign key (to_media_folder) references media_folder;
218 alter table uploaded_media add constraint fk_uploadedmedia_mediatype foreign key (to_media_type) references media_type;
219 alter table uploaded_media add constraint fk_uploadedmedia_media foreign key (media_id) references media;
220 alter table article add constraint fk_article_language foreign key (to_language) references language;
221 alter table article add constraint fk_article_articlestatus foreign key (to_article_status) references comment_status;
222 alter table article add constraint fk_article_media foreign key (media_id) references media;
223 alter table article add constraint fk_article_lockinguser foreign key (to_locking_user) references users;
224 alter table article_x_category add constraint fk_article_category_2 foreign key (article_id) references article;
225 alter table article_x_category add constraint fk_articlexcategory_category foreign key (category_id) references category;
226 alter table article_x_category add constraint fk_article_category foreign key (article_id) references article;
227 alter table article_x_category add constraint fk_category_article foreign key (category_id) references category;
228 alter table article_x_category add constraint fk_articlexcategory_article_type foreign key (article_type_id) references article_type;
229 alter table article_x_category add constraint fk_articlexcategory foreign key (article_type_id, category_id) references article_x_category;
230 alter table users add constraint fk_user_role foreign key (to_role) references roles;
231 alter table users add constraint fk_role_user foreign key (to_role) references roles;
232 create sequence language_id_seq;
233 create sequence users_id_seq;
234 create sequence media_relation_type_id_seq;
235 create sequence category_type_id_seq;
236 create sequence breaking_id_seq;
237 create sequence media_type_id_seq;
238 create sequence article_type_id_seq;
239 create sequence right_id_seq;
240 create sequence comment_status_id_seq;
241 create sequence media_folder_id_seq;
242 create sequence media_id_seq;
243 create sequence category_id_seq;
244 create sequence role_id_seq;