]> git.llucax.com Git - software/sercom.git/blobdiff - doc/schema/schema.sql
todo
[software/sercom.git] / doc / schema / schema.sql
index 6e8fefcc7d12ac6e835ecf690c01311ca444b986..babaa5d392c73254bba4d094c7243ddee0112f54 100644 (file)
@@ -47,11 +47,17 @@ CREATE TABLE dependencia (
 
 CREATE TABLE enunciado (
     id INTEGER PRIMARY KEY,
 
 CREATE TABLE enunciado (
     id INTEGER PRIMARY KEY,
-    nombre VARCHAR(60) NOT NULL UNIQUE,
-    descripcion VARCHAR(255),
+    nombre VARCHAR(60) NOT NULL,
+    anio INTEGER NOT NULL,
+    cuatrimestre INTEGER NOT NULL,
     autor_id INT CONSTRAINT autor_id_exists REFERENCES docente(id),
     autor_id INT CONSTRAINT autor_id_exists REFERENCES docente(id),
-    creado TIMESTAMP NOT NULL
+    descripcion VARCHAR(255),
+    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),
 
 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,
     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)
     retorno INT,
     tiempo_cpu FLOAT,
     descripcion VARCHAR(255)