Vous êtes sur la page 1sur 8

Universidad Central de Venezuela Facultad de Ciencias Escuela de Computacin Bases de datos Taller #1 de MySQL PARTE I. Introduccin a MySQL 1. Qu es MySQL?

MySQL es un sistema de gestin de bases de datos relacional, licenciado bajo la GPL (La Licencia Pblica General) de la GNU. Su diseo multihilo le permite soportar una gran carga de forma muy eficiente. MySQL fue creado por la empresa sueca MySQL AB, que mantiene el copyright del cdigo fuente del servidor SQL, as como tambin de la marca. Aunque MySQL es software libre, MySQL AB distribuye una versin comercial de MySQL, que no se diferencia de la versin libre ms que en el soporte tcnico que se ofrece, y la posibilidad de integrar este gestor en un software propietario, ya que de no ser as, se violara la licencia GPL. Este gestor de bases de datos es, probablemente, el gestor ms usado en el mundo del software libre, debido a su gran rapidez y facilidad de uso. Esta gran aceptacin es debida, en parte, a que existen infinidad de libreras y otras herramientas que permiten su uso a travs de gran cantidad de lenguajes de programacin, adems de su fcil instalacin y configuracin.

2. Caractersticas de MySQL Las principales caractersticas de este gestor de bases de datos son las siguientes: 1. Aprovecha la potencia de sistemas multiprocesador, gracias a su implementacin multihilo. 2. Soporta gran cantidad de tipos de datos para las columnas. 3. Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc). 4. Gran portabilidad entre sistemas. 5. Gestin de usuarios y contraseas, manteniendo un muy buen nivel de seguridad en los datos.

3. Objetos de MySQL Tablas: Son la estructura de datos principal del manejador donde se almacena toda la informacin de las bases de datos. Estn constituidas por columnas o campos y filas que representan una entrada en la tabla. Claves: Son campos usados para identificar una fila. Por ejemplo, el nmero de cdula de una persona. 1 GDBD, II-2011

Vistas: Recuperan informacin de la base de datos cada vez que son ejecutadas. Son mostradas en forma de tablas. ndices: Son objetos que aceleran las operaciones de consulta y ordenacin sobre ciertos campos. Usuarios: Se refiere a las diferentes personas que trabajan o utilizan algn objeto de la base de datos.

4. Tipos de datos de MySQL Se agrupan en tres categoras: Numrico. Fecha. Cadena.

Numrico: Tipo Descripcin Tinyint Entero muy pequeo (3 dgitos) Smallint Entero pequeo (5 dgitos) Mediumint Entero (8 dgitos) Int o Integer Entero habitual (10 dgitos) Bigint Entero Largo (20 dgitos) Float Punto flotante de precisin simple de 4 bytes Double | Double precision | Real Punto flotante de precisin doble de 8 bytes Decimal, Numeric Flotante almacenado como cadena Tabla 1: Tipos de datos de MySQL Fecha: Tipo Date Time Datetime Timestamp Year Descripcin Fecha con formato AAAA-MM-DD Hora en formato HH:MM:SS Combinacin de fecha y hora. Formato: AAAA-MM-DD HH:MM:SS Formato: Aaaammddhhmmss (til para transacciones) Almacena un ao. Puede tener tamao 2 4 Tabla 2: Tipos de datos de MySQL

Cadena: Descripcin Char(n) Cadena de longitud fija con tamao de 0 a 255 Varchar(m) Cadena de longitud variable con tamao de 0 a 255 Text / Blob Texto pequeo / Datos binarios pequeo Mediumtext/ Mediumblob Texto / Binario normal Longtext / longblob Texto / Binario grande Tabla 3: Tipos de datos de MySQL Tipo

PARTE II. Comandos Principales 2 GDBD, II-2011

Una vez instalado el gestor, se puede dar inicio a la conexin con el servidor. Primeramente se solicita la contrasea del usuario root, la cual se corresponde a la que fue asignada en uno de los pasos previos, en la instalacin.

Luego de iniciar la sesin, se tiene a la disposicin la lnea de comandos de MySQL. Algunos de los comandos ms tiles son: Mostrar Las Bases de Datos existentes: mysql> show databases; Crear Base de Datos nueva: mysql>CREATE DATABASE [IF NOT EXIST] nombre_bd; Nota: para Indicar Base de Datos a trabajar; mysql>use nombre_bd; Usuario nuevo: mysql>CREATE USER usuario [IDENTIFIED BY *PASSWORD+ contrasea];

La Base de Datos actual: mysql> select database(); Usuario actual: mysql> select user(); Tablas contenidas en la Base de Datos: mysql>SHOW TABLES; Versin de MySQL utilizada: mysql> SELECT VERSION(); Ayuda: mysql> \help

PARTE IV. Parte Prctica 1. Crear una Tabla llamada Estudiante, que tenga los siguientes campos: cdula, nombre, apellido, edad, sexo, direccin. Ayuda: La sintaxis para crear una tabla es: 3 GDBD, II-2011

PARTE V. Modificar la estructura de una tabla La modificacin de la estructura de las tablas con el uso de ALTER permite entre otras cosas: - Aadir nuevas columnas. - Aadir restricciones a una columna, en este caso la tabla no debe contener datos (entre las restricciones se incluye la definicin de las claves primarias y forneas).

Tabla Crear CREATE TABLE nombre_tabla (nombre_col1 tipo_dato1 [PRIMARY KEY], .. nombre_col_n tipo_dato_n); DROP TABLE tabla;

Eliminar:

Columnas Anadir: Eliminar ALTER TABLE tabla ADD nom_columna tipo; (columnas ALTER TABLE tabla DROP COLUMN campo1, DROP COLUMN campo2, ;

que no son claves forneas):

Clave Primaria Eliminar: ALTER TABLE tabla DROP PRIMARY KEY;

Especificar la clave ALTER TABLE tabla ADD CONSTRAINT nom_constraint PRIMARY KEY primaria tabla: de una (campo);

Clave Fornea Especificar fornea tabla: Eliminar: ALTER TABLE tabla DROP FOREIGN KEY nom_constraint; de clave ALTER TABLE tabla ADD CONSTRAINT nom_constraint FOREIGN KEY (campo) una REFERENCES table (campo);

GDBD, II-2011

Para agregar condiciones de dominio a los campos de la tabla: ALTER TABLE tabla ADD CONSTRAINT nom_constraint CHECK (condicin);

Si no se recuerda qu nombre se le coloc al constraint, se puede invocar al comando: SHOW CREATE TABLE tabla;

Con la salida de dicha sentencia, se pueden ver las definiciones de claves forneas de la tabla. Renombrar las tablas (RENAME): RENAME TABLE tabla_vieja TO tabla_nueva;

PARTE VI. Insercin, eliminacin, seleccin, modificacin y actualizacin de datos 1 - INSERCIN: 1.1 - Manual: Si se desea aadir un registro a la vez, se usa la sentencia INSERT. En la manera ms simple, se debe proporcionar un valor para cada columna en el orden en el cual fueron listados en la sentencia CREATE TABLE. INSERT INTO tabla VALUES (valor_campo1, valor_campo2, ); Ejemplo: Suponiendo que se crea la tabla persona: CREATE TABLE persona (cdula VARCHAR(8) PRIMARY KEY, nombre VARCHAR(20), apellido VARCHAR(30), edad INT, sexo CHAR(1), direccin text, fecha_nacimiento DATE,

fecha_fallecimiento DATE); Para insertar un registro, se hara de la siguiente manera: INSERT INTO persona VALUES(5546378 , 'Jaimito', 'Perez', 22, M, Calle 13, La Urbina, '19881-31', NULL); 1.2 - Cargar datos desde un archivo externo: Para cargar el contenido del archivo en la tabla persona, se usa el siguiente comando: LOAD DATA LOCAL INFILE ruta_archivo/nombre_archivo INTO TABLE tabla; El nombre del archivo incluye la extensin (ejemplo: personas.txt). 5 GDBD, II-2011

La sentencia LOAD DATA permite especificar cul es el separador de columnas, y el separador de registros, por defecto el tabulador es el separador de columnas (campos), y el salto de lnea es el separador de registros, que en este caso son suficientes para que la sentencia LOAD DATA lea correctamente el archivo que se le indica.

2 - ELIMINACIN: Para borrar todos los registros de una tabla: DELETE FROM tabla;

Para borrar un registro que satisface una condicin: DELETE FROM tabla WHERE condicin; 3 - SELECCIN: A veces se quiere saber qu registros se han insertado en una tabla en especfico, para ello se hace uso de la sentencia SELECT. SELECT * FROM tabla; El * indica que se desean ver todas las columnas de esa tabla. Si se desea ver una columna en especfico, sencillamente se sustituye ese * por el nombre de la columna.

4 - MODIFICACIN / ACTUALIZACIN: Es posible querer actualizar algn dato que ya fue almacenado en la tabla, esto se logra con el comando UPDATE. UPDATE tabla SET campo=nuevo_valor WHERE condicin; Ejemplo: Suponiendo que ya se insert un registro en la tabla persona mencionada anteriormente, y se desea modificar la direccin de Jaimito: UPDATE persona SET direccin = Los Samanes WHERE nombre=Jaimito; Modificar la estructura de las tablas La modificacin de la estructura de las tablas con el uso de ALTER permite entre otras cosas: - Aadir nuevas columnas. 6 GDBD, II-2011

- Aadir restricciones a una columna, en este caso la tabla no debe contener datos (entre las restricciones se incluye la definicin de las claves primarias y forneas). Sintaxis: Para agregar condiciones de dominio a los campos de la tabla ALTER TABLE tabla ADD CONSTRAINT nom_constraint CHECK (condicin); Para especificar la clave primaria en una tabla: ALTER TABLE tabla ADD CONSTRAINT nom_constraint PRIMARY KEY (campo); Para especificar una clave fornea en una tabla: ALTER TABLE tabla ADD CONSTRAINT nom_constraint FOREIGN KEY (campo) REFERENCES table (campo); Para aadir campos a una tabla: ALTER TABLE tabla ADD nom_columna tipo [(tamao)] ; Para eliminar columnas: ALTER TABLE tabla DROP COLUMN campo; Para eliminar restricciones (CONSTRAINTS): ALTER TABLE tabla DROP CONSTRAINT nom_constraint; Renombrar las tablas (RENAME): RENAME tabla_vieja TO tabla_nueva; Para eliminar una tabla determinada: DROP TABLE tabla; Un caso especial se presenta si la relacin a ser eliminada est referenciada por claves forneas en otra(s) relacin(es). En este caso, se debe hacer la llamada de la siguiente manera: DROP TABLE tabla CASCADE CONSTRAINTS; De esta manera se eliminarn todas las tuplas en otras relaciones que referencien a la clave primaria de la relacin a ser eliminada. Si no se incluye el parmetro CASCADE CONSTRAINTS y existe alguna referencia a una tupla que se eliminar, se retornar un mensaje de error y no eliminar la relacin. Borra un registro: DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name [WHERE where_definition];

Script SQL de la Base de Datos Importar: en la lnea de comandos del MySql ejecuten lo siguiente: mysql> source <ruta_del_archivo/archivo.sql>; La ruta y nombre de archivo que crearon, lo colocan tal cual, sin <>. 7 GDBD, II-2011

Puede copiar la ruta del archivo o muy bien arrastrar el archivo que desean importar a la lnea de comandos. Nota: Si la ruta junto con el archivo es: C:\Documents and Settings\respaldo.sql Los "\" deben cambiarlos por "/"... porque sino les dara error. Exportar: Para los que necesitan importar su script sql, En la terminal de windows: mysqldump -u nombre_usuario -p nombre_bd > nombre_archivo.sql

GDBD, II-2011

Vous aimerez peut-être aussi