P. 1
Introduccion a MySql

Introduccion a MySql

|Views: 207|Likes:
Publicado pornetharlex

More info:

Published by: netharlex on Apr 22, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/28/2013

pdf

text

original

MySQL Introducción

1

Crescencio Bravo

Contenidos
1 ¿Qué es MySQL? 2 El SQL de MySQL 3 Tutorial Básico de MySQL 4 Manual de SQL 5 Características avanzadas 6 Herramientas básicas de administración
mysqladmin mysql

MySQL: Introducción

7 Resumen 8 Ejercicios

2

1 ¿Qué es MySQL? (i)
Un SGBD
Relacional De código abierto

MySQL: Introducción

Características generales: generales
Es rápido Fiable Fácil de usar Muy adecuado para aplicaciones en Internet Soporta arquitectura C/S y sistemas embebidos Hay disponible gran cantidad de software que soportan MySQL

3

1 ¿Qué es MySQL? (ii)
Principales vendedores y BD:
Microsoft MySQL AB PostgreSQL Oracle Sybase Inc IBM IBM SQL Server 2000 EE

MySQL: Introducción

http://www.microsoft.com/spain/servidores/sql

MySQL Database Server 4 PostgreSQL 8

http://www.mysql.com/products/mysql/index.html

http://www.postgresql.com

Oracle 9i EE Database

http://otn.oracle.com/products/oracle9i/index.html

Adaptive Server Enterprise (ASE) 12.5.1
http://www.sybase.com/products/databaseservers/ase

Informix Standard Engine DB2 8.1
http://www-5.ibm.com/es/software/db2

http://www-3.ibm.com/software/data/informix/se

4

sistema operativo o librería Ejemplo más conocido: Linux Las bases de datos Open Source ya juegan en “Primera División” PostgreSQL es también un ejemplo de BD de código abierto 5 .1 ¿Qué es MySQL? (iii) BD Open Source: Source MySQL: Introducción MySQL es una base de datos Open Source (Código Abierto) y por lo tanto de coste gratuito Código Abierto: Movimiento que promulga el derecho de los Abierto usuarios a tener libre acceso al código fuente con el que se desarrolle cualquier aplicación.

1 ¿Qué es MySQL? (iv) Comparativas – Productividad: MySQL: Introducción 6 .

1 ¿Qué es MySQL? (v) Comparativas – Tiempo de respuesta: MySQL: Introducción 7 .

1 ¿Qué es MySQL? (vi) En 2003-2004. MySQL… MySQL: Introducción Velocidad/Rendimiento Bajo consumo Utilidades de administración Probabilidad reducida de corromper los datos Apache+PHP+MySQL en foros/buscadores de aplicaciones Carece de soporte para transacciones. rollbacks y subconsultas No maneja integridad referencial No es viable para grandes bases de datos con accesos continuos (mala escalabilidad) 8 .

) Soporta transacciones Árboles B muy rápidos (compresión de índices) Sistema de gestión de memoria muy eficiente Joins optimizados Servidor separado para arquitecturas C/S o como librería . juego de caracteres y ordenación) 9 embebida C / C++ Multiplataforma Soporta multi-hilo (hilos del kernel) APIs para muchos lenguajes (C++. Java. PHP. Python.1 ¿Qué es MySQL? (vii) Características detalladas (MySQL 5): 5) MySQL: Introducción Muchos tipos de columnas. registros de longitud fija y variable Amplio abanico de sentencias y funciones Posibilidad de mezclar tablas de BD diferentes Sistema de privilegios y passwords Manejo de BD muy grandes 64 índices por tabla. índices de hasta 16 columnas. Perl. etc. máxima longitud de índice de 1000 bytes Conectores ODBC y Java Soporte de internacionalización (mensajes.

table) Tipos de campos: MEDIUMINT.2 El SQL de MySQL MySQL soporta ANSI SQL y otros modos de SQL Extensiones a SQL estándar: ndar MySQL: Introducción Los nombres de BD y tablas son sensibles a mayúsculas (de acuerdo al SO) Las cadenas se pueden encerrar entre “ o ‘ Se puede acceder a tablas de diferentes BD (db. ZEROFILL Se aceptan los operadores || y && Comparaciones entre cadenas: No sensibles a mayúsculas/minúsculas % es sinónimo de MOD() Cada BD se localiza en un directorio del directorio de datos Cada tabla se localiza en un fichero Muchas sentencias tienen una funcionalidad ampliada. existen nuevas funciones Algunas otras se comportan de forma diferente 10 . BINARY. BLOB. NULL. ENUM. UNSIGNED. SET. TEXT Modificadores de tipos: AUTO_INCREMENT.

3 Tutorial Básico de MySQL (i) Conexión al servidor: servidor MySQL: Introducción Desconexión: Introducción de consultas: consultas 11 .

3 Tutorial Básico de MySQL (ii) Utilización de una BD: BD MySQL: Introducción Creación de una BD: BD Creación de una tabla: tabla 12 .

3 Tutorial Básico de MySQL (iii) Estructura de una tabla: tabla MySQL: Introducción Recuperación de información: 13 .

3 Tutorial Básico de MySQL (iv) Selección de determinadas filas: filas MySQL: Introducción Selección de columnas: columnas 14 .

3 Tutorial Básico de MySQL (v) Ordenación de filas: filas MySQL: Introducción Contar y agrupar: agrupar 15 .

3 Tutorial Básico de MySQL (vi) Operaciones con fechas: fechas MySQL: Introducción Información de bases de datos y tablas: tablas 16 .

3 Tutorial Básico de MySQL (vii) Versión de MySQL: MySQL mysql -V MySQL: Introducción Ejecución en modo batch: 17 .

5e10 Valores lógicos Valor nulo: NULL Nombres: MySQL: Introducción 18 .45. ‘cadena de caracteres’ 123.4 Manual de SQL: Estructura del lenguaje (i) Literales: “cadena”.

4 Manual de SQL: Estructura del lenguaje (ii) Comentarios: Comentarios MySQL: Introducción 19 .

4 Manual de SQL: Tipos de columnas Tipos de columnas de ANSI SQL: SQL MySQL: Introducción 20 .

1 por defecto TINYINT[(M)] [UNSIGNED] [ZEROFILL] : -122 a 127 (unsigned: 0 a 255) BOOL. el número de dígitos que siguen a la coma p: Precisión en bits [ ]: opcional BIT[(M)] : Campo de bits. M (1 a 64) indica el nº de bits. BOOLEAN : Sinónimos para TINYINT(1). cualquier otra cosa es verdadero SMALLINT[(M)] [UNSIGNED] [ZEROFILL] : -32768 a 32767 (unsigned: 0 a 65535) MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL] : -8388608 a 8388607 (unsigned: 0 a 16777215) INT[(M)] [UNSIGNED] [ZEROFILL] : -2147483648 a 2147483647 (unsigned: 0 a 4294967295) INTEGER[(M)] [UNSIGNED] [ZEROFILL] : Sinónimo para INT 21 . 0 es falso.4 Manual de SQL: Tipos Numéricos (i) Notación: MySQL: Introducción M: Ancho de visualización máximo (nº total de dígitos decimales) D: En tipos en coma flotante y de coma fija.

175494351E-38 a 3. M=10. FIXED[(M[. El nº aproximado de decimales es 15 DOUBLE PRECISION[(M. Por defecto.D)] [UNSIGNED] [ZEROFILL] : Sinónimos para DOUBLE FLOAT(p) [UNSIGNED] [ZEROFILL] DECIMAL[(M[. M<=65.2250738585072014E-308. DEC[(M[.D])] [UNSIGNED] [ZEROFILL].4 Manual de SQL: Tipos Numéricos (ii) MySQL: Introducción INTEGER[(M)] [UNSIGNED] [ZEROFILL] : Sinónimo para INT BIGINT[(M)] [UNSIGNED] [ZEROFILL] : -9223372036854775808 a 9223372036854775807 (unsigned: 0 a 18446744073709551615) FLOAT[(M.D)] [UNSIGNED] [ZEROFILL] : -1.2250738585072014E-308 a 1.402823466E+38.7976931348623157E+308 a -2.D])] [UNSIGNED] [ZEROFILL] : Sinónimos para DECIMAL 22 .D)] [UNSIGNED] [ZEROFILL]. D=0. 0 y 2. NUMERIC[(M[.D])] [UNSIGNED] [ZEROFILL]. D<=30. 0 y 1.402823466E+38 a 1.7976931348623157E+308. El nº aproximado de decimales es 7 DOUBLE[(M.175494351E-38.D])] [UNSIGNED] [ZEROFILL] : Un nº en coma fija empaquetado.D)] [UNSIGNED] [ZEROFILL] : -3. REAL[(M.

4 Manual de SQL: Tipos Numéricos (iii) Necesidades de almacenamiento: almacenamiento MySQL: Introducción 23 .

de '1970-01-01 00:00:00' hasta el año 2037. de '1000-01-01 00:00:00' a '9999-12-31 23:59:59'. en formato 'YYYY' Necesidades de almacenamiento: almacenamiento 24 .4 Manual de SQL: Tipos Fecha y Hora MySQL: Introducción DATE: Fecha. de '1000-01-01' a '9999-12-31'. en formato 'YYYY-MM-DD HH:MM:SS' Útil para recoger la fecha y hora de una operación INSERT o UPDATE TIME: Hora. en formato 'YYYY-MM-DD HH:MM:SS' TIMESTAMP[(M)]: Un sello temporal. MySQL muestra las fechas en el formato 'YYYY-MM-DD' DATETIME: Fecha y hora. en formato 'HH:MM:SS' YEAR[(2|4)]: Año en formato de 2 ó 4 dígitos. de 1901 a 2155. de '-838:59:59' to '838:59:59. incluido el año 0.

.'value2'. el rango de M es de 0 a 65535 BINARY y VARBINARY son similares pero contienen cadenas binarias.'value2'. MEDIUMTEXT y LONGTEXT Permite cuatro subtipos: TINYBLOB. TEXT[(M)] : Secuencia de caracteres con una longitud máxima de 65535 caracteres Permite cuatro subtipos: TINYTEXT. MEDIUMBLOB y LONGBLOB ENUM('value1'.) : Un conjunto.4 Manual de SQL: Tipos Cadena (i) Notación: M: nº de caracteres MySQL: Introducción [NATIONAL] CHAR(M) [BINARY | ASCII | UNICODE] : Cadena de longitud fija que se completa con espacios en blanco por la derecha. en lugar de cadenas de caracteres BLOB[(M)] : Objeto binario con una longitud máxima de 65535 bytes.. 25 . SET('value1'.. Un objeto de tipo cadena que puede tener un único valor elegido de la lista de valores. TEXT. Un objeto cadena que puede tener 0 o más valores.. el rango de M es de 0 a 255 [NATIONAL] VARCHAR(M) [BINARY] : Cadena de longitud variable.. BLOB. cada uno elegido de la lista de valores.) : Una enumeración..

4 Manual de SQL: Tipos Cadena (ii) Necesidades de almacenamiento: almacenamiento MySQL: Introducción 26 .

4 Manual de SQL: Compatibilidad con otros Tipos Equivalencias con otras BD: BD MySQL: Introducción 27 .

4 Manual de SQL: Funciones (i) Operadores relacionales: relacionales >. >=. IS NOT NULL ISNULL(expr) expr BETWEEN min AND max. <=. AND. IS NULL. expr2. OR. ||. && Funciones de control del flujo: flujo IF(expr1. expr NOT BETWEEN min AND max … MySQL: Introducción Operadores lógicos: gicos NOT. !. !=. <. <>. expr3) … 28 .

str2. pos. incluido cero caracteres _ coincide exactamente con un caracter 29 . …) LENGTH(str) LEFT(str. len) SUBSTRING(str. LCASE(str). len) UCASE(str). puede contener dos tipos de comodines: % coincide con cualquier nº de caracteres. UPPER(str). len) RIGHT(str. RCASE(str) … MySQL: Introducción expr LIKE pat pat es el patrón con el que comparar.4 Manual de SQL: Funciones (ii) Funciones de cadenas de caracteres: caracteres CONCAT(str1.

/ MySQL: Introducción Funciones matemáticas: ticas ABS(x). USER(). *. m). … Otras funciones: funciones DATABASE(). SQRT(x). VERSION(). … Funciones de agregado: agregado AVG: Calculo promedio de los valores de una columna COUNT: Nº de filas de la selección SUM: Suma de los valores de una columna MAX. -. MIN: Valor más alto y más bajo de una columna 30 . MOD(n. PI().4 Manual de SQL: Funciones (iii) Operaciones aritméticas: ticas +.

4 Manual de SQL: Manipulación de Datos (i) SELECT MySQL: Introducción select_expression indica las columnas que se quieren recuperar Se puede incluir cualquier expresión válida 31 .

4 Manual de SQL: Manipulación de Datos (ii) INSERT MySQL: Introducción 32 .

4 Manual de SQL: Manipulación de Datos (iii) UPDATE MySQL: Introducción DELETE 33 .

4 Manual de SQL: Definición de Datos (i) Crear y eliminar BD: BD MySQL: Introducción Creación de tablas: tablas 34 .

4 Manual de SQL: Definición de Datos (ii) MySQL: Introducción 35 .

4 Manual de SQL: Definición de Datos (iii) MySQL: Introducción 36 .

4 Manual de SQL: Definición de Datos (iv) Modificación de tablas: tablas MySQL: Introducción 37 .

4 Manual de SQL: Definición de Datos (v) Cambio del nombre de una tabla: tabla MySQL: Introducción Eliminación de tablas: tablas Creación de índice: ndice Eliminación de índice: ndice 38 .

tablas e índices 39 .5 Características Avanzadas MySQL: Introducción Utilidad para chequeo. INSERT. REPLACE y UPDATE devuelven el número de filas afectadas Todos los programas/utilidades permiten la obtención de ayuda en línea (--help o -?) El comando SHOW muestra información sobre BD. optimización y reparación de tablas DELETE.

6 Herramientas de Administración: mysqladmin (i) mysqladmin: Una utilidad para realizar operaciones mysqladmin administrativas MySQL: Introducción Operaciones más habituales: habituales Crear BD: mysqladmin create <nombreBD> Eliminar BD: mysqladmin drop <nombreBD> Ver el estado de MySQL: mysqladmin ping mysqladmin status Detener el servidor: mysqladmin shutdown Puede ser necesario autentificarse: mysqladmin create <nombreBD> -u root -p 40 .

6 Herramientas de Administración: mysqladmin (ii) Todas las operaciones: operaciones MySQL: Introducción 41 .

quit: Salir use <nombreBD>: Abrir otra BD status: Estado del servidor source <nombreFich>: Ejecuta un fichero con comandos SQL 42 .6 Herramientas de Administración: mysql (i) MySQL: Introducción mysql: Una consola para ejecutar comandos de SQL mysql Permite un uso interactivo y no interactivo Comandos más habituales: habituales help.?: Ayuda exit.

6 Herramientas de Administración: mysql (ii) Todos los comandos: comandos MySQL: Introducción 43 .

7 Resumen Qué hemos aprendido… MySQL: Introducción Sabemos qué es MySQL Hemos repasado sus características principales y hemos visto que soporta un SQL extendido Hemos realizado un pequeño tutorial de MySQL Hemos repasado el SQL que “entiende” MySQL Hemos practicado con dos de sus herramientas principales de consola 44 .

8 Ejercicios Con mysql: MySQL: Introducción Con mysqladmin: 1 Crear una BD alumnos con tres tablas: alumno.sql que contenga instrucciones SQL para insertar algunos datos de ejemplo y ejecutarlo 7 Practicar con diferentes select y update desde la línea de órdenes de mysql 8 Estudiar la forma equivalente de crear estas dos BD 45 . asignatura. mostrar todas las BD con el comando adecuado 4 Mostrar todas las tablas de cada BD 5 Ver la estructura de las tablas 6 Crear un fichero de texto con extensión . nota 2 Crear una BD personal con la lista de dvds y las cuentas de la casa 3 Una vez creadas.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->