Advertisement
Guest User

Untitled

a guest
Nov 11th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.29 KB | None | 0 0
  1. CREATE TABLE REGION (
  2. id INTEGER NOT NULL,
  3. nombre VARCHAR2(30) NOT NULL,
  4. id_padre INTEGER,
  5. CONSTRAINT region_pk PRIMARY KEY ( id ),
  6. CONSTRAINT fk_region FOREIGN KEY (id_padre) REFERENCES REGION (id)
  7. );
  8.  
  9. CREATE TABLE PAIS (
  10. id INTEGER NOT NULL,
  11. nombre VARCHAR2(30) NOT NULL,
  12. area VARCHAR2(30),
  13. poblacion INTEGER NOT NULL,
  14. id_region INTEGER NOT NULL,
  15. CONSTRAINT pais_pk PRIMARY KEY ( id ),
  16. CONSTRAINT fk_pais FOREIGN KEY (id_region) REFERENCES REGION (id)
  17. );
  18.  
  19. CREATE TABLE FRONTERA (
  20. id_pais INTEGER NOT NULL,
  21. id_pais2 INTEGER NOT NULL,
  22. CONSTRAINT frontera_pk PRIMARY KEY (id_pais,id_pais2),
  23. CONSTRAINT fk_frontera1 FOREIGN KEY (id_pais) REFERENCES PAIS (id),
  24. CONSTRAINT fk_frontera2 FOREIGN KEY (id_pais2) REFERENCES PAIS (id)
  25. );
  26.  
  27. CREATE TABLE INVENTO (
  28. id INTEGER NOT NULL,
  29. nombre VARCHAR2(30) NOT NULL,
  30. id_pais INTEGER NOT NULL,
  31. CONSTRAINT invento_pk PRIMARY KEY (id),
  32. CONSTRAINT fk_invento FOREIGN KEY (id_pais) REFERENCES PAIS (id)
  33. );
  34.  
  35. CREATE TABLE INVENTOR (
  36. id INTEGER NOT NULL,
  37. nombre VARCHAR2(30) NOT NULL,
  38. salario NUMBER(10, 2),
  39. comision NUMBER(5, 2),
  40. fecha DATE NOT NULL,
  41. nacionalidad INTEGER NOT NULL,
  42. CONSTRAINT inventor_pk PRIMARY KEY (id),
  43. CONSTRAINT fk_inventor FOREIGN KEY (nacionalidad) REFERENCES PAIS (id)
  44. );
  45.  
  46. CREATE TABLE INVENCION (
  47. id_invento INTEGER NOT NULL,
  48. id_inventor INTEGER NOT NULL,
  49. CONSTRAINT invencion_pk PRIMARY KEY (id_invento,id_inventor),
  50. CONSTRAINT fk_invencion1 FOREIGN KEY (id_invento) REFERENCES INVENTO (id),
  51. CONSTRAINT fk_invencion2 FOREIGN KEY (id_inventor) REFERENCES INVENTOR (id)
  52. );
  53.  
  54. CREATE TABLE CPM (
  55. id INTEGER NOT NULL,
  56. id_jefe INTEGER NOT NULL,
  57. CONSTRAINT cpm_pk PRIMARY KEY (id),
  58. CONSTRAINT fk_cpm FOREIGN KEY (id_jefe) REFERENCES INVENTOR (id)
  59. );
  60.  
  61. CREATE TABLE AREA_INVESTIGACION (
  62. id INTEGER NOT NULL,
  63. nombre VARCHAR2(30) NOT NULL,
  64. descripcion CLOB NOT NULL,
  65. ranking INTEGER,
  66. cpm INTEGER NOT NULL,
  67. id_jefe INTEGER NOT NULL,
  68. CONSTRAINT check_a CHECK(ranking BETWEEN 0 and 10),
  69. CONSTRAINT area_pk PRIMARY KEY (id),
  70. CONSTRAINT fk_area FOREIGN KEY (cpm) REFERENCES CPM (id),
  71. CONSTRAINT fk_area2 FOREIGN KEY (id_jefe) REFERENCES INVENTOR (id)
  72. );
  73.  
  74. CREATE TABLE ASIGNACION (
  75. id_inventor INTEGER NOT NULL,
  76. id_area INTEGER NOT NULL,
  77. CONSTRAINT asignacion_pk PRIMARY KEY (id_area,id_inventor),
  78. CONSTRAINT fk_asignacion1 FOREIGN KEY (id_inventor) REFERENCES INVENTOR (id),
  79. CONSTRAINT fk_asignacion2 FOREIGN KEY (id_area) REFERENCES AREA_INVESTIGACION (id)
  80. );
  81.  
  82. CREATE TABLE TEMA (
  83. id INTEGER NOT NULL,
  84. nombre VARCHAR2(30) NOT NULL,
  85. CONSTRAINT tema_pk PRIMARY KEY (id)
  86. );
  87.  
  88. CREATE TABLE ENCUESTA (
  89. id INTEGER NOT NULL,
  90. id_tema INTEGER NOT NULL,
  91. fecha DATE,
  92. CONSTRAINT encuesta_pk PRIMARY KEY (id),
  93. CONSTRAINT fk_encuesta FOREIGN KEY (id_tema) REFERENCES TEMA (id)
  94. );
  95.  
  96. CREATE TABLE CONTESTACION (
  97. id_pais INTEGER NOT NULL,
  98. id_encuesta INTEGER NOT NULL,
  99. CONSTRAINT contestacion_pk PRIMARY KEY (id_pais,id_encuesta),
  100. CONSTRAINT fk_cntestacion1 FOREIGN KEY (id_pais) REFERENCES PAIS (id),
  101. CONSTRAINT fk_cntestacion2 FOREIGN KEY (id_encuesta) REFERENCES ENCUESTA (id)
  102. );
  103.  
  104. CREATE TABLE PREGUNTA (
  105. id INTEGER NOT NULL,
  106. pregunta CLOB NOT NULL,
  107. id_encuesta INTEGER NOT NULL,
  108. CONSTRAINT pregunta_pk PRIMARY KEY (id),
  109. CONSTRAINT fk_pregunta FOREIGN KEY (id_encuesta) REFERENCES ENCUESTA (id)
  110. );
  111.  
  112. CREATE TABLE RESPUESTA (
  113. respuesta CLOB NOT NULL,
  114. id_pregunta INTEGER NOT NULL,
  115. id INTEGER NOT NULL,
  116. CONSTRAINT respuesta_pk PRIMARY KEY (id),
  117. CONSTRAINT fk_respuesta FOREIGN KEY (id_pregunta) REFERENCES PREGUNTA (id)
  118. );
  119.  
  120. CREATE TABLE RESPUESTA_SEL (
  121. id_contestacion INTEGER NOT NULL,
  122. id_respuesta INTEGER NOT NULL,
  123. CONSTRAINT respuestas_pk PRIMARY KEY (id_contestacion,id_respuesta),
  124. CONSTRAINT fk_respuestas3 FOREIGN KEY (id_respuesta) REFERENCES RESPUESTA (id)
  125. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement