1. CREATE DATABASE
Crea una base de datos con el nombre
dado.
Sintaxis:
CREATE DATABASE
[IF NOT EXISTS] BaseDeDatos;
Ejemplo:
CREATE DATABASE IF NOT EXISTS nomina;
2. CREATE TABLE
Crea una tabla con el nombre dado.
Sintaxis:
CREATE TABLE [IF NOT EXISTS] tabla (
Campo1 TIPO(longitud) [NOT NULL o NULL],
Campo2
TIPO(longitud) [NOT NULL o NULL],
CampoN
TIPO(longitud) [NOT NULL o NULL],
FOREIGN KEY (CampoDeEstaTabla)
REFERENCES OtraTabla(CampodeOtraTabla)
Atributos de
columna
Atributo
|
Significado
|
NULL
|
Se permiten valores nulos, atributo por omisión
si no se especifica lo contrario.
|
NOT NULL
|
No se permiten valores nulos.
|
DEFAULT valor
|
Valor por omisión que se asigna a la columna.
|
AUTO_INCREMENT
|
El valor se asigna automáticamente incrementando
en uno el máximo valor registrado
hasta el momento.
|
PRIMARY KEY
|
Señala al campo como clave primaria,
implícitamente también lo declara como not null. Solo puede haber una sola
clave primaria por tabla.
|
Aunque la creación de una clave primaria puede
declararse como atributo de columna, es conveniente definirla como restricción
de tabla, como se verá enseguida.
Restricciones de
Tabla
Restricción
|
Significado
|
PRIMARY KEY
|
Define el campo que servirá como clave primaria.
|
UNIQUE
|
Define los campos en las que no pueden duplicar
valores.
|
FOREIGN KEY(Campo)
REFERENCES tabla2 (campo2)
|
Define un campo que es clave foránea en la tabla
actual y es clave principal en otra tabla. Esto asegura que no se realicen
referencias a registros que no existen.
|
Ejemplo:
CREATE TABLE IF NOT EXISTS empleado(
codigo INT(5) NOT NULL,
nombre VARCHAR(50) NOT NULL,
ingreso DATE NOT NULL,
num_hijos INT(2) UNSIGNED NOT NULL,
tipo ENUM("Fijo","Temporal") NOT NULL,
tiempo_contrato TINYINT(2) UNSIGNED DEFAULT 1 NOT NULL,
PRIMARY KEY(codigo)
) ENGINE=innodb;
3. ALTER TABLE
Cambia la estructura de una tabla
existente.
Sintaxis:
(Para agregar campos)
ALTER TABLE tabla ADD nuevocampo definicióndecampo [FIRST o AFTER campo]
(Para modificar campos)
ALTER TABLE tabla CHANGE actualnombredecampo nuevonombredecampo definicióndecampo [FIRST o AFTER campo]
(Para eliminar campos)
ALTER TABLE tabla DROP campo;
(Para agregar llave primaria)
ALTER TABLE tabla ADD PRIMARY KEY(campoprimario)
(Para eliminar llave primaria)
ALTER TABLE tabla DROP PRIMARY KEY;
(Para renombrar tabla)
ALTER TABLE actualnombredetabla RENAME nuevonombredetabla
Ejemplos:
Agrega a la tabla 'empleado' el campo 'sueldo' (con 5 enteros y dos decimales) luego del campo ingreso.
ALTER TABLE empleado ADD sueldo FLOAT(7,2) AFTER ingreso;
Modifica a la tabla 'empleado' el campo sueldo agregando NOT NULL.
ALTER TABLE empleado CHANGE sueldo sueldo FLOAT(7,2) NOT NULL;
Elimina de la tabla 'empleado' el campo 'ciudad'
ALTER TABLE empleado DROP ciudad;
Renombra la tabla 'empleado' como 'obrero'
ALTER TABLE empleado RENAME obrero;
Elimina de la tabla 'empleado' la llave primaria.
ALTER TABLE empleado DROP PRIMARY KEY;
Asignar al campo 'codigo' de la tabla 'empleado' como llave primaria.
ALTER TABLE empleado ADD PRIMARY KEY(codigo);
4. DROP TABLE
Borra una o más tablas.
Sintaxis:
DROP TABLE tabla
Ejemplo:
Borra la tabla 'empleados'.
DROP TABLE empleados
5. DROP DATABASE
Borra todas las tablas en la base de
datos y borra la base de datos
Sintaxis:
DROP DATABASE basededatos
Ejemplo:
Borra la base de datos 'nomina'
DROP DATABASE nomina