· 8 years ago · Dec 13, 2017, 10:10 AM
1
2# This is a fix for InnoDB in MySQL >= 4.1.x
3# It "suspends judgement" for fkey relationships until are tables are set.
4SET FOREIGN_KEY_CHECKS = 0;
5
6-- ---------------------------------------------------------------------
7-- event
8-- ---------------------------------------------------------------------
9
10DROP TABLE IF EXISTS `event`;
11
12CREATE TABLE `event`
13(
14 `id` INTEGER NOT NULL AUTO_INCREMENT,
15 `reminder_date` DATE,
16 `created_at` DATETIME,
17 `updated_at` DATETIME,
18 PRIMARY KEY (`id`),
19 INDEX `event_I_1` (`reminder_date`)
20) ENGINE=InnoDB;
21
22-- ---------------------------------------------------------------------
23-- organizer
24-- ---------------------------------------------------------------------
25
26DROP TABLE IF EXISTS `organizer`;
27
28CREATE TABLE `organizer`
29(
30 `id` INTEGER NOT NULL AUTO_INCREMENT,
31 `name` VARCHAR(255) NOT NULL,
32 `image` VARCHAR(255),
33 `description` TEXT,
34 `meta_title` VARCHAR(255),
35 `meta_description` TEXT,
36 `meta_keywords` VARCHAR(255),
37 `city_id` INTEGER,
38 `country_id` INTEGER NOT NULL,
39 `events_count` INTEGER,
40 `slug` VARCHAR(255),
41 `created_at` DATETIME,
42 `updated_at` DATETIME,
43 PRIMARY KEY (`id`),
44 UNIQUE INDEX `organizer_slug` (`slug`(255)),
45 INDEX `organizer_FI_1` (`city_id`),
46 INDEX `organizer_FI_2` (`country_id`),
47 CONSTRAINT `organizer_FK_1`
48 FOREIGN KEY (`city_id`)
49 REFERENCES `city` (`id`)
50 ON DELETE CASCADE,
51 CONSTRAINT `organizer_FK_2`
52 FOREIGN KEY (`country_id`)
53 REFERENCES `country` (`id`)
54 ON DELETE CASCADE
55) ENGINE=InnoDB;
56
57-- ---------------------------------------------------------------------
58-- exhibition_link
59-- ---------------------------------------------------------------------
60
61DROP TABLE IF EXISTS `exhibition_link`;
62
63CREATE TABLE `exhibition_link`
64(
65 `id` INTEGER NOT NULL AUTO_INCREMENT,
66 `link` VARCHAR(255) DEFAULT '',
67 `country_id` INTEGER,
68 `place_id` INTEGER,
69 `city_id` INTEGER,
70 `organizer_id` INTEGER,
71 `logo` VARCHAR(255),
72 `external_link` VARCHAR(255),
73 `date_start` DATE,
74 `date_end` DATE,
75 `is_parsed` TINYINT(1) DEFAULT 0 NOT NULL,
76 `is_viewed` TINYINT(1) DEFAULT 0 NOT NULL,
77 `is_popular` TINYINT(1) DEFAULT 0 NOT NULL,
78 `is_linked` TINYINT(1) DEFAULT 0 NOT NULL,
79 `show_on_index` TINYINT(1) DEFAULT 0 NOT NULL,
80 `is_in_ukraine` TINYINT(1) DEFAULT 0 NOT NULL,
81 `source` TINYINT DEFAULT 0 NOT NULL,
82 `mb_duplicate` TINYINT(1) DEFAULT 0 NOT NULL,
83 `is_duplicate` TINYINT(1) DEFAULT 0 NOT NULL,
84 `type_id` INTEGER NOT NULL,
85 `event_id` INTEGER,
86 `created_at` DATETIME,
87 `updated_at` DATETIME,
88 `slug` VARCHAR(255),
89 `deleted_at` DATETIME,
90 PRIMARY KEY (`id`),
91 UNIQUE INDEX `exhibition_link_slug` (`slug`(255)),
92 INDEX `exhibition_link_I_1` (`external_link`),
93 INDEX `exhibition_link_I_2` (`date_start`),
94 INDEX `exhibition_link_I_3` (`date_end`),
95 INDEX `exhibition_link_I_4` (`is_parsed`),
96 INDEX `exhibition_link_I_5` (`is_viewed`),
97 INDEX `exhibition_link_I_6` (`is_popular`),
98 INDEX `exhibition_link_I_7` (`is_linked`),
99 INDEX `exhibition_link_I_8` (`show_on_index`),
100 INDEX `exhibition_link_I_9` (`is_in_ukraine`),
101 INDEX `exhibition_link_FI_1` (`country_id`),
102 INDEX `exhibition_link_FI_2` (`place_id`),
103 INDEX `exhibition_link_FI_3` (`city_id`),
104 INDEX `exhibition_link_FI_4` (`organizer_id`),
105 INDEX `exhibition_link_FI_5` (`type_id`),
106 INDEX `exhibition_link_FI_6` (`event_id`),
107 CONSTRAINT `exhibition_link_FK_1`
108 FOREIGN KEY (`country_id`)
109 REFERENCES `country` (`id`)
110 ON DELETE CASCADE,
111 CONSTRAINT `exhibition_link_FK_2`
112 FOREIGN KEY (`place_id`)
113 REFERENCES `exhibition_place` (`id`)
114 ON DELETE CASCADE,
115 CONSTRAINT `exhibition_link_FK_3`
116 FOREIGN KEY (`city_id`)
117 REFERENCES `city` (`id`)
118 ON DELETE CASCADE,
119 CONSTRAINT `exhibition_link_FK_4`
120 FOREIGN KEY (`organizer_id`)
121 REFERENCES `organizer` (`id`)
122 ON DELETE CASCADE,
123 CONSTRAINT `exhibition_link_FK_5`
124 FOREIGN KEY (`type_id`)
125 REFERENCES `exhibition_type` (`id`)
126 ON DELETE SET NULL,
127 CONSTRAINT `exhibition_link_FK_6`
128 FOREIGN KEY (`event_id`)
129 REFERENCES `event` (`id`)
130 ON DELETE SET NULL
131) ENGINE=InnoDB;
132
133-- ---------------------------------------------------------------------
134-- exhibition_link_i18n
135-- ---------------------------------------------------------------------
136
137DROP TABLE IF EXISTS `exhibition_link_i18n`;
138
139CREATE TABLE `exhibition_link_i18n`
140(
141 `id` INTEGER NOT NULL,
142 `culture` VARCHAR(7) NOT NULL,
143 `name` VARCHAR(255) NOT NULL,
144 `short_name` VARCHAR(255),
145 `description_short` TEXT,
146 `description` TEXT,
147 `place` VARCHAR(255),
148 `periodicity` VARCHAR(255),
149 `work_time` VARCHAR(255),
150 `conditions` VARCHAR(255),
151 `owner` VARCHAR(255),
152 PRIMARY KEY (`id`,`culture`),
153 CONSTRAINT `exhibition_link_i18n_FK_1`
154 FOREIGN KEY (`id`)
155 REFERENCES `exhibition_link` (`id`)
156 ON DELETE CASCADE
157) ENGINE=InnoDB;
158
159-- ---------------------------------------------------------------------
160-- exhibition_type
161-- ---------------------------------------------------------------------
162
163DROP TABLE IF EXISTS `exhibition_type`;
164
165CREATE TABLE `exhibition_type`
166(
167 `id` INTEGER NOT NULL AUTO_INCREMENT,
168 `alias` VARCHAR(255) NOT NULL,
169 `singular` VARCHAR(255) NOT NULL,
170 `plural` VARCHAR(255) NOT NULL,
171 `meta_title` VARCHAR(255),
172 `meta_description` TEXT,
173 `meta_keywords` VARCHAR(255),
174 `page_description` TEXT,
175 PRIMARY KEY (`id`)
176) ENGINE=InnoDB;
177
178-- ---------------------------------------------------------------------
179-- exhibition_place
180-- ---------------------------------------------------------------------
181
182DROP TABLE IF EXISTS `exhibition_place`;
183
184CREATE TABLE `exhibition_place`
185(
186 `id` INTEGER NOT NULL AUTO_INCREMENT,
187 `name` VARCHAR(255) NOT NULL,
188 `booking_code` VARCHAR(255),
189 `booking_code_type` VARCHAR(255) DEFAULT 'landmark' NOT NULL,
190 `formatted_address` VARCHAR(255),
191 `longitude` VARCHAR(255),
192 `latitude` VARCHAR(255),
193 `google_place_id` VARCHAR(255),
194 `is_equal` TINYINT(1) DEFAULT 0 NOT NULL,
195 `email` VARCHAR(255),
196 `website` VARCHAR(255),
197 `phone` VARCHAR(255),
198 `meta_title` VARCHAR(255),
199 `meta_description` TEXT,
200 `meta_keywords` VARCHAR(255),
201 `description` TEXT,
202 `events_count` INTEGER,
203 `city_id` INTEGER,
204 `country_id` INTEGER NOT NULL,
205 `image` VARCHAR(255),
206 `slug` VARCHAR(255),
207 `created_at` DATETIME,
208 `updated_at` DATETIME,
209 PRIMARY KEY (`id`),
210 UNIQUE INDEX `exhibition_place_U_1` (`name`),
211 UNIQUE INDEX `exhibition_place_U_2` (`booking_code`),
212 UNIQUE INDEX `exhibition_place_slug` (`slug`(255)),
213 INDEX `exhibition_place_FI_1` (`city_id`),
214 INDEX `exhibition_place_FI_2` (`country_id`),
215 CONSTRAINT `exhibition_place_FK_1`
216 FOREIGN KEY (`city_id`)
217 REFERENCES `city` (`id`)
218 ON DELETE CASCADE,
219 CONSTRAINT `exhibition_place_FK_2`
220 FOREIGN KEY (`country_id`)
221 REFERENCES `country` (`id`)
222 ON DELETE CASCADE
223) ENGINE=InnoDB;
224
225-- ---------------------------------------------------------------------
226-- exhibition_place_image
227-- ---------------------------------------------------------------------
228
229DROP TABLE IF EXISTS `exhibition_place_image`;
230
231CREATE TABLE `exhibition_place_image`
232(
233 `id` INTEGER NOT NULL AUTO_INCREMENT,
234 `image` VARCHAR(255),
235 `place_id` INTEGER,
236 PRIMARY KEY (`id`),
237 INDEX `exhibition_place_image_FI_1` (`place_id`),
238 CONSTRAINT `exhibition_place_image_FK_1`
239 FOREIGN KEY (`place_id`)
240 REFERENCES `exhibition_place` (`id`)
241 ON DELETE CASCADE
242) ENGINE=InnoDB;
243
244-- ---------------------------------------------------------------------
245-- country
246-- ---------------------------------------------------------------------
247
248DROP TABLE IF EXISTS `country`;
249
250CREATE TABLE `country`
251(
252 `id` INTEGER NOT NULL AUTO_INCREMENT,
253 `is_visible` TINYINT(1) DEFAULT 1 NOT NULL,
254 `events_count` INTEGER,
255 `slug` VARCHAR(255),
256 PRIMARY KEY (`id`),
257 UNIQUE INDEX `country_slug` (`slug`(255))
258) ENGINE=InnoDB;
259
260-- ---------------------------------------------------------------------
261-- country_i18n
262-- ---------------------------------------------------------------------
263
264DROP TABLE IF EXISTS `country_i18n`;
265
266CREATE TABLE `country_i18n`
267(
268 `id` INTEGER NOT NULL,
269 `culture` VARCHAR(7) NOT NULL,
270 `name` VARCHAR(255) NOT NULL,
271 `meta_title` VARCHAR(255),
272 `meta_description` TEXT,
273 `meta_keywords` VARCHAR(255),
274 `page_description` TEXT,
275 PRIMARY KEY (`id`,`culture`),
276 CONSTRAINT `country_i18n_FK_1`
277 FOREIGN KEY (`id`)
278 REFERENCES `country` (`id`)
279 ON DELETE CASCADE
280) ENGINE=InnoDB;
281
282-- ---------------------------------------------------------------------
283-- city
284-- ---------------------------------------------------------------------
285
286DROP TABLE IF EXISTS `city`;
287
288CREATE TABLE `city`
289(
290 `id` INTEGER NOT NULL AUTO_INCREMENT,
291 `country_id` INTEGER NOT NULL,
292 `is_visible` TINYINT(1) DEFAULT 1 NOT NULL,
293 `events_count` INTEGER,
294 `slug` VARCHAR(255),
295 PRIMARY KEY (`id`),
296 UNIQUE INDEX `city_slug` (`slug`(255)),
297 INDEX `city_FI_1` (`country_id`),
298 CONSTRAINT `city_FK_1`
299 FOREIGN KEY (`country_id`)
300 REFERENCES `country` (`id`)
301 ON DELETE CASCADE
302) ENGINE=InnoDB;
303
304-- ---------------------------------------------------------------------
305-- city_i18n
306-- ---------------------------------------------------------------------
307
308DROP TABLE IF EXISTS `city_i18n`;
309
310CREATE TABLE `city_i18n`
311(
312 `id` INTEGER NOT NULL,
313 `culture` VARCHAR(7) NOT NULL,
314 `name` VARCHAR(255) NOT NULL,
315 `meta_title` VARCHAR(255),
316 `meta_description` TEXT,
317 `meta_keywords` VARCHAR(255),
318 `page_description` TEXT,
319 PRIMARY KEY (`id`,`culture`),
320 CONSTRAINT `city_i18n_FK_1`
321 FOREIGN KEY (`id`)
322 REFERENCES `city` (`id`)
323 ON DELETE CASCADE
324) ENGINE=InnoDB;
325
326-- ---------------------------------------------------------------------
327-- product_group
328-- ---------------------------------------------------------------------
329
330DROP TABLE IF EXISTS `product_group`;
331
332CREATE TABLE `product_group`
333(
334 `id` INTEGER NOT NULL AUTO_INCREMENT,
335 `name` VARCHAR(255) NOT NULL,
336 `created_at` DATETIME,
337 `updated_at` DATETIME,
338 `slug` VARCHAR(255),
339 `deleted_at` DATETIME,
340 PRIMARY KEY (`id`),
341 UNIQUE INDEX `product_group_slug` (`slug`(255))
342) ENGINE=InnoDB;
343
344-- ---------------------------------------------------------------------
345-- link_product_group
346-- ---------------------------------------------------------------------
347
348DROP TABLE IF EXISTS `link_product_group`;
349
350CREATE TABLE `link_product_group`
351(
352 `link_id` INTEGER NOT NULL,
353 `product_group_id` INTEGER NOT NULL,
354 PRIMARY KEY (`link_id`,`product_group_id`),
355 INDEX `link_product_group_FI_2` (`product_group_id`),
356 CONSTRAINT `link_product_group_FK_1`
357 FOREIGN KEY (`link_id`)
358 REFERENCES `exhibition_link` (`id`)
359 ON DELETE CASCADE,
360 CONSTRAINT `link_product_group_FK_2`
361 FOREIGN KEY (`product_group_id`)
362 REFERENCES `product_group` (`id`)
363 ON DELETE CASCADE
364) ENGINE=InnoDB;
365
366-- ---------------------------------------------------------------------
367-- product_group_ua
368-- ---------------------------------------------------------------------
369
370DROP TABLE IF EXISTS `product_group_ua`;
371
372CREATE TABLE `product_group_ua`
373(
374 `id` INTEGER NOT NULL AUTO_INCREMENT,
375 `name` VARCHAR(255) NOT NULL,
376 `created_at` DATETIME,
377 `updated_at` DATETIME,
378 `slug` VARCHAR(255),
379 `tree_left` INTEGER,
380 `tree_right` INTEGER,
381 `tree_level` INTEGER,
382 PRIMARY KEY (`id`),
383 UNIQUE INDEX `product_group_ua_slug` (`slug`(255))
384) ENGINE=InnoDB;
385
386-- ---------------------------------------------------------------------
387-- link_product_group_ua
388-- ---------------------------------------------------------------------
389
390DROP TABLE IF EXISTS `link_product_group_ua`;
391
392CREATE TABLE `link_product_group_ua`
393(
394 `link_id` INTEGER NOT NULL,
395 `product_group_ua_id` INTEGER NOT NULL,
396 PRIMARY KEY (`link_id`,`product_group_ua_id`),
397 INDEX `link_product_group_ua_FI_2` (`product_group_ua_id`),
398 CONSTRAINT `link_product_group_ua_FK_1`
399 FOREIGN KEY (`link_id`)
400 REFERENCES `exhibition_link` (`id`)
401 ON DELETE CASCADE,
402 CONSTRAINT `link_product_group_ua_FK_2`
403 FOREIGN KEY (`product_group_ua_id`)
404 REFERENCES `product_group_ua` (`id`)
405 ON DELETE CASCADE
406) ENGINE=InnoDB;
407
408-- ---------------------------------------------------------------------
409-- product_group_product_group_ua
410-- ---------------------------------------------------------------------
411
412DROP TABLE IF EXISTS `product_group_product_group_ua`;
413
414CREATE TABLE `product_group_product_group_ua`
415(
416 `product_group_id` INTEGER NOT NULL,
417 `product_group_ua_id` INTEGER NOT NULL,
418 PRIMARY KEY (`product_group_id`,`product_group_ua_id`),
419 INDEX `product_group_product_group_ua_FI_2` (`product_group_ua_id`),
420 CONSTRAINT `product_group_product_group_ua_FK_1`
421 FOREIGN KEY (`product_group_id`)
422 REFERENCES `product_group` (`id`)
423 ON DELETE CASCADE,
424 CONSTRAINT `product_group_product_group_ua_FK_2`
425 FOREIGN KEY (`product_group_ua_id`)
426 REFERENCES `product_group_ua` (`id`)
427 ON DELETE CASCADE
428) ENGINE=InnoDB;
429
430-- ---------------------------------------------------------------------
431-- kved
432-- ---------------------------------------------------------------------
433
434DROP TABLE IF EXISTS `kved`;
435
436CREATE TABLE `kved`
437(
438 `id` INTEGER NOT NULL AUTO_INCREMENT,
439 `name` VARCHAR(255) NOT NULL,
440 `created_at` DATETIME,
441 `updated_at` DATETIME,
442 `slug` VARCHAR(255),
443 `deleted_at` DATETIME,
444 PRIMARY KEY (`id`),
445 UNIQUE INDEX `kved_slug` (`slug`(255))
446) ENGINE=InnoDB;
447
448-- ---------------------------------------------------------------------
449-- link_kved
450-- ---------------------------------------------------------------------
451
452DROP TABLE IF EXISTS `link_kved`;
453
454CREATE TABLE `link_kved`
455(
456 `link_id` INTEGER NOT NULL,
457 `kved_id` INTEGER NOT NULL,
458 PRIMARY KEY (`link_id`,`kved_id`),
459 INDEX `link_kved_FI_2` (`kved_id`),
460 CONSTRAINT `link_kved_FK_1`
461 FOREIGN KEY (`link_id`)
462 REFERENCES `exhibition_link` (`id`)
463 ON DELETE CASCADE,
464 CONSTRAINT `link_kved_FK_2`
465 FOREIGN KEY (`kved_id`)
466 REFERENCES `kved` (`id`)
467 ON DELETE CASCADE
468) ENGINE=InnoDB;
469
470-- ---------------------------------------------------------------------
471-- kved_ua
472-- ---------------------------------------------------------------------
473
474DROP TABLE IF EXISTS `kved_ua`;
475
476CREATE TABLE `kved_ua`
477(
478 `id` INTEGER NOT NULL AUTO_INCREMENT,
479 `created_at` DATETIME,
480 `updated_at` DATETIME,
481 `slug` VARCHAR(255),
482 `tree_left` INTEGER,
483 `tree_right` INTEGER,
484 `tree_level` INTEGER,
485 PRIMARY KEY (`id`),
486 UNIQUE INDEX `kved_ua_slug` (`slug`(255))
487) ENGINE=InnoDB;
488
489-- ---------------------------------------------------------------------
490-- kved_ua_i18n
491-- ---------------------------------------------------------------------
492
493DROP TABLE IF EXISTS `kved_ua_i18n`;
494
495CREATE TABLE `kved_ua_i18n`
496(
497 `id` INTEGER NOT NULL,
498 `culture` VARCHAR(7) NOT NULL,
499 `name` VARCHAR(255) NOT NULL,
500 PRIMARY KEY (`id`,`culture`),
501 CONSTRAINT `kved_ua_i18n_FK_1`
502 FOREIGN KEY (`id`)
503 REFERENCES `kved_ua` (`id`)
504 ON DELETE CASCADE
505) ENGINE=InnoDB;
506
507-- ---------------------------------------------------------------------
508-- link_kved_ua
509-- ---------------------------------------------------------------------
510
511DROP TABLE IF EXISTS `link_kved_ua`;
512
513CREATE TABLE `link_kved_ua`
514(
515 `link_id` INTEGER NOT NULL,
516 `kved_ua_id` INTEGER NOT NULL,
517 PRIMARY KEY (`link_id`,`kved_ua_id`),
518 INDEX `link_kved_ua_FI_2` (`kved_ua_id`),
519 CONSTRAINT `link_kved_ua_FK_1`
520 FOREIGN KEY (`link_id`)
521 REFERENCES `exhibition_link` (`id`)
522 ON DELETE CASCADE,
523 CONSTRAINT `link_kved_ua_FK_2`
524 FOREIGN KEY (`kved_ua_id`)
525 REFERENCES `kved_ua` (`id`)
526 ON DELETE CASCADE
527) ENGINE=InnoDB;
528
529-- ---------------------------------------------------------------------
530-- kved_kved_ua
531-- ---------------------------------------------------------------------
532
533DROP TABLE IF EXISTS `kved_kved_ua`;
534
535CREATE TABLE `kved_kved_ua`
536(
537 `kved_id` INTEGER NOT NULL,
538 `kved_ua_id` INTEGER NOT NULL,
539 PRIMARY KEY (`kved_id`,`kved_ua_id`),
540 INDEX `kved_kved_ua_FI_2` (`kved_ua_id`),
541 CONSTRAINT `kved_kved_ua_FK_1`
542 FOREIGN KEY (`kved_id`)
543 REFERENCES `kved` (`id`)
544 ON DELETE CASCADE,
545 CONSTRAINT `kved_kved_ua_FK_2`
546 FOREIGN KEY (`kved_ua_id`)
547 REFERENCES `kved_ua` (`id`)
548 ON DELETE CASCADE
549) ENGINE=InnoDB;
550
551-- ---------------------------------------------------------------------
552-- subject
553-- ---------------------------------------------------------------------
554
555DROP TABLE IF EXISTS `subject`;
556
557CREATE TABLE `subject`
558(
559 `id` INTEGER NOT NULL AUTO_INCREMENT,
560 `sector_id` INTEGER NOT NULL,
561 `created_at` DATETIME,
562 `updated_at` DATETIME,
563 `slug` VARCHAR(255),
564 PRIMARY KEY (`id`),
565 UNIQUE INDEX `subject_slug` (`slug`(255)),
566 INDEX `subject_FI_1` (`sector_id`),
567 CONSTRAINT `subject_FK_1`
568 FOREIGN KEY (`sector_id`)
569 REFERENCES `sector` (`id`)
570 ON DELETE CASCADE
571) ENGINE=InnoDB;
572
573-- ---------------------------------------------------------------------
574-- subject_i18n
575-- ---------------------------------------------------------------------
576
577DROP TABLE IF EXISTS `subject_i18n`;
578
579CREATE TABLE `subject_i18n`
580(
581 `id` INTEGER NOT NULL,
582 `culture` VARCHAR(7) NOT NULL,
583 `name` VARCHAR(255) NOT NULL,
584 `meta_title` VARCHAR(255),
585 `meta_description` TEXT,
586 `meta_keywords` VARCHAR(255),
587 `page_description` TEXT,
588 PRIMARY KEY (`id`,`culture`),
589 CONSTRAINT `subject_i18n_FK_1`
590 FOREIGN KEY (`id`)
591 REFERENCES `subject` (`id`)
592 ON DELETE CASCADE
593) ENGINE=InnoDB;
594
595-- ---------------------------------------------------------------------
596-- subject_link
597-- ---------------------------------------------------------------------
598
599DROP TABLE IF EXISTS `subject_link`;
600
601CREATE TABLE `subject_link`
602(
603 `link_id` INTEGER NOT NULL,
604 `subject_id` INTEGER NOT NULL,
605 PRIMARY KEY (`link_id`,`subject_id`),
606 INDEX `subject_link_FI_2` (`subject_id`),
607 CONSTRAINT `subject_link_FK_1`
608 FOREIGN KEY (`link_id`)
609 REFERENCES `exhibition_link` (`id`)
610 ON DELETE CASCADE,
611 CONSTRAINT `subject_link_FK_2`
612 FOREIGN KEY (`subject_id`)
613 REFERENCES `subject` (`id`)
614 ON DELETE CASCADE
615) ENGINE=InnoDB;
616
617-- ---------------------------------------------------------------------
618-- sector
619-- ---------------------------------------------------------------------
620
621DROP TABLE IF EXISTS `sector`;
622
623CREATE TABLE `sector`
624(
625 `id` INTEGER NOT NULL AUTO_INCREMENT,
626 `events_count` INTEGER,
627 `created_at` DATETIME,
628 `updated_at` DATETIME,
629 `slug` VARCHAR(255),
630 `tree_left` INTEGER,
631 `tree_right` INTEGER,
632 `tree_level` INTEGER,
633 `deleted_at` DATETIME,
634 PRIMARY KEY (`id`),
635 UNIQUE INDEX `sector_slug` (`slug`(255))
636) ENGINE=InnoDB;
637
638-- ---------------------------------------------------------------------
639-- sector_i18n
640-- ---------------------------------------------------------------------
641
642DROP TABLE IF EXISTS `sector_i18n`;
643
644CREATE TABLE `sector_i18n`
645(
646 `id` INTEGER NOT NULL,
647 `culture` VARCHAR(7) NOT NULL,
648 `name` VARCHAR(255) NOT NULL,
649 `meta_title` VARCHAR(255),
650 `meta_description` TEXT,
651 `meta_keywords` VARCHAR(255),
652 `page_description` TEXT,
653 PRIMARY KEY (`id`,`culture`),
654 CONSTRAINT `sector_i18n_FK_1`
655 FOREIGN KEY (`id`)
656 REFERENCES `sector` (`id`)
657 ON DELETE CASCADE
658) ENGINE=InnoDB;
659
660-- ---------------------------------------------------------------------
661-- sector_product_group
662-- ---------------------------------------------------------------------
663
664DROP TABLE IF EXISTS `sector_product_group`;
665
666CREATE TABLE `sector_product_group`
667(
668 `sector_id` INTEGER NOT NULL,
669 `product_group_id` INTEGER NOT NULL,
670 PRIMARY KEY (`sector_id`,`product_group_id`),
671 INDEX `sector_product_group_FI_2` (`product_group_id`),
672 CONSTRAINT `sector_product_group_FK_1`
673 FOREIGN KEY (`sector_id`)
674 REFERENCES `sector` (`id`)
675 ON DELETE CASCADE,
676 CONSTRAINT `sector_product_group_FK_2`
677 FOREIGN KEY (`product_group_id`)
678 REFERENCES `product_group_ua` (`id`)
679 ON DELETE CASCADE
680) ENGINE=InnoDB;
681
682-- ---------------------------------------------------------------------
683-- sector_kved
684-- ---------------------------------------------------------------------
685
686DROP TABLE IF EXISTS `sector_kved`;
687
688CREATE TABLE `sector_kved`
689(
690 `sector_id` INTEGER NOT NULL,
691 `kved_id` INTEGER NOT NULL,
692 PRIMARY KEY (`sector_id`,`kved_id`),
693 INDEX `sector_kved_FI_2` (`kved_id`),
694 CONSTRAINT `sector_kved_FK_1`
695 FOREIGN KEY (`sector_id`)
696 REFERENCES `sector` (`id`)
697 ON DELETE CASCADE,
698 CONSTRAINT `sector_kved_FK_2`
699 FOREIGN KEY (`kved_id`)
700 REFERENCES `kved_ua` (`id`)
701 ON DELETE CASCADE
702) ENGINE=InnoDB;
703
704-- ---------------------------------------------------------------------
705-- link_sector
706-- ---------------------------------------------------------------------
707
708DROP TABLE IF EXISTS `link_sector`;
709
710CREATE TABLE `link_sector`
711(
712 `link_id` INTEGER NOT NULL,
713 `sector_id` INTEGER NOT NULL,
714 PRIMARY KEY (`link_id`,`sector_id`),
715 INDEX `link_sector_FI_2` (`sector_id`),
716 CONSTRAINT `link_sector_FK_1`
717 FOREIGN KEY (`link_id`)
718 REFERENCES `exhibition_link` (`id`)
719 ON DELETE CASCADE,
720 CONSTRAINT `link_sector_FK_2`
721 FOREIGN KEY (`sector_id`)
722 REFERENCES `sector` (`id`)
723 ON DELETE CASCADE
724) ENGINE=InnoDB;
725
726-- ---------------------------------------------------------------------
727-- parser
728-- ---------------------------------------------------------------------
729
730DROP TABLE IF EXISTS `parser`;
731
732CREATE TABLE `parser`
733(
734 `id` INTEGER NOT NULL AUTO_INCREMENT,
735 `step` INTEGER DEFAULT 1 NOT NULL,
736 `page` INTEGER DEFAULT 1 NOT NULL,
737 `next_page` INTEGER DEFAULT 1 NOT NULL,
738 `offset` INTEGER DEFAULT 0 NOT NULL,
739 `is_finished` TINYINT(1) DEFAULT 0 NOT NULL,
740 `created_at` DATETIME,
741 `updated_at` DATETIME,
742 PRIMARY KEY (`id`)
743) ENGINE=InnoDB;
744
745-- ---------------------------------------------------------------------
746-- order
747-- ---------------------------------------------------------------------
748
749DROP TABLE IF EXISTS `order`;
750
751CREATE TABLE `order`
752(
753 `id` INTEGER NOT NULL AUTO_INCREMENT,
754 `link_id` INTEGER NOT NULL,
755 `full_name` VARCHAR(255) NOT NULL,
756 `company` VARCHAR(255),
757 `user_type` enum('individual','tour','corporate') DEFAULT 'tour',
758 `phone` VARCHAR(255),
759 `email` VARCHAR(255),
760 `nb_men` VARCHAR(255),
761 `nb_apartment` VARCHAR(255),
762 `type` VARCHAR(255),
763 `comment` TEXT,
764 `data` TEXT,
765 `created_at` DATETIME,
766 `updated_at` DATETIME,
767 PRIMARY KEY (`id`,`link_id`),
768 INDEX `order_FI_1` (`link_id`),
769 CONSTRAINT `order_FK_1`
770 FOREIGN KEY (`link_id`)
771 REFERENCES `exhibition_link` (`id`)
772 ON DELETE CASCADE
773) ENGINE=InnoDB;
774
775-- ---------------------------------------------------------------------
776-- service
777-- ---------------------------------------------------------------------
778
779DROP TABLE IF EXISTS `service`;
780
781CREATE TABLE `service`
782(
783 `id` INTEGER NOT NULL AUTO_INCREMENT,
784 `image` VARCHAR(255),
785 `created_at` DATETIME,
786 `updated_at` DATETIME,
787 `sortable_rank` INTEGER,
788 PRIMARY KEY (`id`)
789) ENGINE=InnoDB;
790
791-- ---------------------------------------------------------------------
792-- service_i18n
793-- ---------------------------------------------------------------------
794
795DROP TABLE IF EXISTS `service_i18n`;
796
797CREATE TABLE `service_i18n`
798(
799 `id` INTEGER NOT NULL,
800 `culture` VARCHAR(7) NOT NULL,
801 `name` VARCHAR(255) NOT NULL,
802 `url` VARCHAR(255) NOT NULL,
803 PRIMARY KEY (`id`,`culture`),
804 CONSTRAINT `service_i18n_FK_1`
805 FOREIGN KEY (`id`)
806 REFERENCES `service` (`id`)
807 ON DELETE CASCADE
808) ENGINE=InnoDB;
809
810-- ---------------------------------------------------------------------
811-- news
812-- ---------------------------------------------------------------------
813
814DROP TABLE IF EXISTS `news`;
815
816CREATE TABLE `news`
817(
818 `id` INTEGER NOT NULL AUTO_INCREMENT,
819 `image` VARCHAR(255),
820 `country_id` INTEGER,
821 `created_at` DATETIME,
822 `updated_at` DATETIME,
823 `slug` VARCHAR(255),
824 PRIMARY KEY (`id`),
825 UNIQUE INDEX `news_slug` (`slug`(255)),
826 INDEX `news_FI_1` (`country_id`),
827 CONSTRAINT `news_FK_1`
828 FOREIGN KEY (`country_id`)
829 REFERENCES `country` (`id`)
830 ON DELETE CASCADE
831) ENGINE=InnoDB;
832
833-- ---------------------------------------------------------------------
834-- news_i18n
835-- ---------------------------------------------------------------------
836
837DROP TABLE IF EXISTS `news_i18n`;
838
839CREATE TABLE `news_i18n`
840(
841 `id` INTEGER NOT NULL,
842 `culture` VARCHAR(7) NOT NULL,
843 `title` VARCHAR(255) NOT NULL,
844 `description_short` TEXT,
845 `description` TEXT,
846 `seo_description` TEXT,
847 `seo_keywords` VARCHAR(255),
848 PRIMARY KEY (`id`,`culture`),
849 CONSTRAINT `news_i18n_FK_1`
850 FOREIGN KEY (`id`)
851 REFERENCES `news` (`id`)
852 ON DELETE CASCADE
853) ENGINE=InnoDB;
854
855-- ---------------------------------------------------------------------
856-- additional_service
857-- ---------------------------------------------------------------------
858
859DROP TABLE IF EXISTS `additional_service`;
860
861CREATE TABLE `additional_service`
862(
863 `id` INTEGER NOT NULL AUTO_INCREMENT,
864 `type` TINYINT DEFAULT 0 NOT NULL,
865 `order_type` VARCHAR(255),
866 `created_at` DATETIME,
867 `updated_at` DATETIME,
868 `sortable_rank` INTEGER,
869 `slug` VARCHAR(255),
870 PRIMARY KEY (`id`),
871 UNIQUE INDEX `additional_service_slug` (`slug`(255))
872) ENGINE=InnoDB;
873
874-- ---------------------------------------------------------------------
875-- additional_service_i18n
876-- ---------------------------------------------------------------------
877
878DROP TABLE IF EXISTS `additional_service_i18n`;
879
880CREATE TABLE `additional_service_i18n`
881(
882 `id` INTEGER NOT NULL,
883 `culture` VARCHAR(7) NOT NULL,
884 `name` VARCHAR(255) NOT NULL,
885 `button_title` VARCHAR(255),
886 `url` VARCHAR(255),
887 `description` TEXT,
888 `meta_title` VARCHAR(255),
889 `meta_description` TEXT,
890 `meta_keywords` VARCHAR(255),
891 PRIMARY KEY (`id`,`culture`),
892 CONSTRAINT `additional_service_i18n_FK_1`
893 FOREIGN KEY (`id`)
894 REFERENCES `additional_service` (`id`)
895 ON DELETE CASCADE
896) ENGINE=InnoDB;
897
898-- ---------------------------------------------------------------------
899-- additional_service_country
900-- ---------------------------------------------------------------------
901
902DROP TABLE IF EXISTS `additional_service_country`;
903
904CREATE TABLE `additional_service_country`
905(
906 `additional_service_id` INTEGER NOT NULL,
907 `country_id` INTEGER NOT NULL,
908 PRIMARY KEY (`additional_service_id`,`country_id`),
909 INDEX `additional_service_country_FI_2` (`country_id`),
910 CONSTRAINT `additional_service_country_FK_1`
911 FOREIGN KEY (`additional_service_id`)
912 REFERENCES `additional_service` (`id`)
913 ON DELETE CASCADE,
914 CONSTRAINT `additional_service_country_FK_2`
915 FOREIGN KEY (`country_id`)
916 REFERENCES `country` (`id`)
917 ON DELETE CASCADE
918) ENGINE=InnoDB;
919
920-- ---------------------------------------------------------------------
921-- manager
922-- ---------------------------------------------------------------------
923
924DROP TABLE IF EXISTS `manager`;
925
926CREATE TABLE `manager`
927(
928 `id` INTEGER NOT NULL AUTO_INCREMENT,
929 `phone` VARCHAR(255),
930 `email` VARCHAR(255),
931 `skype` VARCHAR(255),
932 `icq` VARCHAR(255),
933 `image` VARCHAR(255),
934 `created_at` DATETIME,
935 `updated_at` DATETIME,
936 PRIMARY KEY (`id`)
937) ENGINE=InnoDB;
938
939-- ---------------------------------------------------------------------
940-- manager_i18n
941-- ---------------------------------------------------------------------
942
943DROP TABLE IF EXISTS `manager_i18n`;
944
945CREATE TABLE `manager_i18n`
946(
947 `id` INTEGER NOT NULL,
948 `culture` VARCHAR(7) NOT NULL,
949 `name` VARCHAR(255) NOT NULL,
950 PRIMARY KEY (`id`,`culture`),
951 CONSTRAINT `manager_i18n_FK_1`
952 FOREIGN KEY (`id`)
953 REFERENCES `manager` (`id`)
954 ON DELETE CASCADE
955) ENGINE=InnoDB;
956
957-- ---------------------------------------------------------------------
958-- manager_country
959-- ---------------------------------------------------------------------
960
961DROP TABLE IF EXISTS `manager_country`;
962
963CREATE TABLE `manager_country`
964(
965 `manager_id` INTEGER NOT NULL,
966 `country_id` INTEGER NOT NULL,
967 PRIMARY KEY (`manager_id`,`country_id`),
968 INDEX `manager_country_FI_2` (`country_id`),
969 CONSTRAINT `manager_country_FK_1`
970 FOREIGN KEY (`manager_id`)
971 REFERENCES `manager` (`id`)
972 ON DELETE CASCADE,
973 CONSTRAINT `manager_country_FK_2`
974 FOREIGN KEY (`country_id`)
975 REFERENCES `country` (`id`)
976 ON DELETE CASCADE
977) ENGINE=InnoDB;
978
979-- ---------------------------------------------------------------------
980-- tag
981-- ---------------------------------------------------------------------
982
983DROP TABLE IF EXISTS `tag`;
984
985CREATE TABLE `tag`
986(
987 `id` INTEGER NOT NULL AUTO_INCREMENT,
988 `name` VARCHAR(255) NOT NULL,
989 `created_at` DATETIME,
990 `updated_at` DATETIME,
991 PRIMARY KEY (`id`),
992 INDEX `tag_name_idx` (`name`)
993) ENGINE=InnoDB;
994
995-- ---------------------------------------------------------------------
996-- tag_model
997-- ---------------------------------------------------------------------
998
999DROP TABLE IF EXISTS `tag_model`;
1000
1001CREATE TABLE `tag_model`
1002(
1003 `id` INTEGER NOT NULL AUTO_INCREMENT,
1004 `tag_id` INTEGER NOT NULL,
1005 `model` VARCHAR(255) NOT NULL,
1006 `model_id` INTEGER NOT NULL,
1007 PRIMARY KEY (`id`),
1008 INDEX `tag_model_FI_1` (`tag_id`),
1009 CONSTRAINT `tag_model_FK_1`
1010 FOREIGN KEY (`tag_id`)
1011 REFERENCES `tag` (`id`)
1012 ON DELETE CASCADE
1013) ENGINE=InnoDB;
1014
1015-- ---------------------------------------------------------------------
1016-- search
1017-- ---------------------------------------------------------------------
1018
1019DROP TABLE IF EXISTS `search`;
1020
1021CREATE TABLE `search`
1022(
1023 `id` INTEGER NOT NULL AUTO_INCREMENT,
1024 `text` VARCHAR(255) NOT NULL,
1025 `tag_id` INTEGER,
1026 `count` INTEGER DEFAULT 1,
1027 `created_at` DATETIME,
1028 `updated_at` DATETIME,
1029 PRIMARY KEY (`id`),
1030 INDEX `search_text_idx` (`text`),
1031 INDEX `search_FI_1` (`tag_id`),
1032 CONSTRAINT `search_FK_1`
1033 FOREIGN KEY (`tag_id`)
1034 REFERENCES `tag` (`id`)
1035 ON DELETE CASCADE
1036) ENGINE=InnoDB;
1037
1038# This restores the fkey checks, after having unset them earlier
1039SET FOREIGN_KEY_CHECKS = 1;