Ver Mensaje Individual
  #18 (permalink)  
Antiguo 03/01/2013, 18:26
educdd
 
Fecha de Ingreso: octubre-2012
Ubicación: Madrid
Mensajes: 67
Antigüedad: 12 años
Puntos: 1
Respuesta: problema al crear una tabla

Tras mirar un poco he encontrado lo que creo que sería la solución:

Crear una secuencia, un trigger que se ejecuta cada vez que se crea una linea en la tabla y que esa secuencia haga de indice en la tabla.

Código SQL:
Ver original
  1. CREATE SEQUENCE IdRest
  2. START WITH  1
  3. INCREMENT BY 1;
  4.  
  5. CREATE OR REPLACE TRIGGER rest_trigger
  6. BEFORE INSERT ON Restaurante
  7. FOR EACH ROW
  8. BEGIN
  9.       SELECT IdRest.NEXTVAL INTO :NEW.id FROM dual;
  10. END;
  11.  
  12. CREATE TABLE Restaurante
  13. (
  14.     id INTEGER PRIMARY KEY NOT NULL,
  15.     nombre VARCHAR(60) NOT NULL,
  16.     direccion VARCHAR(100) NOT NULL,    
  17.     coord_X FLOAT,
  18.     coord_Y FLOAT,
  19.     puntuacion FLOAT
  20. );

Pero sigo con problemillas, ya que no me crea el trigger. eso que he escrito estaría bien??

Gracias!!

Última edición por gnzsoloyo; 07/01/2013 a las 12:11