-
Notifications
You must be signed in to change notification settings - Fork 0
/
MySQL -gestion de pasantia-scrit.sql
122 lines (108 loc) · 2.71 KB
/
MySQL -gestion de pasantia-scrit.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
-- crea la base de datos pasantia
create database gestionPasantia;
-- Tabla Universidad
CREATE TABLE Universidad (
ID INT PRIMARY KEY,
Nombre VARCHAR(255)
);
-- Tabla Recinto
CREATE TABLE Recinto (
ID INT PRIMARY KEY,
Nombre VARCHAR(255),
UniversidadID INT,
FOREIGN KEY (UniversidadID) REFERENCES Universidad(ID)
);
-- Tabla Carrera
CREATE TABLE Carrera (
ID INT PRIMARY KEY,
Nombre VARCHAR(255)
);
-- Tabla CarreraRecinto
CREATE TABLE CarreraRecinto (
ID INT PRIMARY KEY,
CarreraID INT,
RecintoID INT,
FOREIGN KEY (CarreraID) REFERENCES Carrera(ID),
FOREIGN KEY (RecintoID) REFERENCES Recinto(ID)
);
-- Tabla Empresa
CREATE TABLE Empresa (
ID INT PRIMARY KEY,
Nombre VARCHAR(255),
Descripcion TEXT,
Ubicacion VARCHAR(255),
CorreoContacto VARCHAR(255),
TelefonoContacto VARCHAR(20),
Estado VARCHAR(255)
);
-- Tabla Rol
CREATE TABLE Rol (
ID INT PRIMARY KEY,
Nombre VARCHAR(255)
);
-- Tabla Usuario
CREATE TABLE Usuario (
ID INT PRIMARY KEY,
CorreoElectronico VARCHAR(255),
Contrasena VARCHAR(255),
RolID INT,
UniversidadID INT,
FOREIGN KEY (RolID) REFERENCES Rol(ID),
FOREIGN KEY (UniversidadID) REFERENCES Universidad(ID)
);
-- Tabla Estudiante
CREATE TABLE Estudiante (
ID INT PRIMARY KEY,
UsuarioID INT,
Nombre VARCHAR(255),
Apellido VARCHAR(255),
RecintoID INT,
TrimestreActual INT,
EmpresaPreferidaID INT,
Matricula VARCHAR(255),
FOREIGN KEY (UsuarioID) REFERENCES Usuario(ID),
FOREIGN KEY (RecintoID) REFERENCES Recinto(ID),
FOREIGN KEY (EmpresaPreferidaID) REFERENCES Empresa(ID)
);
-- Tabla Pasantia
CREATE TABLE Pasantia (
ID INT PRIMARY KEY,
Titulo VARCHAR(255),
Descripcion TEXT,
Requisitos TEXT,
FechaInicio DATE,
Duracion INT,
CarreraID INT,
EmpresaID INT,
Estado VARCHAR(255),
FOREIGN KEY (CarreraID) REFERENCES Carrera(ID),
FOREIGN KEY (EmpresaID) REFERENCES Empresa(ID)
);
-- Tabla SolicitudPasantia
CREATE TABLE SolicitudPasantia (
ID INT PRIMARY KEY,
EstudianteID INT,
PasantiaID INT,
EmpresaSugeridaID INT,
FechaSolicitud DATE,
Estado VARCHAR(255),
FOREIGN KEY (EstudianteID) REFERENCES Estudiante(ID),
FOREIGN KEY (PasantiaID) REFERENCES Pasantia(ID),
FOREIGN KEY (EmpresaSugeridaID) REFERENCES Empresa(ID)
);
-- Tabla AsignaturaOptativa
CREATE TABLE AsignaturaOptativa (
ID INT PRIMARY KEY,
Nombre VARCHAR(255),
InformacionAdicional TEXT,
CarreraID INT,
FOREIGN KEY (CarreraID) REFERENCES Carrera(ID)
);
-- Tabla Logs
CREATE TABLE Logs (
ID INT PRIMARY KEY,
UsuarioID INT,
FechaHora TIMESTAMP,
Actividad TEXT,
FOREIGN KEY (UsuarioID) REFERENCES Usuario(ID)
);