Administrador de Bases de Datos MYSQL MYSQL Caractersticas
Administrador de Bases de Datos MYSQL
MYSQL � Características: � � � � Libre. - puede descargarse de forma gratuita Facilidad de uso. - gracias a aplicaciones como php. My. Admin Multiplataforma. - listo para cualquier sistema operativo Rapidez. - en tiempo de ejecución (aplicaciones), consultas y extracción de datos. Seguridad. - puede usarse en proyectos sencillos (educativos) o que requieran ciertos niveles de seguridad (empresariales) Estabilidad. - pocas veces genera errores internos en las bases de datos. (sql->Lenguaje de consulta estructurado)
TIPOS DE DATOS • Cadenas de Caracteres: • • • char textos cortos de hasta 255 caracteres, si se introdujera una cadena de más de 255 caracteres, se truncaría (cortaría) hasta el límite de este tipo varchar es el tipo que más se usa para almacenar cadenas de caracteres, mismas características que el anterior blob (objeto binario de gran tamaño) empleado para almacenar objetos binarios, esto es; desde un archivo de texto hasta imágenes, archivos de sonido o video. Se subdivide en cuatro: – – • tinyblob 255 caracteres blob 65, 535 caracteres mediumblob 16, 777, 215 caracteres longblob 4, 294, 967, 295 caracteres text sirve para almacenar grandes cantidades de texto plano equivalente a campos memo en algunas bases de datos de más de 255 caracteres. – – tinytext 255 caracteres text 65, 535 caracteres mediumtext 16, 777, 215 caracteres longtext 4, 294, 967, 295 caracteres
TIPOS DE DATOS • Numéricos: • Todos los tipos numéricos pueden definirse con dos parámetros opcionales: unsigned (impide que los campos numéricos acepten signo negativo, sólo se acepta el cero y los valores positivos) y zerofill (completa con ceros a la izquierda hasta la longitud máxima) • decimal (o numeric o dec) recibe dos argumentos opcionales: el número de posiciones enteras y decimales. Por defecto el primero es 10 y el segundo es 0 (rango de -9, 999, 999 hasta 99, 999, 999) • integer (o int) recibe como argumento el número de dígitos que el campo puede tomar. Si se define con signo (por defecto) va de -2, 147, 483, 648 hasta 2, 147, 483, 647. Sin signo de 0 hasta 4, 294, 967, 295 • tinyint recibe como argumento el número de dígitos que el campo puede tomar. Si se omite, tomará su máximo; con signo (defecto) de -128 a 127 y sin signo de 0 a 255 • bit es un tinyint de un dígito • bool es un tinyint de un dígito • mediumint recibe como argumento el número de dígitos que el campo puede tomar. Su rango por defecto es de -8, 388, 608 a 8, 388, 607, sin signo de 0 a 16, 777, 215 • bigint recibe como argumento el número de dígitos que el campo puede tomar. Su rango por defecto va de -9, 233, 372, 036, 854, 775, 808 a 9, 233, 372, 036, 854, 775, 807, sin signo desde 0 hasta 18, 446, 744, 073, 709, 551, 615
TIPOS DE DATOS • • • smallint recibe como argumento el número de digitos que el campo puede tomar. Si se define con signo (por defecto) su rango va de -32, 768 a 32, 767, y sin signo (unsigned) de 0 a 65, 535 float sirve para definir números con coma, con menos precisión que double. Recibe como argumento el número de posiciones enteras y el número de posiciones decimales. Óptimo para almacenar valores del tipo moneda. Su rango va desde -3. 402823466 E+38 a -1. 175494351 E-38 y desde 1. 175494351 E-38 a 3. 402823466 E+38 double (o double precision o real) permite definir números con coma con más precisión que float, recibe como argumento el número de posiciones enteras y el número de posiciones decimales. El rango va desde 1. 7976931348623157 E+308 a -2. 2250738585072014 E-308 y desde 2. 2250738585072014 E-308 a 1. 7976931348623157 E+308
TIPOS DE DATOS • Fecha y Hora: • • • datetime permite almacenar fecha y hora a la vez. El formato por defecto es ‘YYYY-MM-DD HH: MM: SS’. El rango va de ‘ 1000 -01 -01 00: 00’ a ‘ 9999 -12 -31 23: 59’ date permite almacenar una fecha y el formato por defecto es ‘YYYY-MMDD’. El rango va de ‘ 1000 -01 -01’ a ‘ 9999 -12 -31’ timestamp es un tipo de dato que combina fecha y hora con posiciones numéricas, y permite almacenar valores entre el 1 de enero de 1970 hasta el año 2037. Las opciones son: timestamp(14) --- YYYYMMDDHHMMSS timestamp(12) --- YYMMDDHHMMSS timestamp(10) --- YYMMDDHHMM timestamp(8) -----YYYYMMDD timestamp(6) -----YYMMDD timestamp(4) -----YYMM timestamp(2) -----YY
TIPOS DE DATOS • • – time se utiliza para trabajar sólo con horarios. El formato por defecto es HH: MM: SS, también soporta HHH: MM: SS. Su rango va de -838: 59 a 838: 59 year se usa para representar años y su formato por defecto es YYYY, aunque también puede definirse como YY. El rango va de 1901 hasta 2155. Si se llegara a almacenar un dato incorrecto en los campos del tipo date, datetime, timestamp y time, se almacenarán datos nulos (con ceros)
SENTENCIAS DML (DATA MANIPULATION LANGUAGE) SENTENCIA DESCRIPCIÓN SELECT Recupera datos de la base de datos. INSERT Añade nuevas filas de datos a la base de datos. DELETE Suprime filas de datos de la base de datos. UPDATE Modifica datos existentes en la base de datos. Aplicables a consultas.
SENTENCIAS DDL (DATA DEFINITION LANGUAGE) SENTENCIA DESCRIPCIÓN CREATE Crea un nuevo objeto DROP Suprime un objeto. ALTER Modifica la estructura o contenido de un objeto. TRUNCATE Elimina el contenido de un objeto RENAME Cambia el nombre de un objeto. Aplicables a objetos como Database (base de datos), Table (tabla).
FUNCIONES DE AGREGADO � Se emplean con SELECT CONSTANTE AVG COUNT DESCRIPCIÓN Calcula el promedio de los valores de un campo determinado Devuelve el número de registros de la consulta SELECT SUM Devuelve la suma de todos los valores de un campo determinado MAX Devuelve el valor más alto de un campo especificado MIN Devuelve el valor más bajo de un campo especificado
OPERADORES � Al momento de llevar a cabo una instrucción SQL del tipo SELECT, DELETE, UPDATE, ALTER (selección, eliminación, actualización, modificación) podemos incluir los llamados operadores de comparación OPERADOR = <> Ó != DESCRIPCIÓN Igualdad Desigualdad <= Menor o igual que < Menor que >= Mayor o igual que > Mayor que
OPERADORES � Otras opciones son: � � � IS NULL: devuelve verdadero si el valor evaluado es nulo. IS NOT NULL: devuelve verdadero si el valor evaluado no es nulo. IN: devuelve verdadero si el valor está contenido en una lista. NOT IN: devuelve verdadero si el valor no está contenido en una lista. Dentro de los Operadores Lógicos se encuentran: OPERADO R NOT o ! DESCRIPCIÓN Negación AND o && Unión OR o || Opción XOR Exclusividad
REFERENCIA DE FUNCIONES • • mysql_connect() conecta al servidor mysql, necesita tres parámetros; servidor, nombre de usuario y contraseña si es que la tiene. mysql_close() cierra la conexión al servidor. Ej. conexión. php mysql_select_db() selecciona una base de datos, para comenzar a trabajar con ella. Recibe como argumentos el nombre de la base de datos y el identificador de conexión. Ej. selecciona-bd. php mysql_query() define una consulta a la base de datos seleccionada. Recibe como parámetro la consulta a realizar con sentencias dml como recuperar registros de una tabla, modificarlos, eliminarlos, etc.
CONSULTAS � � � Para crear una base de datos deberemos utilizar la sentencia DDL, CREATE con el objeto DATABASE, para este caso. Ejemplo: crea-bd. php Para borrar una base de datos deberemos utilizar la sentencia DDL, DROP. Ejemplo: borra-bd. php Para crear una tabla se emplea la sentencia CREATE con el objeto TABLE, ejemplo: crea_tabla. php
CONSULTAS � Tipos: � Simples. - se aplican a una sola tabla: select * from nombre. Tabla; � Multitabla. - recuperan datos de varias tablas: select * from nombre. Tabla 1, nombre. Tabla 2 where nombre. Tabla 1. campo 1 = nombre. Tabla 2. campo 2 � Subconsultas. - posibilitan incluir más de una consulta de selección en la misma consulta: select * from nombre. Tabla 1 where campo 1 = (select campo 2 from nombre. Tabla 2)
CONSULTAS • Funciones para consultas: mysql_fetch_array() recibe como argumentos un identificador de consulta y, opcionalmente una constante para definir el tipo de índice. Un identificador de consulta es la información devuelta por mysql_query. La constante para definir el tipo de índice tiene que ver con el hecho de que mysql_fetch_array permite recuperar filas y acceder al valor de cada campo como si se tratara de una matriz. Las opciones son MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH. Siendo este argumento opcional, si se opta por no incluirlo, por defecto se asume MYSQL_ASSOC. – MYSQL_ASSOC toma al nombre de la columna como índice. Ejemplo consulta. php MYSQL_NUM utiliza como índice el número de la columna según el orden dado en la consulta SQL. Si no se especifica el orden de los campos en la consulta, se tomará el orden de creación de campos de la tabla. El índice 0 corresponde a la primer columna. Ejemplo consulta_mysqlnum. php MYSQL_BOTH nos permite utilizar como índice el número o el nombre de la columna. Ejemplo consulta_mysql-both. php
- Slides: 16