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.
