FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problema con sql Update
Hola tengo un problema desde hace algún tiempo que no consigo solucionar.
Tan sencillo como querer hacer un update en tablas que tienen claves foraneas. Esta es la estructura de una de ellas, que hace referencia de una tabla en cuestio. CREATE TABLE EDIAGHEM ( ESTUDIO INTEGER NOT NULL, ORDEN INTEGER NOT NULL, GRUPO VARCHAR (1) CHARACTER SET ISO8859_1 NOT NULL COLLATE ISO8859_1, DIAGNOSTICO VARCHAR (25) CHARACTER SET ISO8859_1 NOT NULL COLLATE ISO8859_1, GRADO VARCHAR (8) CHARACTER SET ISO8859_1 COLLATE ISO8859_1); /* Primary keys definition */ ALTER TABLE EDIAGHEM ADD PRIMARY KEY (ESTUDIO, ORDEN, GRUPO, DIAGNOSTICO); /* Foreign keys definition */ ALTER TABLE EDIAGHEM ADD FOREIGN KEY (GRUPO, DIAGNOSTICO) REFERENCES DIAGHEMO (GRUPO, DIAGNOSTICO); ALTER TABLE EDIAGHEM ADD FOREIGN KEY (ESTUDIO) REFERENCES ESTUDIO (ESTUDIO); /* Indices definition */ CREATE INDEX IDX_EDIAGHEM1 ON EDIAGHEM (GRUPO, DIAGNOSTICO); CREATE INDEX IDX_EDIAGHEM2 ON EDIAGHEM (ESTUDIO); No doy con la forma de deshabilitar las restricciones. Gracias por vuestro tiempo y ayuda. Un saludo. |
#2
|
||||
|
||||
si lo que quieres es asociar una acción al actualizar un campo que es foráneo en otra tabla deberás poner por ejemplo algo asi...
si lo que quieres es hacer un update de tus tablas sin contar con las restricciones que has definido debes borrar esas restricciones y luego volver a crearlas.... http://www.clubdelphi.com/foros/show...r+foreign+keys Última edición por tcp_ip_es fecha: 04-09-2008 a las 11:50:55. |
#3
|
|||
|
|||
Muchas gracias por responder tcp_ip_es.
Mi intención es la segunda. Voy a hechar un vistazo y os cuento |
#4
|
|||
|
|||
Cita:
Ahora me encuentro con un error diciendo que no reconoce el nombre de la restriccion : o eso creo: Violation foreign key constraint "***unknown***" on table EDIAGHEM Con el programa ibmanager veo que en restricciones aparece ademas de otros dos esta, que es la que me está dando pal pelo INTEG_78[ESTUDIO] Por tanto la sql que me da error es la siguiente: queryaux.SQL.add('alter table ediaghem drop constraint INTEG_78'); He probado con todas las combinaciones y no doy con ello. Un saludo y gracias. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problema con update | omarifr | SQL | 3 | 06-08-2007 23:28:38 |
Problema con Update y StoredProc | Stilgar | SQL | 5 | 15-05-2007 21:30:01 |
Problema con update | pache | Firebird e Interbase | 4 | 22-11-2006 21:08:06 |
Problema con Update e inner join | Leonardo | SQL | 1 | 06-06-2006 02:21:10 |
Problema con un update en un SP | RONPABLO | Firebird e Interbase | 3 | 09-03-2005 19:58:43 |
|