]> git.llucax.com Git - software/sercom.git/blobdiff - doc/schema/schema.sql
todo
[software/sercom.git] / doc / schema / schema.sql
index 8a94cdb8673ceffdee56e3e98e78bf18f4a791f0..babaa5d392c73254bba4d094c7243ddee0112f54 100644 (file)
@@ -47,11 +47,17 @@ CREATE TABLE dependencia (
 
 CREATE TABLE enunciado (
     id INTEGER PRIMARY KEY,
-    nombre VARCHAR(60) NOT NULL UNIQUE,
-    autor_id INT NOT NULL CONSTRAINT autor_id_exists REFERENCES docente(id),
+    nombre VARCHAR(60) NOT NULL,
+    anio INTEGER NOT NULL,
+    cuatrimestre INTEGER NOT NULL,
+    autor_id INT CONSTRAINT autor_id_exists REFERENCES docente(id),
     descripcion VARCHAR(255),
-    creado TIMESTAMP NOT NULL
+    creado TIMESTAMP NOT NULL,
+    archivo BLOB DEFAULT NULL,
+    archivo_name VARCHAR(255) DEFAULT NULL,
+    archivo_type VARCHAR(255) DEFAULT NULL
 );
+CREATE UNIQUE INDEX enunciado_pk ON enunciado (nombre, anio, cuatrimestre);
 
 CREATE TABLE enunciado_tarea (
     enunciado_id INTEGER NOT NULL CONSTRAINT enunciado_id_exists REFERENCES enunciado(id),
@@ -64,7 +70,7 @@ CREATE TABLE caso_de_prueba (
     id INTEGER PRIMARY KEY,
     enunciado_id INT CONSTRAINT enunciado_id_exists REFERENCES enunciado(id),
     nombre VARCHAR(40) NOT NULL,
-    parametros TEXT NOT NULL,
+    parametros VARCHAR(255) DEFAULT NULL,
     retorno INT,
     tiempo_cpu FLOAT,
     descripcion VARCHAR(255)