PDA

Ver la Versión Completa : MySQL 5.0 e integridad referencial


HombreSigma
02-07-2004, 23:18:29
Según leia la versión nueva de MySql beta manejaba integridad referencial.

Sin embargo, la he probado y permite usar las instrucciones ALTER TABLE ADD FOREIGN ...., para crear las reglas, pero cuando se viola la integridad referencial pareciera que MySql no hiciera ningún tipo de control como sería de esperarse.

Baje la versión incorrecta ?

Gracias por la información.

edgusano
15-07-2004, 01:26:31
Segun lo que has dicho, parece que aun las tablas de typo MYISAM no les han inplementado la integridad referencial, por lo visto, debes seguir trabajando con las tablas tipo InnoDB.

HombreSigma
20-07-2004, 05:46:11
Estoy utilizando el formato para crear tablas Innodb como sigue:
Create Table NombreTabla (Col1,Col2 , ..., primary key(Colx)) type = innodb;

Pero cuando le doy el comando alter table add foreign key me saca un extraño error numero 150.

Y no me deja crear la integridad referencial.

No es posible crear toda la base de datos como innodb?

Gracias por la información.

reyneli
20-07-2004, 14:06:22
si que es posible pero en el create table

HombreSigma
21-07-2004, 04:41:56
Cuando doy la instruccion para crear la integridad referencial en dos tablas "innodb" obtengo un mensaje de error como abajo:


alter table Tabla1
add foreign key(col) references Tabla2(col)

ERROR 1005 (HY000): Can't create table '.\hola\#sql-d78_3a.frm' (errorno: 1050)


Gracias por la información.

HombreSigma
26-07-2004, 04:10:22
Este tema ya está resuelto en pregunta similar que hice posteriormente.

Ofrezco disculpas por haberla repetido.

umber
19-04-2005, 13:45:46
No te recomiendo hacer toda la bd del tipo innodb porque para hacer la integridad referncial mysql crea un espacio de trabajo aparte (el .frm ese que sale en el error) y eso no es bueno para el rendimiento general de la bd. Al menos eso pone en el manual de mysql ;)