· 6 years ago · Mar 11, 2019, 12:14 AM
1DROP TABLE IF EXISTS jc_student_child;
2DROP TABLE IF EXISTS jc_student_order;
3DROP TABLE IF EXISTS jc_passport_office;
4DROP TABLE IF EXISTS jc_register_office;
5DROP TABLE IF EXISTS jc_country_struct;
6DROP TABLE IF EXISTS jc_street;
7CREATE TABLE jc_street
8(
9 street_code integer not null,
10 street_name varchar(300),
11 PRIMARY KEY (street_code)
12);
13CREATE TABLE jc_country_struct
14(
15 area_id char(12) not null,
16 area_name varchar(200),
17 PRIMARY KEY (area_id)
18);
19CREATE TABLE jc_passport_office
20(
21 p_office_id integer not null,
22 p_office_area_id char(12) not null,
23 p_office_name varchar(200),
24 PRIMARY KEY (p_office_id),
25 FOREIGN KEY (p_office_area_id) REFERENCES jc_country_struct(area_id) ON DELETE RESTRICT
26);
27CREATE TABLE jc_register_office
28(
29 r_office_id integer not null,
30 r_office_area_id char(12) not null,
31 r_office_name varchar(200),
32 PRIMARY KEY (r_office_id),
33 FOREIGN KEY (r_office_area_id) REFERENCES jc_country_struct(area_id) ON DELETE RESTRICT
34);
35CREATE TABLE jc_student_order
36(
37 student_order_id SERIAL,
38 student_order_status int not null,
39 student_order_date timestamp not null,
40 h_sur_name varchar(100) not null,
41 h_given_name varchar(100) not null,
42 h_patronymic varchar(100) not null,
43 h_date_of_birth date not null,
44 h_passport_seria varchar(10) not null,
45 h_passport_number varchar(10) not null,
46 h_passport_date date not null,
47 h_passport_office_id integer not null,
48 h_post_index varchar(10),
49 h_street_code integer not null,
50 h_building varchar(10) not null,
51 h_extension varchar(10),
52 h_apartment varchar(10),
53 w_sur_name varchar(100) not null,
54 w_given_name varchar(100) not null,
55 w_patronymic varchar(100) not null,
56 w_date_of_birth date not null,
57 w_passport_seria varchar(10) not null,
58 w_passport_number varchar(10) not null,
59 w_passport_date date not null,
60 w_passport_office_id integer not null,
61 w_post_index varchar(10),
62 w_street_code integer not null,
63 w_building varchar(10) not null,
64 w_extension varchar(10),
65 w_apartment varchar(10),
66 certificate_id varchar(20) not null,
67 register_office_id integer not null,
68 marriage_date date not null,
69 PRIMARY KEY (student_order_id),
70 FOREIGN KEY (h_street_code) REFERENCES jc_street(street_code) ON DELETE RESTRICT,
71 FOREIGN KEY (w_street_code) REFERENCES jc_street(street_code) ON DELETE RESTRICT,
72 FOREIGN KEY (register_office_id) REFERENCES jc_register_office(r_office_id) ON DELETE RESTRICT
73);
74CREATE TABLE jc_student_child
75(
76 student_child_id SERIAL,
77 student_order_id integer not null,
78 c_sur_name varchar(100) not null,
79 c_given_name varchar(100) not null,
80 c_patronymic varchar(100) not null,
81 c_date_of_birth date not null,
82 c_certificate_number varchar(10) not null,
83 c_certificate_date date not null,
84 c_register_office_id integer not null,
85 c_post_index varchar(10),
86 c_street_code integer not null,
87 c_building varchar(10) not null,
88 c_extension varchar(10),
89 c_apartment varchar(10),
90 PRIMARY KEY (student_child_id),
91 FOREIGN KEY (c_street_code) REFERENCES jc_street(street_code) ON DELETE RESTRICT,
92 FOREIGN KEY (c_register_office_id) REFERENCES jc_register_office(r_office_id) ON DELETE RESTRICT
93);
94
95INSERT INTO jc_street (street_code, street_name) VALUES
96(1, 'улица ÐеженÑкаÑ'),
97(2, 'улица ÐевÑкаÑ'),
98(3, 'проÑпект КоÑмонавта Комарова'),
99(4, 'улица Ðлектриков'),
100(5, 'улица Льва ТолÑтого');
101
102INSERT INTO jc_country_struct (area_id, area_name) VALUES
103('010000000000', 'Киев'),
104('010010000000', 'Киев СоломенÑкий район'),
105('010020000000', 'Киев СвÑтошинÑкий район'),
106('010030000000', 'Киев Дарницкий район'),
107('010040000000', 'Киев ПодольÑкий район'),
108
109('020000000000', 'Район'),
110('020010000000', 'Район СоломенÑкий ПоÑеление 1'),
111('020010010000', 'Район СоломенÑкий ПоÑеление 2'),
112('020010010001', 'Район СвÑтошинÑкий ПоÑеление 1'),
113('020010010002', 'Район СвÑтошинÑкий ПоÑеление 2'),
114('020010020000', 'Район Дарницкий ПоÑеление 1'),
115('020010020001', 'Район Дарницкий ПоÑеление 2'),
116('020010020002', 'Район ПодольÑкий ПоÑеление 1'),
117('020010020003', 'Район ПодольÑкий ПоÑеление 2'),
118('020020000000', 'Район ОболонÑкий ПоÑеление 1'),
119('020020010000', 'Район ОболонÑкий ПоÑеление 2'),
120('020020010001', 'Район ГолоÑеевÑкий ПоÑеление 1'),
121('020020010002', 'Район ГолоÑеевÑкий ПоÑеление 2'),
122('020020010003', 'Район ДнепровÑкий ПоÑеление 1'),
123('020020020000', 'Район ДнепровÑкий ПоÑеление 2'),
124('020020020001', 'Район ДеÑнÑнÑкий ПоÑеление 1'),
125('020020020002', 'Район ДеÑнÑнÑкий ПоÑеление 2');
126
127INSERT INTO jc_passport_office (p_office_id, p_office_area_id, p_office_name)
128VALUES
129(1, '010010000000', 'ПаÑпортный Ñтол СоломенÑкого района'),
130(2, '010020000000', 'ПаÑпортный Ñтол СвÑтошинÑкого района'),
131(3, '010020000000', 'ПаÑпортный Ñтол Дарницкого района'),
132(4, '010010000000', 'ПаÑпортный Ñтол ПодольÑкого района'),
133(5, '020010010001', 'ПаÑпортный Ñтол ОболонÑкого района'),
134(6, '020010020002', 'ПаÑпортный Ñтол ДнепровÑкого района'),
135(7, '020020010000', 'ПаÑпортный Ñтол ПечерÑкого района'),
136(8, '020020020000', 'ПаÑпортный Ñтол ШевченковÑкого района');
137
138INSERT INTO jc_register_office (r_office_id, r_office_area_id, r_office_name) VALUES
139(1, '010010000000', 'ЗÐГС СоломенÑкого района'),
140(2, '010010000000', 'ЗÐГС СвÑтошинÑкого района'),
141(3, '010020000000', 'ЗÐГС Дарницкого района'),
142(4, '020010010001', 'ЗÐГС ПодольÑкого района'),
143(5, '020010020002', 'ЗÐГС ОболонÑкого района'),
144(6, '020020010000', 'ЗÐГС ПечерÑкого района'),
145(7, '020020020000', 'ЗÐГС ШевченковÑкого района');