[+/-]
Suponiendo que se ha iniciado el cliente MySQL con el comando
mysql test
, para crear una tabla
InnoDB
se debe especificar la opción
ENGINE = InnoDB
o TYPE =
InnoDB
en la sentencia SQL de creación de tabla:
CREATE TABLE customers (a INT, b CHAR (20), INDEX (a)) ENGINE=InnoDB; CREATE TABLE customers (a INT, b CHAR (20), INDEX (a)) TYPE=InnoDB;
La sentencia SQL crea una tabla y un índice en la columna
a
en el espacio de tablas
InnoDB
que consiste en los ficheros de datos
especificados en my.cnf
. Adicionalmente,
MySQL crea un fichero customers.frm
en el
directorio test
debajo del directorio de
bases de datos de MySQL. Internamente, InnoDB
agrega a su propio diccionario de datos una entrada para la tabla
'test/customers'
. Esto significa que puede
crearse una tabla con el mismo nombre customers
en otra base de datos, y los nombres de las tablas no entrarán en
conflicto dentro de InnoDB
.
Se puede consultar la cantidad de espacio libre en el espacio de
tablas InnoDB
dirigiendo una sentencia
SHOW TABLE STATUS
para cualquier tabla
InnoDB
. La cantidad de espacio libre en el
espacio de tablas aparece en la sección
Comment
en la salida de SHOW TABLE
STATUS
. Un ejemplo:
SHOW TABLE STATUS FROM test LIKE 'customers'
Nótese que las estadísticas que SHOW
muestra
acerca de las tablas InnoDB
son solamente
aproximadas. Se utilizan en la optimización SQL. No obstante, los
tamaños en bytes reservados para las tablas e índices son
exactos.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.