You are on page 1of 7

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno

Base de Datos
Qu es una Base de datos? Definicin de Base de datos: Una base de datos es una coleccin de informacin organizada de forma que un programa de ordenador pueda seleccionar rpidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrnico. Las bases de datos tradicionales se organizan por campos, registros y archivos. Un campo es una pieza nica de informacin; un registro es un sistema completo de campos; y un archivo es una coleccin de registros. Por ejemplo, una gua de telfono es anloga a un archivo. Contiene una lista de registros, cada uno de los cuales consiste en tres campos: nombre, direccin, y nmero de telfono. A veces se utiliza DB, de database referirse a las bases de datos. en ingls, para

SQL (Structured Query Language)


Qu es y para qu sirve el SQL Las aplicaciones en red son cada da ms numerosas y verstiles. En muchos casos, el esquema bsico de operacin es una serie de scripts que rigen el comportamiento de una base de datos. Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sera realmente complicada a gestionar de no ser por la existencia de estndares que nos permiten el realizar las operaciones bsicas de una forma universal. Es de eso de lo que trata el Structured Query Language que no es mas que un lenguaje estndar de comunicacin con bases de datos. Hablamos por tanto de un lenguaje normalizado que nos permite trabajar con cualquier tipo de lenguaje (ASP o PHP) en combinacin con cualquier tipo de base de datos (MS Access, SQL Server, MySQL...). El hecho de que sea estndar no quiere decir que sea idntico para cada base de datos. En efecto, determinadas

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno bases de datos implementan funciones especficas que no tienen necesariamente que funcionar en otras. Aparte de esta universalidad, el SQL posee otras dos caractersticas muy apreciadas. Por una parte, presenta una potencia y versatilidad notables que contrasta, por otra, con su accesibilidad de aprendizaje. Diferentes tipos campos empleados en las bases de datos Como sabemos una base de datos esta compuesta de tablas donde almacenamos registros catalogados en funcin de distintos campos (caractersticas). Un aspecto previo a considerar es la naturaleza de los valores que introducimos en esos campos. Dado que una base de datos trabaja con todo tipo de informaciones, es importante especificarle qu tipo de valor le estamos introduciendo de manera a, por un lado, facilitar la bsqueda posteriormente y por otro, optimizar los recursos de memoria. Cada base de datos introduce tipos de valores de campo que no necesariamente estn presentes en otras. Sin embargo, existe un conjunto de tipos que estn representados en la totalidad de estas bases. Estos tipos comunes son los siguientes: Alfanumricos Numricos Booleanos Contienen cifras y letras. Presentan una longitud limitada (255 caracteres) Existen de varios tipos, principalmente, enteros (sin decimales) y reales (con decimales). Poseen dos formas: Verdadero y falso (S o No) Almacenan fechas facilitando posteriormente su explotacin. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los das entre una fecha y otra... Son campos alfanumricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados (veremos ms adelante lo que esto quiere decir).

Fechas

Memos

Autoincrementables Son campos numricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta ms que evidente:

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno Servir de identificador ya que resultan exclusivos de un registro. Mostramos unas tablas con todos los tipos de datos que hay en SQL. Tipo de Longitud Descripcin Datos Para consultas sobre tabla adjunta de BINARY 1 byte productos de bases de datos que definen un tipo de datos Binario. BIT 1 byte Valores Si/No True/False BYTE 1 byte Un valor entero entre 0 y 255. Un nmero incrementado automticamente COUNTER 4 bytes (de tipo Long) Un entero escalable entre CURRENCY 8 bytes 922.337.203.685.477,5808 y 922.337.203.685.477,5807. Un valor de fecha u hora entre los aos DATETIME 8 bytes 100 y 9999. Un valor en punto flotante de precisin simple con un rango de - 3.402823*1038 a -1.401298*10-45 para valores SINGLE 4 bytes negativos, 1.401298*1045 a 3.402823*1038 para valores positivos, y 0. Un valor en punto flotante de doble precisin con un rango de 1.79769313486232*10308 a DOUBLE 8 bytes -4.94065645841247*10-324 para valores negativos, 4.94065645841247*10-324 a 1.79769313486232*10308 para valores positivos, y 0. SHORT 2 bytes Un entero corto entre -32,768 y 32,767. Un entero largo entre -2,147,483,648 y LONG 4 bytes 2,147,483,647. 1 byte LONGTEXT por De cero a un mximo de 1.2 gigabytes. carcter Segn se De cero 1 gigabyte. Utilizado para LONGBINARY necesite objetos OLE. 1 byte TEXT por De cero a 255 caracteres. carcter La siguiente tabla recoge los sinnimos de los tipos de datos definidos: Tipo de Dato Sinnimos

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno BINARY VARBINARY BOOLEAN LOGICAL BIT LOGICAL1 YESNO BYTE INTEGER1 COUNTER AUTOINCREMENT CURRENCY MONEY DATE DATETIME TIME TIMESTAMP FLOAT4 SINGLE IEEESINGLE REAL FLOAT FLOAT8 DOUBLE IEEEDOUBLE NUMBER NUMERIC INTEGER2 SHORT SMALLINT INT LONG INTEGER INTEGER4 GENERAL LONGBINARY OLEOBJECT LONGCHAR LONGTEXT MEMO NOTE ALPHANUMERIC CHAR - CHARACTER TEXT STRING - VARCHAR VARIANT (No Admitido) VALUE Sintaxis y ejemplos para introducir registros en una tabla Los registros pueden ser introducidos a partir de sentencias que emplean la instruccin Insert. La sintaxis utilizada es la siguiente: Insert Into nombre_tabla (nombre_campo1, nombre_campo2,...) Values (valor_campo1, valor_campo2...) Un ejemplo sencillo a partir de nuestra tabla modelo es la introduccin de un nuevo cliente lo cual se hara con una instruccin de este tipo:

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno Insert Into clientes (nombre, apellidos, direccion, poblacion, codigopostal, email, pedidos) Values ('Perico', 'Palotes', 'Percebe n13', 'Lepe', '123456', 'perico@desarrolloweb.com', 33) Como puede verse, los campos no numricos o booleanos van delimitados por apostrofes: '. Tambin resulta interesante ver que el cdigo postal lo hemos guardado como un campo no numrico. Esto es debido a que en determinados paises (Inglaterra,como no) los codigos postales contienen tambin letras. Por supuesto, no es imprescindible rellenar todos los campos del registro. Eso s, puede ser que determinados campos sean necesarios. Estos campos necesarios pueden ser definidos cuando construimos nuestra tabla mediante la base de datos. Resulta muy interesante, ya veremos ms adelante el por qu, el introducir durante la creacin de nuestra tabla un campo autoincrementable que nos permita asignar un nico nmero a cada uno de los registros. De este modo, nuestra tabla clientes presentara para cada registro un nmero exclusivo del cliente el cual nos ser muy util cuando consultemos varias tablas simultneamente. Sintaxis y ejemplos para borrar registros en una tabla Para borrar un registro nos servimos de la instruccin Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una seleccin que se llevara a cabo mediante la clusula Where. La forma de seleccionar se ver detalladamente en captulos posteriores. Por ahora nos contentaremos de mostrar cul es el tipo de sintaxis utilizado para efectuar estas supresiones: Delete From nombre_tabla Where condiciones_de_seleccin Si queremos por ejemplo borrar todos los registros de los clientes que se llamen Perico lo haramos del siguiente modo: Delete From clientes Where nombre='Perico' Hay que tener cuidado con esta instruccin ya que si no especificamos una condicin con Where, lo que estamos haciendo es borrar toda la tabla: Delete From clientes

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno Sintaxis y ejemplos para editar registros en una tabla Update es la instruccin que nos sirve para modificar nuestros registros. Como para el caso de Delete, necesitamos especificar por medio de Where cules son los registros en los que queremos hacer efectivas nuestras modificaciones. Adems, obviamente, tendremos que especificar cules son los nuevos valores de los campos que deseamos actualizar. La sintaxis es de este tipo: Update nombre_tabla Set nombre_campo2 = condiciones_de_seleccin Un ejemplo aplicado: Update clientes Set nombre='Jos' Where nombre='Pepe' Mediante esta sentencia cambiamos el nombre Pepe por el de Jos en todos los registros cuyo nombre sea Pepe. Aqu tambin hay que ser cuidadoso de no olvidarse de usar Where, de lo contrario, modificaramos todos los registros de nuestra tabla. Cmo realizar prcticos. selecciones eficientemente. Ejemplos nombre_campo1 = valor_campo1, valor_campo2,... Where

La seleccin total o parcial de una tabla se lleva a cabo mediante la instruccin Select. En dicha seleccin hay que especificar: -Los campos que queremos -La tabla en la que hacemos la seleccin seleccionar

En nuestra tabla modelo de clientes podramos hacer por ejemplo una seleccin del nombre y direccin de los clientes con una instruccin de este tipo: Select nombre, direccin From clientes Si quisisemos seleccionar todos los campos, es decir, toda la tabla, podramos utilizar el comodn * del siguiente modo: Select * From clientes Resulta tambin muy til el filtrar los registros mediante condiciones que vienen expresadas despus de la clusula

Colegio Holy Family Curso de Educacin para el Trabajo Especialidad: Computacin Profesor: Jonathan Vsquez Prevate Llaguno Where. Si quisisemos mostrar los clientes de determinada ciudad usaramos una expresin como esta: Select * From clientes Where poblacion Like 'Madrid'

una

Adems, podramos ordenar los resultados en funcin de uno o varios de sus campos. Para este ultimo ejemplo los podramos ordenar por nombre as: Select * From clientes Where poblacion Like 'Madrid' Order By nombre Teniendo en cuenta que puede haber ms de un cliente con el mismo nombre, podramos dar un segundo criterio que podra ser el apellido: Select * From clientes Where poblacion Like 'Madrid' Order By nombre, apellido Si invirtisemos el orden nombre,apellido por apellido, nombre , el resultado ser&iacutea distinto. Tendramos los clientes ordenados por apellido y aquellos que tuviesen apellidos idnticos se subclasificaran por el nombre. Es posible tambin clasificar por orden inverso. Si por ejemplo quisisemos ver nuestros clientes por orden de pedidos realizados teniendo a los mayores en primer lugar escribiramos algo as: Select * From clientes Order By pedidos Desc Una opcin interesante es la de efectuar selecciones sin coincidencia. Si por ejemplo buscsemos el saber en qu ciudades se encuentran nuestros clientes sin necesidad de que para ello aparezca varias veces la misma ciudad usaramos una sentencia de esta clase: Select Distinct poblacion From clientes Order By poblacion As evitaramos ver repetido Madrid tantas veces como clientes tengamos en esa poblacin.

You might also like