You are on page 1of 31

“CBT No. 3 SR.

MAX SHEIN HEISLER, CHALCO”

MANUAL TEÓRICO DE My SQL

PRESENTAN

LUÍS GERARDO CARLOS JIMÉNEZ ARMANDO DE LOS SANTOS FLORES SANDRA BELEM ESTRELLA HIDALGO

TÉCNICO EN INFORMÁTICA

1

DEDICATORIA
Primeramente dedicamos este trabajo a nuestras familias que han sido sacrificados al trabajo que hemos tenido que realizar. Gracias también a ustedes los Maestros que nos ayudaron y orientaron en todo lo que necesitábamos. En especial estamos muy agradecidos de la Maestra “Martha Martínez León” la cual ha demostrado que realmente posee la vocación para enseñar y hacer lo que un buen maestro hace. Gracias por toda la atención de los demás maestros que nos apoyan y enseñan, para que nosotros podamos estar presentando este trabajo hoy y que fue realizado con un gran esfuerzo de cada uno de nosotros. También damos gracias a nuestros compañeros y amigos que son otra gran ayuda de nuestro aprendizaje porque todos aprendemos de todos y la mejor manera es apoyándonos entre todos. Muchas Gracias.

2

INTRODUCCIÓN
Principalmente este Manual fue realizado para dar a conocer todo lo relacionado con una base de datos así como My SQL sus antecedentes, sus características, aplicaciones etc. Se Presenta en 3 capítulos y contienen los siguientes temas que se relacionan con las bases de datos como son:          Diseños de las Bases de Datos Estructura de las Bases de Datos Relacionales Algebra relacional Normalización Lenguajes de Consultas Estructurado SQL Procesamiento de Bases de Datos Aplicaciones de My SQL con PHP, JAVA y WML Introducción a las Bases de Datos Características de una Base de Datos

Aparte de estos temas también contiene un glosario que cuenta con 20 palabras y su significado. También vienen las páginas consultadas de los temas que contiene el manual algunas páginas son:        Wikipedia.org Rincóndelvago.com Mitecnologico.com Carixma.com Slideshare.net Alegsa.net Monografías.com

3

Y para que cuando otras personas quieran realizar un trabajo relacionado con este tema se puedan apoyar consultando este manual para que puedan realizar un buen trabajo como el que nosotros hicimos. como se utiliza y sus derivaciones etc. piensa para sí mismo. Los niños desde pequeños tienen que estudiar para que se puedan defender en la vida y no ser discriminados por los demás. para innovar nuestros conocimientos y aplicarlos en problemas que tengamos relacionado con esta investigación. sus características. que son las Bases de Datos. Aprender más sobre lo que es Una Base de Datos. ya que en este manual se mencionan temas que son básicos en cuestión de la materia (Diseña Bases de Datos en My SQL). las personas que quieran saber sobre este tema. realizar un buen trabajo respecto a las características que nos plantearon para la realización del manual. También con esto aprendimos como realizar un buen trabajo que para que todo quede perfectamente bien tiene que llevar un orden. Aparte con este trabajo esperamos obtener una buena calificación y seguir estudiando la carrera de informática. Respecto al manual los beneficios que se obtendrán serán el aprendizaje. Los intereses que tenemos hacia el tema son aprender más sobre una Base de Datos su definición. para superarnos cada día más. OBJETIVOS Nuestros objetivos son. 4 . y obtener mayor aprendizaje y enriquecerlo con más información sobre este tema. se beneficiaran con él. algunas personas estudian para poder examinarse.JUSTIFICACIÓN El estudio sirve para poder enriquecer nuestro aprendizaje. De igual manera podrá beneficiar a todas aquellas personas y estudiantes que pretendan llevar o estudiar la carrera de informática como técnicos. porque nos desarrollamos desde todos los ámbitos y el estudio es uno de los más importantes en nuestra vida. Este manual pretende transferir la información que contiene hacia personas que tengan curiosidad o simple interés hacia este trabajo sobre lo que es diseñar una base de datos. Nosotros deseamos poder seguir estudiando para encontrar un buen trabajo a largo plazo de nuestra vida. porque tiene temas que son parte de la Informática. para así llegar a una sola conclusión del tema.

1 Modelo Relacional----------------------------------------------------------------1.5 Restricciones-----------------------------------------------------------------------1.14 Pág.3 Tercera Forma Normal----------------------------------------------------------1.3. Relación---------------------------------------------------1.16 Pág.4 Lenguaje de Consultas Estructurado con SQL-------------------------1.4 Forma Normal de Boyce-Codd-----------------------------------------------1.3.1 Estructura de la base de datos-----------------------------------------------1.10 Pág.15 Pág.1.18 Pág.19 Pág.15 Pág.2.1.6 Claves--------------------------------------------------------------------------------1.2.1.1 Introducción------------------------------------------------------------------------1.7 Diagrama.9 Pág.2 Sentencias de Definición de Datos DDL------------------------------------1.14 Pág.16 Pág. Entidad.9 Pág.3.1 Primera Forma Normal----------------------------------------------------------1.11 Pág.ÍNDICE Capítulo 1.3 Atributos-----------------------------------------------------------------------------1.19 5 .7 Pág.4.18 Pág.17 Pág.1.2.2 Algebra Relacional----------------------------------------------------------------1.2.7-Producto Cartesiano-------------------------------------------------------------1.1.3.2.10 Pág.15 Pág. Diseño de Bases de Datos-------------------------------------1.4 Relaciones--------------------------------------------------------------------------1.8 Pág.15 Pág.17 Pág.4 Unión---------------------------------------------------------------------------------1.2.2 Selección----------------------------------------------------------------------------1.4.1.5-Intersección------------------------------------------------------------------------1.1.2.2 Segunda Forma Normal--------------------------------------------------------1.1 Operaciones fundamentales---------------------------------------------------1.13 Pág.18 Pág.4.3 Proyección--------------------------------------------------------------------------1.3 Sentencias de Manipulación de Datos DML-------------------------------Pág.3 Normalización----------------------------------------------------------------------1.16 Pág.11 Pág.2 Entidades----------------------------------------------------------------------------1.12 Pág.6-Diferencia---------------------------------------------------------------------------1.

1 Antecedentes de PHP-------------------------------------------------------------3.25 Pág.27 Pág.21 Pág.27 Pág.28 Pág.20 Pág.28 Capítulo 3.Capítulo 2.21 Pág. JAVA y WML 3.21 Pág.4 Aplicaciones Web utilizando My SQL y PHP--------------------------------3.22 Pág.1 Introducción a las Bases de Datos---------------------------------------------2.3 Manejadores de Bases de Datos-----------------------------------------------2.5 Administrar y Manipular Datos en My SQL------------------------------------ Pág.3 Desplegar Información ------------------------------------------------------------3.6 Aplicaciones móviles usando My SQL y WML ------------------------------ 6 .22 Pág.4 Introducción a My SQL------------------------------------------------------------2.25 Pág.24 Pág. Aplicaciones de My SQL con PHP.5 Aplicaciones utilizando My SQL y JAVA--------------------------------------3.2 Conectar My SQL y PHP----------------------------------------------------------3. Procesamiento de Base de Datos------------------------2.2 Características de una Base de Datos----------------------------------------2.

7 .

 Esquema de almacenamiento: En el nivel interno.mx/tutoriales/basedat1/tema3_1. Diseño de Bases de Datos 1. La arquitectura relacional consta de los siguientes componentes:  Modelo relacional de datos: En el nivel conceptual.htm 8 .Capítulo 1. cada tabla base se implanta como un archivo almacenado.1 1 http://sistemas.  Submodelo de datos: Los esquemas externos de un sistema relacional se llaman submodelos relacionales de datos. Para las recuperaciones sobre las claves principal o secundaria se pueden establecer uno o más índices para accesar un archivo almacenado.itlp. Por tanto. o puede guardar temporalmente sus salidas antes de que el DBMS las escriba en la base de datos. en otras palabras.1 Estructura de las bases de datos relacionales La arquitectura relacional se puede expresar en términos de tres niveles de abstracción: nivel interno. esto es. cualquier relación que pueda derivarse de una o más tablas de datos. Cada programa de aplicación está provisto de un buffer ("Área de trabajo de usuario") donde el DBMS puede depositar los datos recuperados de la base para su procesamiento. el modelo relacional de datos está representado por una colección de relaciones almacenadas. también se puede derivar con u solo comando del sublenguaje. el modo de operación de entrada/Salida en un sistema relacional se puede procesar en la forma: una tabla a la vez en lugar de: un registro a la vez. Cada registro de tipo conceptual en un modelo relacional de datos se implanta como un archivo almacenado distinto. ambos lenguajes son "relacionalmente completos". el álgebra relacional y cálculo relacional. Un escenario puede incluir datos de una o más tablas de datos. cada uno consta de uno a más escenarios (vistas) para describir los datos requeridos por una aplicación dada. conceptual y de visión. se puede recuperar una tabla en vez de un solo registro con la ejecución de un comando del sublenguaje de datos.  Sublenguaje de datos: Es un lenguaje de manejo de datos para el sistema relacional.edu.

en tanto las entidades débiles no tienen atributos claves propios.wikipedia.1. En este modelo todos los datos son almacenados en relaciones. Este modelo considera la base de datos como una colección de relaciones. apellido. Artículo.org/wiki/Modelo_relaciona http://www.2 1. una relación representa una tabla que no es más que un conjunto de filas.ar/Dic/entidad.com. etc. un objeto Una entidad se describe en la estructura de la base de datos empleando un modelo de datos.2 Entidades En bases de datos. actualmente se cuenta con dos lenguajes formales el Álgebra relacional y el Cálculo relacional. Las entidades fuertes tienen atributos claves. Empleado. Cada fila también se puede denominar tupla o registro y a cada columna también se le puede llamar campo o atributo. De manera simple. Por ejemplo. cada fila es un conjunto de campos y cada campo representa un valor que interpretado describe el mundo real. Structured Query Language o Lenguaje Estructurado de Consultas. El lenguaje más común para construir las consultas a bases de datos relacionales es SQL. etc.3 2 3 http://es.1. en cambio. y como cada relación es un conjunto de datos. Por ejemplo. el orden en el que estos se almacenen no tiene relevancia (a diferencia de otros modelos como el jerárquico y el de red).php 9 .alegsa. En el modelo de entidad-relación se emplean dos tipos de entidades: entidad fuerte y entidad débil. una entidad es la representación de o concepto del mundo real que se describe en una base de datos. la entidad “Alumno” podría tener los atributos: nombre. La información puede ser recuperada o almacenada por medio de consultas que ofrecen una amplia flexibilidad y poder para administrar la información.1. Cada entidad está constituida por uno o más atributos. nombres de entidades pueden ser: Alumno. Para manipular la información utilizamos un lenguaje relacional. El Álgebra relacional permite describir la forma de realizar una consulta. el Cálculo relacional sólo indica lo que se desea devolver. Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar por un usuario no experto. año de nacimiento. un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.1 Modelo Relacional Es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos.

porque el empleado trabaja en un sector determinado. un archivo o carpeta que lo hace oculto. En algunas versiones de Windows.5 4 5 http://html. año de nacimiento. Las relaciones se describen en la estructura de la base de datos empleando un modelo de datos.tendencias21.com/informatica-documental.4 1. se podría tener una entidad llamada “Alumno”.html 10 .1. la entidad “Alumno” podría tener los atributos: nombre. En SQL un atributo es llamado columna. pero si no interesa al fin de la base de datos. Por ejemplo. no es necesario almacenarla en un atributo. En SQL las relaciones son llamadas tablas. indexado.net/La-relacion-con-el-entorno-es-la-base-de-los-sistemascomplejos_a1151.1. una relación o vínculo entre dos o más entidades describe alguna interacción entre las mismas. La elección de los atributos de una entidad depende del uso que se le dará a la base de datos. etc.1. Esta entidad puede estar constituida por uno o más atributos. que son propiedades de la entidad “Alumno” que interesan para almacenarse en la base de datos. Las relaciones son muy empleadas en los modelos de bases de datos relacionales y afines. característica de de sistema. etc. En bases de datos. se incluyen atributos avanzados: compresión. apellido.4 Relaciones En bases de datos. El alumno puede tener una “religión”.html http://www.3 Atributos En informática. Por ejemplo. una relación entre una entidad “Empleado” y una entidad “Sector” podría ser “trabaja_en”.rincondelvago. encriptación. lectura. Por ejemplo. de solo. Los atributos se describen en la estructura de la base de datos empleando un modelo de datos. etc. un atributo representa una propiedad de interés de una entidad.

obviamente se permite que haya varios empleados en un mismo departamento. Pueden existir varias claves únicas en una determinada tabla.1. para especificar los datos que serán relacionados con las demás tablas. por ejemplo. Clave primaria Una clave primaria es una clave única elegida entre todas las candidatas que define unívocamente a todos los demás atributos de la tabla. y a cada una de éstas suele llamársele candidata a clave primaria. Las restricciones no son parte formal del modelo relacional.1. el código de departamento puede ser una clave foránea en la tabla de empleados.5 Restricciones Una restricción es una condición que obliga el cumplimiento de ciertas condiciones en la base de datos. Usualmente se definen usando expresiones que dan como resultado un valor booleano. Las restricciones son muy discutidas junto con los conceptos relacionales.org/wiki/Base_de_datos_relacional#Restricciones 11 . Sólo puede existir una clave primaria por tabla y ningún campo de dicha clave puede contener valores NULL. no pueden existir dos o más registros diferentes cuyos valores en dichos campos sean idénticos.6 Claves Clave única Cada tabla puede tener uno o más campos cuyos valores identifican de forma única cada registro de dicha tabla. usar un campo con valores enteros entre 1 y 10. Este conjunto de campos se llama clave única. pero existirá sólo un departamento. La forma de hacer esto es por medio de claves foráneas. Algunas no son determinadas por los usuarios.6 1. sino que son inherentemente definidas por el simple hecho de que la base de datos sea relacional. Las restricciones restringen los datos que pueden ser almacenados en las tablas. Algunas otras restricciones las puede definir el usuario. Por ejemplo.1. indicando si los datos satisfacen la restricción o no. Clave foránea Una clave foránea es una referencia a una clave en otra tabla.wikipedia. es decir. Las claves foráneas no necesitan ser claves únicas en la tabla donde están y sí a donde están referenciadas. pero son incluidas porque juegan el rol de organizar mejor los datos. 6 http://es. Las restricciones proveen un método de implementar reglas en la base de datos.

Los valores de los atributos de una clave. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama. Entidad. como clave primaria de R. se deben considerar dos casos:  R NO tiene atributos asociados: En este caso.  Si el conjunto de relaciones.1. R es de uno a uno de A a B entonces se toma cualquiera de las dos claves primarias. no pueden ser todos iguales para dos o más entidades. Relación Un diagrama o modelo entidad-relación (a veces denominado por su siglas. se usa como clave primaria de R la unión de los atributos asociados y las claves primarias de todos los conjuntos de entidades participantes. se consideran los siguientes casos. 7 1. como clave primaria de R. R. como clave primaria de R. ER “Entity relationship”. Para poder distinguir unívocamente las relaciones en un conjunto de relaciones R. Estos modelos expresan entidades relevantes para un sistema de información así como sus interrelaciones y propiedades. con los conjuntos de entidades participantes A y B. “DER” Diagrama de Entidad Relación) es una herramienta para el modelado de datos de un sistema de información. 7 http://www.7 Diagrama.manualesinformatica. R es de muchos a muchos de A a B entonces se toma la unión de los atributos que conforman las claves primarias de A y de B. o. como clave primaria de R. se usa como clave primaria de R la unión de las claves primarias de todos los conjuntos de entidades participantes. El Modelo Entidad-Relación   Se elabora el diagrama (o diagramas) entidad-relación. R tiene atributos asociados: En este caso. R es de uno a muchos de A a B entonces se toma sólo la clave primaria de B.com/view. según sus cardinalidades:     R es de muchos a uno de A a B entonces sólo se toma la clave primaria de A.php?ItemID=371 12 . sobre las que se pretende determinar la clave primaria está compuesto de relaciones binarias.

Varios a Varios: Una entidad en A se puede relacionar con 0 o muchas entidades en B y viceversa. Dado un conjunto de relaciones en el que participan dos o más conjuntos de entidades. Pero una entidad en B se relaciona con una única entidad en A. Varios a Uno: Una entidad en A se relaciona exclusivamente con una entidad en B.2 Algebra Relacional Es un conjunto de operaciones que describen paso a paso como computar una respuesta sobre las relaciones.Dado lo rudimentario de esta técnica se necesita cierto entrenamiento y experiencia para lograr buenos modelos de datos.8    1.org/wiki/Modelo_entidad-relación 13 . la correspondencia de cardinalidad indica el número de entidades con las que puede estar relacionada una entidad dada. la correspondencia de cardinalidades puede ser:  Uno a Uno: Una entidad de A se relaciona únicamente con una entidad en B y viceversa. Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B. tal y como éstas son definidas en el modelo relacional. Estas operaciones se usan como una representación intermedia de una consulta a una base de datos y. Normalización de una base de datos de relaciones (algunas relaciones pueden transformarse en atributos y viceversa).  El modelado de datos no acaba con el uso de esta técnica.wikipedia. Pero una entidad en B se puede relacionar con 0 o muchas entidades en A. Brevemente: Transformación de relaciones múltiples en binarias. debido a 8 http://es.   Conversión en tablas (en caso de utilizar una base de datos relacional). Son necesarias otras técnicas para lograr un modelo directamente implementable en una base de datos. Uno a varios: Una entidad en A se relaciona con cero o muchas entidades en B. Denominada de tipo procedimental. a diferencia del Cálculo relacional que es de tipo declarativo. Describe el aspecto de la manipulación de datos.

sus propiedades algebraicas. la notación de 3 × 3 es 32. rama de las matemáticas en la que se usan letras para representar relaciones aritméticas. El álgebra clásica. sirven para obtener una versión más optimizada y eficiente de dicha consulta. a × a es igual que a2. Así. no es capaz de generalizar las relaciones matemáticas.udlap. ya que 32 + 42 = 52).2.com/servicios/tecnologia-informatica/608-seleccion-de-tecnologiainformatica 10 14 .2. 4 y 5. El predicado se selección puede expresarse mediante condiciones enlazadas con operadores booleanos.deltaasesores. Seguido del signo igual se escribe el dato concreto que buscamos y por último y entre paréntesis la tabla a la que hace referencia.mx/people/carlos/is341/bases04. como el teorema de Pitágoras. división y cálculo de raíces.2 Selección La sintaxis se representa con la letra griega sigma “s”.10 1. sin embargo. Un número multiplicado por sí mismo se denomina cuadrado. puede dar una generalización que cumple las condiciones del teorema: a2 + b2 = c2. Al igual que en la aritmética. Los matemáticos consideran al álgebra moderna como un conjunto de objetos con reglas que los conectan o relacionan. a continuación el predicado de selección. de la misma manera. que dice que en un triángulo rectángulo el área del cuadrado de lado la hipotenusa es igual a la suma de las áreas de los cuadrados de lado los catetos. La aritmética. 3. en su forma más general. El álgebra. que se ocupa de resolver ecuaciones.1 Operaciones Fundamentales Álgebra.html http://html. sustracción. El álgebra moderna ha evolucionado desde el álgebra clásica al poner más atención en las estructuras matemáticas. Por ejemplo.rincondelvago. las operaciones fundamentales del álgebra son adición. y se representa con el superíndice 2.com/algebra_2. una buena definición de álgebra es la que dice que el álgebra es el idioma de las matemáticas. por el contrario. Para efectuar operaciones de selección se escribe s y a continuación la fila de la que se quiere obtener el dato. La aritmética sólo da casos particulares de esta relación (por ejemplo. ¿ Listado de asignaturas del primer cuatrimestre s CUATRIMESTRE = “PRIMER” (ASIGNATURAS) ¿ Alumnos de la provincia de Salamanca y de Béjar PROVINCIA = “SALAMANCA” (ALUMNOS) Ù LOCALIDAD = “BEJAR”11 9 http://ict.html 11 http://www. multiplicación.9 1. utiliza símbolos en vez de números específicos y operaciones aritméticas para determinar cómo usar dichos símbolos. después la tabla argumento.

13 1.com/bases-de-datos_11. (Π nombre cliente (σnombre_sucursal 14 ="10"(deposito))) 1. podríamos obtener los nombres de los clientes que tienen depósito y préstamo al mismo tiempo en la sucursal 10. Por ejemplo.r2). y no están en r2.shtml http://castronauta.monografias. pero que no tienen cuenta en dicha sucursal: (Πnombre_cliente (σnombre_sucursal 15 "Principal" (deposito))) = "Principal" = "10" (préstamo))) ∩ (Πnombre_cliente (σnombre_sucursal (préstamo))) .html 15 .html 15 http://www. Esta operación se podría utilizar.iespana. Lo mínimo a lo que se puede acceder en una consulta es la intersección entre fila y columna.2.es/docencia/barzana/IAGP/IAGP2-Bases-datos-relacionales. Se necesita la intervención de dos o más tablas.3 Proyección La proyección. Lógicamente r1 y r2 deben tener el mismo esquema. en la que se toman determinadas columnas y se desechan el resto.2.com/trabajos5/norbad/norbad2. Es adicional.12 1.rincondelvago.htm 14 http://html.2.5 Intersección Intersección de Conjuntos (r1 ∩ r2): Da como resultado una relación que contiene los elementos comunes a r1 y r2. Combinando selección y proyección se afina la búsqueda.1.um. ya que es equivalente a realizar r1 (r1 .es/bases.2.r2): Es una operación binaria que da como resultado una relación con los elementos que están en r1.4 Unión Unión o “join” que consiste en combinar la información distribuida en varias tablas cuando lo que se busca no está contenido en una única tabla.6 Diferencia Diferencia de Conjuntos (r1 .(Π nombre cliente (σnombre_sucursal = 12 13 http://www. si por ejemplo queremos saber el nombre de los clientes que tienen un préstamo en la sucursal principal.

php?id_art=278 16 . el producto cartesiano es un producto directo de conjuntos. tal y como es definida por algunos autores excluye "atributos relación-valor" (tablas dentro de tablas) siguiendo el precedente establecido por E. En particular. el producto cartesiano de dos conjuntos X y Y.3 Normalización El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidadrelación al modelo relacional. Evitar problemas de actualización de los datos en las tablas.com/trucos/ver.org/wiki/Producto_cartesiano http://www. Codd) (algunos de esos autores son: Ramez Elmasri y 16 17 http://es.trucostecnicos. Estos criterios se refieren básicamente a asegurarse que la tabla es una representación fiel de una relación y está libre de "grupos repetitivos".16 1.2. aunque para que una tabla sea considerada como una relación tiene que cumplir con algunas restricciones:    Cada columna debe tener su nombre único. es el conjunto de todos los pares ordenados en los que el primer componente pertenece a X y el segundo a Y: El producto cartesiano recibe su nombre de René Descartes. Todos los datos en una columna deben ser del mismo tipo. Como consecuencia.1 Primera forma normal La primera forma normal (1FN o forma mínima) es una forma normal usada en normalización de bases de datos. Proteger la integridad de los datos.7 Producto Cartesiano En teoría de conjuntos. Muy notablemente.F. No puede haber dos filas iguales. No se permiten los duplicados. Una tabla de base de datos relacional que se adhiere a la 1FN es una que satisface cierto conjunto mínimo de criterios.wikipedia.3. no hay un acuerdo universal en cuanto a qué características descalificarían a una tabla de estar en 1FN. Sin embargo. denotado por X × Y.17 1. la 1FN. En el modelo relacional es frecuente llamar tabla a una relación. Las bases de datos relacionales se normalizan para:    Evitar la redundancia de los datos. el concepto de "grupo repetitivo". cuya formulación de la geometría analítica dio origen a este concepto.1. es entendido de diversas maneras por diferentes teóricos.

según lo definido por otros autores. La 2NF fue definida originalmente por E. es ésta: Una tabla está en 3NF si y solo si. el atributo no clave depende de toda la clave candidata en vez de solo una parte de ella. Observe que cuando una tabla 1NF no tiene ninguna clave candidata compuesta (claves candidatas consistiendo en más de un atributo). Es decir. X → Z por virtud de X → Y e Y → Z.F. la 1FN sí los permite (por ejemplo como la define Chris Date).3. (Un atributo no-principal es uno que no pertenece a ninguna clave candidata). La definición de Codd indica que una tabla está en 3NF si y solo si las dos condiciones siguientes se mantienen: La tabla está en la segunda forma normal (2NF) Ningún atributo no-primario de la tabla es dependiente transitivamente de una clave candidata Un atributo no-primario es un atributo que no pertenece a ninguna clave candidata. Codd1 en 1971.18 1.mitecnologico.3 Tercera forma normal La tercera forma normal (3NF) es una forma normal usada en la normalización de bases de datos. por lo menos una de las condiciones siguientes se mantiene: 18 19 http://www.org/wiki/Segunda_forma_normal 17 .com/Main/FormasNormalesBasesDatos http://es. Una tabla que está en la primera (1NF) debe satisfacer criterios adicionales para calificar para la segunda forma normal. pero sí de un tercer conjunto de atributos Y. Una formulación alternativa de la definición de Codd.F.Shamkant B.2 Segunda formal normal La segunda forma normal (2NF) es una forma normal usada en normalización de bases de datos. Específicamente: una tabla 1NF está en 2NF si y solo si. Por otro lado. Navathe). dada cualquier clave candidata y cualquier atributo que no sea un constituyente de la clave candidata.3. Una dependencia transitiva es una dependencia funcional X → Z en la cual Z no es inmediatamente dependiente de X. que a su vez depende de X. para cada una de sus dependencias funcionales X →A. dada por Carlo Zaniolo 2 en 1982. la tabla está automáticamente en 2NF. Codd1 en 1971.wikipedia.19 1. En términos levemente más formales: una tabla 1NF está en 2NF si y solo si ninguno de sus atributos no-principales son funcionalmente dependientes en una parte (subconjunto propio) de una clave candidata. La 3NF fue definida originalmente por E.

4.3. Es una versión ligeramente más fuerte la Tercera forma normal (3FN). Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla. Es un lenguaje de cuarta generación (4GL). como ). todos los atributos dependen de una clave.información de interés de una base de datos. 20 21 http://www.21 1.mitecnologico.22 1. Se dice que una tabla está en FNBC si y solo si está en 3FN y cada dependencia funcional no trivial tiene una clave candidata como determinante.utm. ó A es un atributo primario (es decir. La BCNF simplemente elimina la tercera alternativa ("A es un atributo primario").1 Introducción Una base de datos es un sistema para archivar información en computadora cuyo propósito general es mantener información y hacer que esté disponible cuando se solicite.20 1. En términos menos formales.4 Forma normal de Boyce-Codd La Forma Normal de Boyce-Codd (o FNBC) es una forma normal utilizada la normalización de bases de datos.   X contiene A. A está contenido dentro de una clave candidata) La definición de Zaniolo tiene la ventaja de dar un claro sentido de la diferencia entre la 3NF y la más rigurosa forma normal de Boyce-Codd (BCNF). de la clave completa y de ninguna otra cosa excepto de la clave (excluyendo dependencias triviales.htm 18 .es/personal/lermon/cat/articles/evin0273. en de no un En una tabla en 3FN. así como también hacer cambios sobre ella.com/Main/3FnYFnbcFormaNormalBoyceCood 22 http://www. una tabla está en FNBC si está en 3FN y los únicos determinantes son claves candidatas.pdf http://www.mx/~erik/3FN. ó X es una superclave.4 Lenguajes de consultas estructuradas SQL El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en éstas.terra. La forma normal de Boyce-Codd requiere que existan dependencias funcionales no triviales de los atributos que no sean conjunto de la clave candidata.

Su recuperación. Otras que se incluyen dentro del DDL. vistas. procedimientos almacenados y triggers de la base de datos. Otros ejemplos de DML son los usados por bases de datos IMS/DL1. actualización y manejo es relativamente simple con el uso de cualquier manejador de bases de datos. pero que su existencia depende de la implementación del estándar SQL que lleve a cabo el gestor de base de datos son GRANT y REVOKE.2 Sentencias de definición de datos DDL Un lenguaje de definición de datos (Data Definition Language.fismat. 23 24 http://www. ya sea a usuarios específicos o a un rol creado dentro de la base de datos.4.25 Son aquellas Para insertar.org/wiki/Lenguaje_de_definición_de_datos 25 http://www. cada una de las cuales se puede aplicar a las tablas. DDL por sus siglas en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de definición de las estructuras que almacenarán los datos así como de los procedimientos o funciones que permitan consultarlos.net/heber/lenguaje-de-manipulacin-de-datos 19 . los cuales sirven para otorgar permisos o quitarlos.Permite seleccionar algunos campos de algunos registros procedentes de una tabla. diccionarios automatizados y en general cualquier programa orientado a mantener y recuperar información textual. modificar y consultar los datos de una base de datos.4. DROP y ALTER. DML) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulación de los datos.mx/~elizalde/tesis/node3. CODASYL u otras. Delete y Update.html http://es. El lenguaje de programación SQL. El lenguaje de manipulación de datos más popular hoy día es SQL.Las bases de datos son un área de la computación que ha recibido mucha atención debido a sus múltiples aplicaciones: Bibliotecas.3 Sentencias de manipulación de datos DML Un Lenguaje de Manipulación de Datos (Data Manipulation Language. admite las siguientes sentencias de definición: CREATE. usado para recuperar y manipular datos en una base de datos relacional. Insert.wikipedia. el más difundido entre los gestores de bases de datos. ingeniería de software.23 1. Clasificación de la Manipulación de Datos Son DML: Select. organizados por el modelo de datos adecuado. borrar. automatización de oficinas.slideshare.umich. consulta o combinación de tablas y consultas.24 1.

20 .

si lo permite en la base de datos.Capítulo 2.1 Introducción a las Bases de Datos Es un conjunto de información almacenada en memoria auxiliar que acceso directo y un conjunto de programas que manipulan esos datos.com/trabajos11/basda/basda.moodle. Se puede limitar el número máximo de entradas de cada participante. Procesamiento de Base de Datos 2.26 2.shtml http://docs. Puede agregar entradas profesores y alumnos. cada una de las cuales es responsable de alguna tarea específica.itlp.27 2.2 Características de una Base de Datos Permite que sólo se puedan ver. Un DBMS es una colección de numerosas rutinas de software interrelacionadas.htm 21 . los registros de la base de datos. Permite configurar los derechos de edición. en 1970 Codd propuso el modelo relacional.org/es/Caracter%C3%ADsticas_de_la_base_de_datos_(m%C3%B3dulo) 28 http://sistemas. este modelo es el que ha marcado la línea de investigación por muchos años. Podemos permitir añadir comentarios a las entradas de la base de datos.edu. Podemos habilitar la revisión del profesor antes de que las entradas sean públicas. cuando el usuario haya introducido un determinado número de registros en ella. Explicar Sus Orígenes Y Antecedentes: Surgen desde mediados de los años sesenta la historia de las bases de datos.3 Manejadores de Bases de Datos El sistema manejador de bases de datos es la porción más importante del software de un sistema de base de datos.28 26 27 http://www. Esto no restringe la visualización de sus entradas para todos. ahora se encuentran los modelos orientados a objetos.monografias. permite Base de Datos es un conjunto exhaustivo no redundante de datos estructurados organizados independientemente de su utilización y su implementación en máquina accesibles en tiempo real y compatibles con usuarios concurrentes con necesidad de información diferente y no predicable en tiempo.mx/tutoriales/basedat1/tema1_9.

4 Introducción a My SQL Es un sistema de gestión de base de datos relacional. En el fichero de texto debe haber un tabulador de separación entre cada columna. Nos parece más importante incidir en aquellos aspectos en los que My SQL dispone de alguna funcionalidad añadida o diferente.2.. el estándar SQL ha aparecido en diferentes versiones como por ejemplo: SQL: 92. SQL: 99. que permite la importación de datos contenidos en un fichero de texto. el cual fue presentado a ANSI y desde entonces ha sido considerado como un estándar para las bases de datos relacionales. Así pues. para insertar filas en una tabla podemos. Las operaciones básicas de manipulación de datos son: 29 http://es. aprovecharemos este punto para recordar las más importantes en la siguiente tabla . aprovechar la instrucción LOAD DATA INFILE. fiabilidad o usabilidad.29 2.wikipedia.5 Administrar y Manipular Datos en My SQL Las instrucciones para introducir y manipular datos en una tabla han sido ampliamente estudiadas en unidades anteriores.. Fue comercializado por primera vez en 1981 por IBM. Allan Larsson. My SQL es una idea originaria de la empresa opensource My SQL AB establecida inicialmente en Suecia en 1995 y cuyos fundadores son David Axmark. Sin embargo.. además de hacerlo manualmente con INSERT.org/wiki/MySQL 22 . SQL: 2003. y Michael "Monty" Widenius.. El objetivo que persigue esta empresa consiste en que My SQL cumpla el estándar SQL. pero sin sacrificar velocidad. Desde 1986. multihilo y multiusuario con más de seis millones de instalaciones. Los requisitos para que esta sentencia funcione son los siguientes:   El fichero de texto debe estar en la misma carpeta que la tabla a la cual desea importarse. No vamos a insistir en la sintaxis y el uso de estas instrucciones.INTO TABLE.

Borrar.Añadir. Borrar datos: Se utiliza el comando DELETE Notación: DELETE FROM <tabla>WHERE <condiciones booleanas>.30 30 http://www. Modificar.com/curso-mysql-informatica-software/mysql-introduccion-manipulaciondatos 23 .mailxmail.

24 .

o. Aplicaciones de My SQL con PHP."juan".org/wiki/PHP 25 .wikipedia.  Conectarnos con la Base de Datos My SQL: Para conectarnos a My SQL tenemos que tener saber host."usuario".31 3. PHP es un acrónimo recursivo que significa PHP Hypertext Preprocessor (inicialmente PHP Tools. Publicado bajo la PHP License. ?> 31 http://es. JAVA y WML 3. PersonalHome Page Tools). Conectarse con el servidor de datos My SQL Conectarse con la base de datos deseada Hacer la consulta SQL a una tabla específica. sin embargo la implementación principal de PHP es producida ahora por The PHP Group y sirve como el estándar de facto para PHP al no haber una especificación formal. ?> <?php $myconn = @mysql_connection("localhost". Veamos entonces los 3 pasos por separado."contraseña").2 Conectar My SQL y PHP Para conectarnos desde PHP a una base de datos en My SQL y mostrar datos contenidos en ella. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+..Capítulo 3.1 Antecedentes de PHP PHP es un lenguaje de programación interpretado. diseñado originalmente para la creación de web dinámicas. debemos hacer tres pasos escenciales. la Free Software Foundation considera esta licencia como software libre. un nombre de usuario y su contraseña."diablo"). Fue creado originalmente por Rasmus Lerdorf en 1994. La línea de debe ser de este estilo: <? My sql_connection("host"..

$variable_de_conexion). haremos la conexión con una base de datos específica. De modo contrario mostraremos un mensaje personalizado informando del error. } 26 . fue correcta. Pero si existirán claro. Para que esto pueda salir exitoso. y datemos la carga de la página PHP. exit(). no devuelve nada. Veamos de que se trata el paso numero 2 y como se debería escribir. no los mostrará)..  Conectarnos a la base de datos deseada: A continuación. } ?> En el caso de que $myconn haya fallado. El paso numero 1 está completo. Vemos como hacemos esto: <?Php //Si $myconn tira un error. y detenemos la carga de la página con exit() if (! $myconn){ echo "Error al intentar conectarse con el servidor MySQL". como dijimos al comienzo. La línea de selección de la base de datos es de este estilo: <? mysql_select_db("base_de_datos". Hasta aquí lo que hicimos es conectar con el servidor MySQL y chequear que esa conexión sea exitosa. mostramos el mensaje personalizado.//Mostramos un mensaje..Notar que agregue un caracter '@' antes de la línea de conexión. exit(). En caso de que se cumpla. Básicamente lo que se hizo fue preguntar si $myconn no devolvió nada. tiene que estar la primera parte terminada. lo detectamos así. A continuación evaluaremos si la conexión recién hecha.$myconn)){ echo "No se pudo conectar correctamente con la Base de datos". ?> <?php if (! @mysql_select_db("base1". Esto es para que PHP ejecute la línea en forma silenciosa (si hay errores.

x en los proyectos que hemos realizado.?> Lo que hicimos fue escribir la línea de conexión a la base de datos (también con '@') ya dentro del IF que nos chequea si fue correcto o incorrecto el intento.com/construccion/lenguajes/php/lessons/phpiss/conectar-mysql-php. ?> Esta es la más usada. Como se puede entender.php http://web506. EJEMPLO: <?Php …. lo primero que debemos hacer es descargarnos e 32 33 http://www.0 de PHP (última versión disponible). después de los buenos resultados obtenidos con las versiones 4. gestionando las bases de datos y tablas que tengamos en él. para comenzar a tener los primeros contactos con ella.3 Desplegar Información Para agregar código de PHP hay varias formas.32 3. por lo tanto. que nos permite administrar y mantener nuestro servidor My SQL. para la realización de este tutorial.webtaller.wordpress.?> </body> </HTML>33 3. El entorno de trabajo para este ejemplo. es una herramienta de libre disposición. muy sencilla y completa. Esta último argumente es opcional. PHP tomará por defecto la última conexión realizada a My SQL.com/tag/desplegar-informacion/ 27 . se basará en un sistema con Microsoft Windows XP. </script> Aquí hay un ejemplo más completo… <Html> <head> <title>Example</title> </head> <body> <?php echo “Hi. estamos intentando una Base que se llama 'base1'.4 Aplicaciones Web utilizando My SQL y PHP PHPmyAdmin. Además. y usamos la variable de conexión anterior para indicar con que conexión debe ejecutarse. abre con <?php ACA EL CONTENIDO y cierra con ?> Otra forma para insertar código PHP seria esta <Script languaje=”php”>…. utilizaremos la versión 5. Esto es un Script PHP”.

com/index. Hemos utilizado la versión 4. y otro programa para accesar a My SQL.5 Aplicaciones utilizando My SQL y JAVA JDBC es un API de Java para acceder a manejadores de bases de datos. y prácticamente a cualquier tipo de dato tabular. En otras palabras.com/bases-de-datos_11.0 para PHP.36 34 35 http://www.html 28 .com/tutoriales/phpmyadmin. con esta API. Esto permite que usted cree y mantenga su sitio WAP fácilmente por el interfaz de usuario de web.php?option=com_content&task=view&id=11&Itemid=6 36 http://html.rincondelvago.0 para My SQL y la versión 5. Nuestra aplicación Java debe tener acceso a un controlador (driver) JDBC adecuado.htm http://caminolibre.instalar las versiones tanto de My SQL. El API JDBC consiste de un conjunto de clases e interfaces que permiten a cualquier programa Java acceder a sistemas de bases de datos de forma homogénea.6 Aplicaciones móviles usando My SQL y WML Wap Servidor Portal es el Sistema de Dirección de Contenido de WAP. Este controlador es el que implementa la funcionalidad de todas las clases de acceso a datos y proporciona la comunicación entre el API JDBC y la base de datos real. Si usted quiere crear un sitio WAP y actualizarlo en la base regular entonces el Servidor de Puerta de Wap es la solución derecha para usted. El Servidor de Puerta de Wap está basado en PHP y My SQL. Ningún conocimiento técnico de WML es requerido.carixma.35 3. otro programa para accesar a Oracle. para Windows. como de PHP. De una manera muy simple.34 3. con el API JDBC no es necesario escribir un programa para accesar a Sybase. El mantenimiento de su sitio portal WAP con el Servidor Portal Wap es tan fácil como la escritura de un correo electrónico o relleno de una forma de web. se puede crear un sólo programa que sea capaz de enviar sentencias SQL a la base de datos apropiada.

de otras palabras Archivar: Guardar documentos o información en un archivo o archivador Atributo: Cualidad de un ser Binar: Arar por segunda vez las tierras de labor Clave: Conjunto de los signos convenidos para escribir en cifra Conversión: Cambio de una cosa en otra DDL: (Data Definition Language) Disposición: Ordenación de algo de la forma conveniente para lograr un fin Encriptación: Es la acción de proteger información para que no pueda ser leída sin una clave Entidad: Lo que constituye la esencia o la forma de una cosa Foráneo(a): Forastero. o del mismo objeto en su pura esencia o noción Acrónimo: Palabra formada por las iníciales. cláusulas y oraciones y la función que desempeñan dentro de estas Sustracción: Robo. y a veces por más letras. Inherente: Que por su naturaleza está inseparablemente unido a algo Redundancia: Repetición inútil de un concepto Rudimentario: Simple y elemental Sintaxis: Parte de la gramática que estudia la forma en que se combinan y relacionan las palabras para formar secuencias mayores. extranjero Generalizar: Sacar una conclusión general de algo particular Gestor: Que hace gestiones por oficio Indexado: Nombre que se le da al proceso de recolectar y almacenar páginas web por parte de un buscador de internet.GLOSARIO Abstracción: Consideración aislada de las cualidades esenciales de un objeto. hurto 29 .

com.rincondelvago.rincondelvago.html (11)http://www.trucostecnicos.php?id_art=278 (19)http://www.alegsa.htm (15)http://html.iespana.monografias.deltaasesores.mx/people/carlos/is341/bases04.es/bases.org/wiki/Modelo_entidad-relación (9(http://ict.org/wiki/Base_de_datos_relacional#Restricciones (7)http://www.wikipedia.mitecnologico.org/wiki/Producto_cartesiano (18)http://www.utm.com/algebra_2.com/Main/3FnYFnbcFormaNormalBoyceCood 30 .tendencias21.edu.wikipedia.monografias.FUENTES DE CONSULTA (1)http://sistemas.ar/Dic/entidad.html (17)http://es.mx/tutoriales/basedat1/tema3_1.htm (2)http://es.rincondelvago.um.com/trabajos5/norbad/norbad2.com/view.wikipedia.org/wiki/Segunda_forma_normal (21)http://www.com/bases-de-datos_11.com/Main/FormasNormalesBasesDatos (20)http://es.php?ItemID=371 (8)http://es.html (10)http://html.html (5)http://www.com/servicios/tecnologia-informatica/608-seleccionde-tecnologia-informatica (12)http://www.manualesinformatica.com/informatica-documental.es/docencia/barzana/IAGP/IAGP2-Bases-datosrelacionales.shtml (14)http://castronauta.com/trucos/ver.mitecnologico.html (16)http://www.php (4)http://html.pdf (22)http://www.wikipedia.itlp.com/trabajos5/norbad/norbad2.udlap.wikipedia.mx/~erik/3FN.net/La-relacion-con-el-entorno-es-la-base-de-lossistemas-complejos_a1151.org/wiki/Modelo_relaciona (3)http://www.html (6)http://es.shtml (13)http://www.

com/construccion/lenguajes/php/lessons/phpiss/conectarmysql-php.carixma.php?option=com_content&task=view&id=11&Item id=6 31 .shtml (28)http://docs.net/heber/lenguaje-de-manipulacin-de-datos (27)http://www.umich.slideshare.wikipedia.itlp.(23)http://www.wikipedia.org/wiki/Lenguaje_de_definición_de_datos (26)http://www.es/personal/lermon/cat/articles/evin0273.wikipedia.org/wiki/MySQL (31)http://www.com/trabajos11/basda/basda.wordpress.terra.com/tag/desplegar-informacion/ (35)http://www.php (34)http://web506.com/tutoriales/phpmyadmin.mx/tutoriales/basedat1/tema1_9.html (25)http://es.mx/~elizalde/tesis/node3.htm (30)http://es.org/wiki/PHP (33)http://www.org/es/Caracter%C3%ADsticas_de_la_base_de_datos_(m %C3%B3dulo) (20)http://sistemas.webtaller.mailxmail.monografias.htm (36)http://caminolibre.fismat.com/curso-mysql-informatica-software/mysqlintroduccion-manipulacion-datos (32)http://es.edu.com/index.htm (24)http://www.moodle.