· 9 years ago · Jan 26, 2017, 11:40 AM
1create database if not exists comisaria;
2use comisaria;
3
4# Borrado de tablas
5DROP TABLE IF EXISTS arma;
6DROP TABLE IF EXISTS arresta;
7DROP TABLE IF EXISTS involucrado;
8DROP TABLE IF EXISTS caso;
9DROP TABLE IF EXISTS policia;
10DROP TABLE IF EXISTS delincuente;
11DROP TABLE IF EXISTS calabozo;
12
13# Creación de tablas
14CREATE TABLE policia (
15 dniPoli int PRIMARY KEY,
16 nombrePoli varchar(50),
17 funcion varchar(25),
18 categoria int,
19 dniJefe int,
20 foreign key (dniJefe) references policia(dniPoli) ON DELETE RESTRICT ON UPDATE CASCADE
21);
22
23CREATE TABLE arma (
24 codArma int primary key,
25 nomArma varchar(50),
26 clase varchar(10),
27 dniPoli int,
28 foreign key (dniPoli) references policia(dniPoli) ON DELETE RESTRICT ON UPDATE CASCADE
29);
30
31CREATE TABLE caso (
32 codCaso int primary key,
33 juzgado varchar(50)
34);
35
36CREATE TABLE calabozo (
37 codCalab int primary key,
38 ubicacion varchar(25)
39);
40
41CREATE TABLE delincuente (
42 dniDelin int primary key,
43 nombre varchar(50),
44 direccion varchar(100),
45 telefono int,
46 codCalab int,
47 foreign key (codCalab) references calabozo(codCalab) ON DELETE RESTRICT ON UPDATE CASCADE
48);
49
50CREATE TABLE involucrado (
51 dniDelin int,
52 codCaso int,
53 cargo varchar(50),
54 PRIMARY KEY (dniDelin, codCaso),
55 foreign key (dniDelin) references delincuente(dniDelin) ON DELETE CASCADE ON UPDATE CASCADE,
56 foreign key (codCaso) references caso(codCaso) ON DELETE CASCADE ON UPDATE CASCADE
57);
58
59CREATE TABLE arresta (
60 dniPoli int,
61 dniDelin int,
62 fecha date,
63 primary key (dniPoli, dniDelin, fecha),
64 foreign key (dniPoli) references policia(dniPoli) ON DELETE CASCADE ON UPDATE CASCADE,
65 foreign key (dniDelin) references delincuente(dniDelin) ON DELETE CASCADE ON UPDATE CASCADE
66);
67
68# Insertado de datos
69insert into policia values
70(1,'Juan Perez','oficina',1,null),
71(2,'Luisa Garcia','oficina',2,1),
72(3,'Miguel Martinez','oficina',1,1),
73(4,'Antonio Lopez','patrulla',2,null),
74(5,'Pepe Castillo','patrulla',1,4),
75(6,'Juan Fernandez','patrulla',2,4),
76(7,'Maria Lopez','trafico',1,null),
77(8,'Manuel Delgado','trafico',2,7),
78(9,'Fernando Fernandez','trafico',2,7);
79
80insert into arma values
81(11,'ak47','fusil',4),
82(12,'ak47','fusil',5),
83(13,'asalto','fusil',7),
84(21,'m3','pistola',7),
85(22,'z55','pistola',8),
86(23,'m2','pistola',9);
87
88insert into calabozo values
89(1,'ala derecha'),
90(2,'ala derecha'),
91(3,'ala izquierda');
92
93insert into delincuente values
94(11,'Mario Profugo','Granada',666231321,1),
95(12,'Pelaez','Granada',666231555,1),
96(13,'El Barto','Armilla',666321111,1),
97(14,'Miguel Ruiz','Maracena',666555444,2),
98(15,'Luis Aguilera','Granada',666898989,2),
99(16,'Pepe Maletas','Granada',666111444,2),
100(17,'Paco Machacasaurio','Guadix',611222222,3);
101
102insert into arresta values
103(4,11,'2010-01-01'),
104(5,12,'2011-02-02'),
105(6,13,'2010-02-02'),
106(4,12,'2012-03-03'),
107(5,14,'2014-01-01'),
108(6,14,'2014-03-03'),
109(7,15,'2012-09-09'),
110(7,16,'2012-09-09'),
111(7,13,'2012-09-09'),
112(4,17,'2010-01-01'),
113(4,14,'2011-02-02');
114
115insert into caso values
116(1,'pendiente'),
117(2,'finalizado'),
118(3,'en curso'),
119(4,'parado'),
120(5,'finalizado'),
121(6,'en curso'),
122(7,'en curso'),
123(8,'finalizado');
124
125insert into involucrado values
126(11,1,'acusado'),
127(17,1,'complice'),
128(12,2,'culpable'),
129(14,2,'culpable'),
130(15,3,'acusado'),
131(16,3,'acusado'),
132(13,3,'acusado'),
133(15,5,'culpable'),
134(16,5,'inocente'),
135(12,7,'acusado'),
136(17,8,'inocente');