craven78
Machacateclados
Machacateclados

hola amigos de mi@,

tengo una tabla padre y una tabla hija(ON DELETE SET NULL):


create table Themes ( ThemeID int primary key, ThemeName varchar(100) );
create table Users ( UserID int primary key, UserName varchar(100), ThemeID int, constraint Users_ThemeID_FK foreign key (ThemeID) references Themes(ThemeID) on delete set null);

Si en lugar de usar ON DELETE SET NULL(que me funciona perfectamente:t) ) en la tabla hija, utilizo ON DELETE SET DEFAULT:

create table Users ( UserID int primary key, UserName varchar(100), ThemeID int DEFAULT 00, constraint Users_ThemeID_FK foreign key (ThemeID) references Themes(ThemeID) on delete set default);

MySQL no me deja crear la tabla¡¡:?) ¡, me devuelve el error "ERROR 1215 (HY000): Cannot add foreign key constraint"

El comando SHOW ENGINE INNODB STATUS; me dice "...Syntax error close to: default)"

He leido en foros sobre este error pero no soy capaz de solucionarlo ¿me podeis echar una mano para solucionarlo?

Gracias, saludos:x)

Avatar Image
@man / @woman
@man / @woman

Hola Craven78, revisa la documentación de ayuda de la versión de MySql que estás utilizando.

En las que uso yo (5.0 y 5.1) el SET DEFAULT el motor de InnoDB jamás ejecutará esa sentencia (a pesar que las reconoce y parsea sin error).

craven78
Machacateclados
Machacateclados

Gracias por tu erspuesta GestionXLS,

yo uso la version 5.6 y tmpoko me deja usar el SET DEFAULT, aunque no entiendo eso de k "la reconoce pero no funciona en InnoDB", ¿significa que en futuras vesiones piodria funcionar o como? entiendo k no funciona(lo dice en el manual, y eso va a  misa:8) ), lo k no entiendo bien es la razon k da(funciona pero no funciona¿?)

el comportamiento de SET DEFAULT es similar al de SET NULL, sin embargo esta ultima funciona en mySQL pero la primera no ¿tan "distintas" son como para que una funcione y otra no?

como te digo(el manual va a misa), pero la razon no m convence mucho(no parece haberla).....un saludo gestionXLS:x)

Avatar Image
@man / @woman
@man / @woman

La reconoce, pero no la ejecuta significa que la sintaxis está dentro del SQL, pero que no está impleentada para ejecutarse.

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
TemaUsuariosRespuestasVisitasActividad
Por: , el 10/Nov/2014, 18:46
craven78 GestionXls SUPER_MAV Karoladiabla Ivanmartel19951532kMar/19
Por: , el 21/Feb/2011, 09:55
Pirra_18 GestionXls32kFeb/11
Por: , el 20/Dic/2009, 17:41
Diego_09om MallorcaTickets NoSetup.org42kMar/10