Colección de comandos básicos mysql (Parte 2)

- Cargar datos en una tabla mediante un archivo (por defecto el tabulador es el separador de columnas):
LOAD DATA LOCAL INFILE "archivo.txt" INTO TABLE nombre_tabla;

Nota: Obviamente tenemos que crear previamente el .txt con los datos de la tabla.

- Cargar datos en una tabla mediante un archivo (si esta en otro directorio):
LOAD DATA LOCAL INFILE "/home/Desktop/archivo.txt" INTO TABLE nombre_tabla;

- Ejemplo colocando la "," como separador de columnas e indicando las lineas que comiencen con "xxx":
LOAD DATA LOCAL INFILE "/tmp/archivo.txt" INTO TABLE nombre_tabla FIELDS TERMINATED BY ',' LINES STARTING BY 'xxx';

- Muestra el conjunto de carateres:
SHOW CHARACTER SET;

- Crear base de datos:
CREATE DATABASE nombre_BD;

- Ejemplo con codificación utf8:
CREATE DATABASE nombre_BD CHARACTER SET utf8;

- Para ver el tipo de codificación y caracteristicas en la BD:
SHOW CREATE DATABASE nombre_BD;

- Eliminar Bases de Datos:
DROP DATABASE nombre_BD;

- Crear tabla:

Sintaxis:
CREATE TABLE nombre_tabla(campo CHAR(10));

Ejemplo:
CREATE TABLE tabla1(nombre CHAR(30), apellido varchar(20), nacimiento (date), edad int);

- Ejemplo dandole a los campos valores nulos:
CREATE TABLE nombre_tabla(nombre CHAR(20) NOT NULL, poblacion INT NULL);

- Creando tabla con campo de auto incremento y llave primaria:
CREATE TABLE nombre_tabla(clave INT AUTO_INCREMENT PRIMARY KEY, nombre CHAR(20) NOT NULL, poblacion INT NULL);

- Creando tabla con un valor por defecto:
CREATE TABLE nombre_tabla(nombre CHAR(20) NOT NULL, poblacion INT NULL DEFAULT 5000);

- Creando tabla con comentarios:
CREATE TABLE nombre_tabla(nombre CHAR(20) NOT NULL COMMENT 'Aqui va el comentario', poblacion INT(3) NULL);

- Creando tabla con llave primaria:
CREATE TABLE alumnos(ClaveAlumno int(4), nombre varchar(20), PRIMARY KEY (ClaveAlumno));

- Creando llave foranea:

Sintaxis:
CREATE TABLE nombre_BD(ClaveLibro int(6), Clave_Alum int(4), titulo varchar(30), PRIMARY KEY(ClaveLibro), FOREIGN KEY (Campo) REFERENCES otra_BD(Campo_otra_tabla));

Ejemplo:
CREATE TABLE libros(ClaveLibro int(6), Clave_Alum int(4), titulo varchar(30), PRIMARY KEY(ClaveLibro), FOREIGN KEY (Clave_Alum) REFERENCES alumnos(ClaveAlumno));

- Creando tabla con un index (INDEX=KEY):
CREATE TABLE mi_tabla(id INT, nombre CHAR(19), INDEX (nombre));

- Este ejemplo usará sólo los cuatro primeros caracteres de la columna 'nombre' para crear el índice:
CREATE TABLE mitabla(id INT, nombre CHAR(19), INDEX (nombre(4)));

-Crear tabla con ON DELETE y ON UPDATE (CASCADE, SET NULL, NO ACTION, RESTRICT, SET DEFAULT(no es soportado por tablas InnoDB)):

CREATE TABLE alumnos(ClaveAlumno int(4), nombre varchar(20), PRIMARY KEY (ClaveAlumno));

CREATE TABLE libros(ClaveLibro int(6), Clave_Alum int(4), titulo varchar(30), PRIMARY KEY(ClaveLibro), FOREIGN KEY (Clave_Alum) REFERENCES alumnos(ClaveAlumno) ON DELETE CASCADE ON UPDATE CASCADE);

- Para borrar la clave foranea en la tabla:
ALTER TABLE nombre_tabla DROP FOREIGN KEY codigo_CONSTRAINT;

- Para verifcar las caracteristicas de la tabla creada:
SHOW CREATE TABLE nombre_tabla;

- Para ver indices de una tabla:
SHOW INDEX FROM nombre_tabla;

- Para añadir un indice en una tabla ya creada:
ALTER TABLE nombre_tabla ADD INDEX nombre_indice (columna_indexada);

- Para eliminar un indice:
ALTER TABLE tabla_nombre DROP INDEX nombre_indice;

- Añadir una llave foranea en una tabla ya creada:
ALTER TABLE nombre_tabla ADD FOREIGN KEY (campo) REFERENCES nombre_tabla2 (campo);

- Añadir clave foranea y restricciones de tabla (que actualice en cascada y que no pueda borrar):
ALTER TABLE libros ADD FOREIGN KEY (Clave_Alum) REFERENCES alumnos(ClaveAlumno) ON UPDATE CASCADE ON DELETE RESTRICT;

- Añadir un atributo a una tabla:
ALTER TABLE nombre_tabla ADD nuevo_campo varchar(12);

- Elimina el atributo de una tabla:
ALTER TABLE nombre_tabla DROP campo_a_borrar CASCADE;

- Renombrar una tabla:
ALTER TABLE viejo_nombre RENAME nuevo_nombre;

- Cambiar el tipo de campo (columna, atributo) por otro (de char a int not null):
ALTER TABLE nombre_tabla MODIFY nombre_campo INT NOT NULL;

- Cambiar el nombre de un campo:
ALTER TABLE nombre_tabla CHANGE viejo_nombre_campo nuevo_nombre_campo char(10);

- Eliminar la llave primaria:
ALTER TABLE nombre_tabla DROP PRIMARY KEY;

- Eliminar la llave unique:
ALTER TABLE nombre_tabla DROP UNIQUE nombre_constraint;

- Exportar una base de datos (en la consola):
myslqdump -u root -p nombre_BD > /home/usuario/Respaldo.sql

- Importar una base de datos:
myslq -u root -p nombre_BD < /home/usuario/Respaldo.sql


Nota: Antes de importar, cear la base de datos primero.

0 comentarios

Publicar un comentario

Escribe aquí abajo tu comentario...