Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Table Storage engine for 'socios' doesn't have this Option

Estas en el tema de Table Storage engine for 'socios' doesn't have this Option en el foro de Mysql en Foros del Web. Compañeros(as). Me decidi a trabajar y hacer mis pruebas de Mysql estoy ocupando un programa llamado SQLyog free MySql y hice un script (con ayuda ...
  #1 (permalink)  
Antiguo 18/04/2006, 07:53
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años, 8 meses
Puntos: 0
Table Storage engine for 'socios' doesn't have this Option

Compañeros(as).

Me decidi a trabajar y hacer mis pruebas de Mysql estoy ocupando un programa llamado SQLyog free MySql y hice un script (con ayuda de Internet) donde consulta si el usuario que se esta ingresando esta en la base de datos, el asunto que no tengo poblada mi base de datos, entonces para eso en forma manual ingrese un usuario en mi base de datos, pero al llenar los campos y guardar los cambios me arroja este error y nose porque:

Table Storage engine for 'socios' doesn't have this Option

Al parecer es algun privilegio o alguna option que se me olvido habilitar o algo asi, de todas formas esta es la estructura de mi Base de Datos.

Table Create Table
------ ------------------------------------------------------------------------
socios CREATE TABLE `socios` (
`id` tinyint(4) NOT NULL auto_increment,
`nombreusuario` tinytext NOT NULL,
`email` tinytext NOT NULL,
`password` varchar(15) NOT NULL,
`reppass` varchar(15) NOT NULL,
`nombre` tinytext NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC UNION=()

ojala puedan orientarme ...desde ya se los agradesco.

PD: Tambien me paso lo mismo ocupando PhpMyadmin.

Saludos desde Viña del Mar, CHILE
  #2 (permalink)  
Antiguo 18/04/2006, 09:32
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 19 años
Puntos: 5
La tabla que estas creando es de tipo MRG_MyISAM (ENGINE=MRG_MyISAM ), lo cual significa que no puedes insertar en esa tabla, es una tabla MERGE, que quiere decir que solo sirve para unir tablas de tipo MyIsam que tengan la misma estructura, es decir que en realidad no te faltan permisos en la tabla, mas bien es que esa tabla no es cambiable, la que si puedes cambiar es las tablas que esta uniendo esa tabla, aqui te dejo un ejemplo, de mysql:
Código PHP:
//
mysqlCREATE TABLE t1 (
    ->    
a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->    
message CHAR(20)) ENGINE=MyISAM;
mysqlCREATE TABLE t2 (
    ->    
a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ->    
message CHAR(20)) ENGINE=MyISAM;
mysqlINSERT INTO t1 (messageVALUES ('Testing'),('table'),('t1');
mysqlINSERT INTO t2 (messageVALUES ('Testing'),('table'),('t2');
mysqlCREATE TABLE total (
    ->    
a INT NOT NULL AUTO_INCREMENT,
    ->    
message CHAR(20), INDEX(a))
    ->    
ENGINE=MR_MyISAM UNION=(t1,t2INSERT_METHOD=LAST
como se ve se puede insertar en las tablas t1 y t2 y la tabla total es la union de esas tablas (UNION=(t1,t2) ), cabe recalcar que t1 y t2 tienen la misma estructura que total , espero que esto te ayude a tener mas claro el funcionamiento de las tablas de tipo MERGE o MRG_MyISAM, saludos, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #3 (permalink)  
Antiguo 18/04/2006, 10:23
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años, 8 meses
Puntos: 0
Gracias compañero por tu respuesta...me dejaste mas aproblemado pero en fin hay que seguir investigando ...una pregunta como yo puedo hacer una tabla normal osea que no dependa de dos tablas para formar una ultima o que la tabla que se este creando no sirva para union de otras.

¿Seria tan Facil de borrar esa linea?
ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC UNION=()

Pero supongo que deberia reemplazarla por otra linea similar ....¿Creo?

Gracias nuevamente

Saludos desde Viña del Mar, CHILE
  #4 (permalink)  
Antiguo 18/04/2006, 10:34
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 19 años
Puntos: 5
Si quieres crear tablas normales pero sin control de llaves foraneas con otras tablas puedes usar MyIsam, si quieres tener el control de integridad referencial (llaves foraneas), puedes usar InnoDB:
Código PHP:
//
CREATE TABLE `socios` (
`
idtinyint(4NOT NULL auto_increment,
`
nombreusuariotinytext NOT NULL,
`
emailtinytext NOT NULL,
`
passwordvarchar(15NOT NULL,
`
reppassvarchar(15NOT NULL,
`
nombretinytext NOT NULL,
PRIMARY KEY (`id`)
ENGINE=MyISAM DEFAULT CHARSET=latin1;

CREATE TABLE `socios` (
`
idtinyint(4NOT NULL auto_increment,
`
nombreusuariotinytext NOT NULL,
`
emailtinytext NOT NULL,
`
passwordvarchar(15NOT NULL,
`
reppassvarchar(15NOT NULL,
`
nombretinytext NOT NULL,
PRIMARY KEY (`id`)
TYPE=InnoDB DEFAULT CHARSET=latin1
ahi te dejo como cambiaria tu tabla con MyIsam y otra con InnoDB, por cierto puedes usar ENGINE o TYPE indistintamente, suerte, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:43.