You are on page 1of 46

UNIVERSIDAD DE LAS FUERZAS ARMADAS

ESPE SEDE LATACUNGA


INFORME DE LABORATORIO DE PROGRAMACION

DATOS INFORMATIVOS:

Docente:

CALIFICACIN:

Ing. Milton Escobar

Estudiantes o integrantes:
Cobena Govea Tomas Lecxinton

Fecha de realizacin de la prctica:

2016-02-05

Fecha de entrega de la prctica:

2016-02-05

LATACUNGA ECUADOR

Ing. Milton Escobar


1

TEMA: Creacion de Base de datos en My SQL y Netbeans


OBJETIVOS:
General:
Realizar la creacion de una base de datos y su respectiva coneccion a traves de el software
Netbeans.
MARCO TEORICO:
Base de Datos: conjunto de datos persistentes, pertenecientes a un mismo contexto,
almacenados sistemticamente para ser usados por los sistemas de aplicacin de
alguna empresa dada. El trmino empresa es genrico.
DBMS: es un tipo de software dedicado a servir de interfaz entre la base de datos, el
usuario y las aplicaciones que la utilizan. Maneja todas las solicitudes de acceso a la base
de datos y tambin se lo conoce como servidor de base de datos.
RDBMS vs. FLAT model: Una base de datos en un archivo plano est diseado con una
sola tabla y es en ella en donde se pone toda la informacin, dando lugar a duplicacin de
informacin y muchas veces inconsistente o corrupta.
Una BD relacional, incorpora mltiples tablas con mtodos para hacerlas trabajar
conjuntamente, eliminando inconsistencias y redundancia. Se vale del lgebra Relacional
y el Clculo Relacional. Su paradigma se basa en la lgica de proposiciones y
la teora de conjuntos.
Motores Transaccionales: son aquellos motores que soportan transacciones, las cuales
constituyen la unidad lgica de trabajo, es decir, son operaciones atmicas que mantienen
la consistencia de la BD. Se ejecuta todo o nada.
Clustering: cuando varias piezas de hardware (mquinas) trabajan conjuntamente como si
fueran solamente una.
SQL - Conceptos elementales
Tiene tres categoras: DDL (Definicin), DML (Manipulacin) y DCL (Control). Est
estandarizado por ANSI, W3C, ISO

Ing. Milton Escobar


2

Servidor: instancia del servicio en ejecucin. Puede tener varias DB en una instancia, y un
servidor puede tener varias instancias.
Rol: serie de permisos y parmetros para un usuario. Vienen algunos predefinidos y
tambin podemos definir los nuestros.
DATA MANIPULATION LANGUAGE
Consultas e ingreso, modificacin y eliminacin de datos

DATA CONTROL LANGUAGE


Asignacin de permisos sobre la base de datos y sus objetos

Ing. Milton Escobar


3

OPERACIONES COMUNES
CREACIN BD (est compuesta de dos archivos, el primario y el log)

database_name: Es el nombre de la nueva base de datos. Los nombres de base de datos


deben ser nicos en una instancia de SQL Server y cumplir las reglas de los
identificadores.
ON: Especifica que los archivos de disco utilizados para almacenar las secciones de datos
de la base de datos (archivos de datos) se definen explcitamente. ON es obligatorio
cuando va seguido de una lista de elementos separados por comas que definen los archivos
de datos del grupo de archivos principal. Detrs de la lista de archivos del grupo de
archivos principal se puede colocar una lista opcional de elementos separados por comas
que definan los grupos de archivos de usuario y sus archivos.
PRIMARY: Especifica que la lista de elementos asociada define el archivo principal. El
primer archivo especificado en la entrada del grupo de archivos principal se convierte en el
archivo principal. Una base de datos slo puede tener un archivo principal.
LOG ON: Especifica que los archivos de disco utilizados para almacenar el registro de la
base de datos (archivos de registro) se definen explcitamente. LOG ON va seguido de una
lista de elementos separados por comas que definen los archivos de registro. Si no se
Ing. Milton Escobar
4

especifica LOG ON, se crea automticamente un archivo de registro cuyo tamao es el 25


por ciento de la suma de los tamaos de todos los archivos de datos de la base de datos, o
512 KB, lo que sea mayor. LOG ON no se puede especificar en una instantnea de base de
datos.
COLLATE collation_name: Especifica un juego de caracteres (codificacin)
predeterminado de la base de datos.
CREAR TABLA:

database_name: nombre de la base de datos en que se crea la tabla. database_name debe


especificar el nombre de una base de datos existente. Si no se especifica, database_name
utiliza de manera predeterminada la base de datos actual.
schema_name: Es el nombre del esquema al que pertenece la nueva tabla.
table_name: Es el nombre de la nueva tabla. Los nombres de tablas deben seguir las reglas
de los identificadores.
column_name: Es el nombre de una columna de la tabla. Los nombres de columna deben
seguir las reglas de los identificadores y deben ser nicos en la tabla.

PROCEDIMIENTOS:
QU ES MYSQL WORKBENCH?

Ing. Milton Escobar


5

MySQL Workbench es un software creado por la empresa Sun Microsystems, esta


herramienta permite modelar diagramas de Entidad-Relacin para bases de datos MySQL.
Con esta herramienta se puede elaborar una representacin visual de las tablas,
vistas, procedimientos almacenados y claves forneas de la base de datos. Adems, es
capaz de sincronizar el modelo en desarrollo con la base de datos real. Se puede realizar
una ingeniera directa e ingeniera inversa para exportare e importar el esquema de una
base de datos ya existente el cual haya sido guardado o hecho copia de seguridad con
MySQL Administrador.
MySQL Workbench puede generar tambin el guin necesario para crear la base de datos
que se ha dibujado en el esquema; es compatible con los modelos de base de datos de
DBDesigner 4 y soporta las novedades incorporadas en MySQL 5.x
CMO CONSEGUIR LA APLICACIN?
Existen versiones para Window, Linux y Mac. Hay que tener en cuenta que para los dos
ltimos sistemas las versiones son Betas. Los links de descarga son los siguientes:
Windows y Linux:
http://dev.mysql.com/downloads/workbench/5.1.html
Mac:
http://dev.mysql.com/workbench/?p=182
INSTALACIN DE MYSQL WORKBENCH
Para poder realizar este proceso es importante tener el instalador de MySQL WorkBench.

1. Ejecutamos el programa

2. Muestra una ventana de bienvenida. Para continuar con la instalacin se da click


en el botn Next.

Ing. Milton Escobar


6

3. El siguiente paso muestra la ruta de donde se instala el programa

4. Instalacin del programa se procede presionando el botn "Install"

Ing. Milton Escobar


7

5. Procesando instalacin, y es importante esperar unos minutos,

6. Una vez que la Instalacin haya finalizada, hacer Click en el botn "Finish"

Ing. Milton Escobar


8

7. Ventana de bienvenida

Ing. Milton Escobar


9

DISEAR Y CREAR UNA BASE DE DATOS CON MYSQL WORKBENCH


MySQL Workbench nos permite desde una ambiente grfico, disear un modelo E-R de
una base de datos.
En el ejemplo crearemos una base de datos muy sencilla, la cual no representa un ejemplo
real. Simplemente es para probar las caractersticas.

Primero creemos el esquema fsica, Abajo se abre una pestaa en que nos pregunta
el nombre del esquema (ej. llamamos test) y el idioma del esquema, el cual se recomienda
Ing. Milton Escobar
10

dejar por server default como se muestra en la figura. Si la aplicacin pregunta si desean
renombrar todos los objetos, seleccionen "Si".

Ya creado el esquema, procedemos a crear las tablas. Existen dos formas, aunque
muy similares de crearlas. La primera es desde la pantalla en la que estamos, la otra es
mediante la ventana visual, en la cual podremos adems, realizar las relaciones entre las
tablas.

Primero: Creamos las tablas en el esquema fsico. Sin entrar a la ventana


de diagrama.
Verifica que estas en el esquema fsica y luego haz doble Click en el icono de "Add

Table".

Ing. Milton Escobar


11

Al hacer Click en esta opcin, se despliega al lado un icono representando la nueva


tabla, mientras que debajo se abre una nueva pestaa, en la cual podemos editar todo al
respecto de las tablas haciendo Click en cada una de las pestaas ubicadas en la parte
inferior de esta nueva pestaa.

Ing. Milton Escobar


12

Al hacer Click en la pestaa "Columns", podemos editar todas las columnas de la


tabla indicada. Podemos alterar el nombre, el tipo de dato, si es nulo o no (NN) y si es
Auto incremental (AI), obviamente este ltimo es slo para datos de tipo numrico, De
igual forma podemos especificar un valor por default para la columna. En la parte derecha,
inmediatamente podemos indicar si la columna seleccionada hace parte de la llave
primaria (PRIMARY KEY), si es UNSIGNED o ZEROFILL para las variables numricas
y si la variable es de tipo carcter, podemos especificar si es BINARY.

Ing. Milton Escobar


13

Ahora pasemos a crear una tabla por medio de un diagrama E-R.


En la parte superior observamos la opcin "Add Diagram". Hacemos doble Click
sobre ella.

Ing. Milton Escobar


14

Luego se abre una nueva pestaa en la cual encontramos un grid. A la izquierda,


encontramos una barra de herramientas, desde la cual podremos crear tablas y vistas,
adems de relaciones (1:1, 1:n, n:m) y a la derecha un rbol con los objetos de nuestro
esquema. De esa ventana, seleccionamos la tabla que creamos y la arrastramos hasta el
grid. Luego hacemos Click derecho y seleccionamos "Edit Table", abajo nos muestra la
pestaa para editar la tabla y crear columnas, llaves, etc.

Ing. Milton Escobar


15

Buscamos a la izquierda el cono que nos permite crear una nueva tabla. Hacemos
un Click en el cono y luego un Click en el grid.

Ing. Milton Escobar


16

Editamos la segunda tabla y ahora haremos una relacin muchos a uno.


Seleccionamos el icono, y luego cada una de las tablas (primero la de muchos y luego la de
uno). En el caso, la tabla de "muchos" es table1. Quedara algo as:

Ing. Milton Escobar


17

Como ven el Workbench se apega a la teora relacional, donde en este caso la llave de la
relacin "uno" pasa a la tabla de "muchos". Igualmente si creamos una relacion M.N
(muchos a muchos) generar una relacin entre las dos tablas.
Ejemplo:
Base de datos VENTAS

1. Para proceder con este paso es necesario, tener abierto el programa. Luego
procederemos a darle un nombre a nuestra base de dato. En el elemplo "Mydb" o
cualesquiera que Ud. Elija (BDVentas, trabajoBD, base, etc)

Ing. Milton Escobar


18

2. Ahora, adicionamos "Add Table" una tabla a nuestro base de datos en la ventana
"Esquema fsica de MySQL Workbench"

3. Del mismo modo podemos adicionar ms tablas necesarias, aunque en esta


misma ventana podemos tambin editar todos los atributos de cada tabla.

Ing. Milton Escobar


19

4. En este paso, entramos a la ventana de diagrama en el cual haremos las


relaciones entidad-relacin. para podemos agregar los atributos a las tablas (en el paso
anterior, no agregamos ningn atributo), hacemos click en cada tabla en la parte de
Catlogos de la ventana del programa.

Ing. Milton Escobar


20

5. Luego como ya se dijo anteriormente, agregamos los atributos de nuestras tablas.

6. Relacionamos las tablas, de acuerdo el tipo de relacin que le corresponde. En


este caso tenemos las tablas PRODUCTO MARCA, la relacin que le corresponde es:
uno a muchos(uno-producto; muchos-marca)

Ing. Milton Escobar


21

7. Y procedemos a realizar el aso anterior para todas las tablas, para luego obtener
la base de datos completa.

LA GENERACIN DEL SCRIPT SQL

1. Teniendo listo la base de datos, podemos exportar o hacer una ingeniera directa
a MySQL

Ing. Milton Escobar


22

2. Como ven, podemos exportar el diseo, incluso como una imagen en pdf, o en
png, entre otros. La primera pantalla, nos muestra las opciones con las que queremos que
se genere el script DDL. Luego seleccionamos la ubicacin destino del archivo que se
crear.

3. Luego nos muestra un resumen de lo que crear; usuarios, tablas, vistas, rutinas
y triggers. Incluso si seleccionamos el botn "DetailedSelection" de cada seccin,
podemos especificar an ms, por ejemplo, qu tablas deseo realmente exportar.

Ing. Milton Escobar


23

4. Luego finalizar, y en la ruta que le hallamos indicado estar un archivo .SQL,


con nuestro script. Como se podrn dar cuenta Workbench, resuelve algunas limitantes en
la comunidad open source de un buen software frontend para MySQL, y sobre todo de una
herramienta que provea Forward Engineering, de una manera tan sencilla y bien ilustrada.

Ing. Milton Escobar


24

CARGAR LA BASE DE DATOS

1. Entrar el administrador de MySQL

2. Se abre una ventana de dialogo, cual nos muestra muchas opciones del
administrador de MySQL. Entramos a la opcin Restore.

Ing. Milton Escobar


25

3. Se abrir una ventana, cual nos pedir la carpeta en donde est guardado la base
de datos.

4. Luego de ubicar nuestro base de datos, marcamos con un check la opcin


"ignore errors"

Ing. Milton Escobar


26

5. Procedemos a cargar la base de datos, hacer click en el botn "starrestore"

6. Se procesara la restauracin de base de datos.

Ing. Milton Escobar


27

7. Abrir el query browser de mysql

8. Ya teniendo la ventana abierta del QueryBroser, en la parte "esquema" (shemata)


aparecer nuestra base de datos.

Ing. Milton Escobar


28

9. Aunque tambin podemos abrir el script de nuestra base de datos en Query


Browser.ir al men Filey la opcin open script. y pedir la carpeta de origen de nuestra
base de datos

10. luego abrir la carpeta pedido, se mostrara de la siguiente manera.

Ing. Milton Escobar


29

11. ejecutar el script.

PASOS PARA LA INGENIERA DIRECTA EN MYSQL WOCKBENCH

1. Modelar en WorkBench

Ing. Milton Escobar


30

Se realiza un modelado de sistema de videos en la Herramienta WorkBench como se


muestra.

2. Configuracin de la base de Datos.


Se selecciona del men de herramientas la opcin Database, como se muestra en la figura.

Ing. Milton Escobar


31

3. Configuracin de la Conexin
Se selecciona del men desplegable ManageConnections.

4. Agregar una nueva Conexin


Se hace Click en la opcin de New, para crear una nueva Conexin

Ing. Milton Escobar


32

5. Se Activa los Datos para agregar la nueva Conexin


Connection name, Connection Method, Hostname, Port, Username, Password, Default
Schema.

6. Agregar los datos para conectar a MySql


Connection name: ConeccionMySql, Connection Method: TCP/IP, Hostname: localhost,
Port: 3306, Username:root, Password: ----, Default Schema: ---.

Ing. Milton Escobar


33

7. Probar la Conexin
Hacer Click en Test Connection para comprobar la conexin

Ing. Milton Escobar


34

8. Se Activa la Ingeniera Directa para crear la Base de Datos


Se selecciona Forward Engineer de la barra de men Database.

9. Se muestra las opciones de creacin de la Base de Datos


Se muestra en un cuadro de dialogo las opciones a elegir para la creacin del cdigo de la
Base de Datos

Ing. Milton Escobar


35

10. Seleccin de Opciones de Creacin de la Base de Datos


Se selecciona todas las opciones a generar el cdigo para la Base de Datos.

11. Seleccin de Objetos a incluir en la Ingeniera Directa


Se selecciona los objetos que se desea exportar a la Base de Datos mediante de la
Ingeniera Directa.

Ing. Milton Escobar


36

12. Generacin y Revisin del Cdigo SQL que ser ejecutado


Se muestra el cdigo SQL para la creacin de cada objeto o elementos que este en la Base
de Datos.

13. Se configura la conexin a utilizar para conectar al DBMS


Se selecciona la conexin que se configuro previamente en el Database.

Ing. Milton Escobar


37

14. Nos conectamos por ConeccionMysql


Se selecciona la configuracin previa en el Database.

15. Se Guardan los datos de conexin antes grabados


Se levantan los datos en los casilleros para hacer la Conexin al DBMS

Ing. Milton Escobar


38

16. Se muestra el Progreso de la Ingeniera Directa


Muestra si existe la Conexin al DBMS y la ejecucin del Cdigo SQL

17. Se ingresa al MySQL Query Browser


Se ingresa al DBMS para verificar si se cre la Base de Datos correspondiente

Ing. Milton Escobar


39

18. En la parte derecha existe una Base de Datos llamada Coneccmysql


Se cre la BD mediante el cdigo generado por la Ingeniera Directa desde WorkBench

19. Se muestran las tablas creadas mediante el cdigo SQL


Se visualizan las tablas u objetos creados mediante el cdigo SQL

Ing. Milton Escobar


40

En primer lugar vamos a crear una base de datos, a la cual yo llamar: java_mysql. La mista
tendr una sola tabla llamada tareas con el siguiente cdigo:

CREATETABLEtareas(id_tareaint(10)unsignednotnull
auto_incrementprimarykey,titulovarchar(50)notnull,
descripcionvarchar(255)notnull,nivel_de_prioridad
tinyint(1)notnull);

Java
Vamos a abrir Netbeans y vamos a crear un nuevo proyecto, yendo a File -> New Project ->
Java -> Java Application.

Ing. Milton Escobar


41

Vamos a ponerle un nombre y vamos a guardarlo en alguna parte de nuestra mquina.


Vamos a borrar todo lo que est dentro de la carpeta source (o src) y dentro vamos a crear
dos paquetes, uno al que yo llamar modelos y otro al que llamar servicios.

Ahora, para conectar Java a MySQL tenemos que agregar un librera que se encargar de
hacer esa magia. As que dentro que pulsando botn derecho sobre la carpeta Libraries,
vamos a ir a Add Library

Ing. Milton Escobar


42

Y agregamos la librera MySQL JDBC Driver, primero seleccionndola y luego pulsando Add
Library.

Bueno, ya tenemos todo, no nos falta nada. Ya podemos empezar a escribir cdigo Java.
Dentro del paquete modelos, vamos a crear una clase, a la que yo llamar Tarea.java, con el
siguiente cdigo:

Ing. Milton Escobar


43

packagemodelos;publicclassTarea{privatefinalInteger
id_tarea;privateStringtitulo;privateString
descripcion;privateIntegernivel_de_prioridad;public
Tarea(){this.id_tarea=null;this.titulo=null;
this.descripcion=null;this.nivel_de_prioridad=null;
}publicTarea(Integerid_tarea,Stringtitulo,String
descripcion,Integernivel_de_prioridad){this.id_tarea
=id_tarea;this.titulo=titulo;this.descripcion
=descripcion;this.nivel_de_prioridad=
nivel_de_prioridad;}publicIntegergetId_tarea(){
returnid_tarea;}publicStringgetTitulo()
{returntitulo;}publicStringgetDescripcion(){
returndescripcion;}publicInteger
getNivel_de_prioridad(){returnnivel_de_prioridad;}
publicvoidsetTitulo(Stringtitulo){this.titulo=
titulo;}publicvoidsetDescripcion(Stringdescripcion)
{this.descripcion=descripcion;}publicvoid
setNivel_de_prioridad(Integernivel_de_prioridad)
{this.nivel_de_prioridad=nivel_de_prioridad;}
@OverridepublicStringtoString(){return"Tarea{"+
"id_tarea="+id_tarea+",titulo="+titulo+",
descripcion="+descripcion+",nivel_de_prioridad="+
nivel_de_prioridad+'}';}}
Una clase, nada nuevo, que va a representar el modelo de una tarea.

Conectando JAVA con MySQL


Bien, ahora creamos la clase que va a conectar nuestra aplicacin con MySQL, yendo al
paquete servicios, vamos a crear una nueva clase llamada Conexion.java con el siguiente
cdigo:

packageservicios;importjava.sql.*;publicclassConexion{
privatestaticConnectioncnx=null;publicstatic
Connectionobtener()throwsSQLException,
ClassNotFoundException{if(cnx==null){try
{Class.forName("com.mysql.jdbc.Driver");
cnx=
DriverManager.getConnection("jdbc:mysql://localhost/java_mysql"
,"root","");}catch(SQLExceptionex){
thrownewSQLException(ex);}catch
(ClassNotFoundExceptionex){thrownew
ClassCastException(ex.getMessage());}}
returncnx;}publicstaticvoidcerrar()throws
Ing. Milton Escobar
44

SQLException{if(cnx!=null){cnx.close();
}}}
Esta clase tendr un mtodo esttico llamado obtener(), el cual va a devolvernos una
instancia de conexin y de no haber una previa va crear una:

cnx=
DriverManager.getConnection("jdbc:mysql://localhost/java_mysql"
,"root","");
Esto gracias al mtodo getConnection(), el cul recibir como primer parmetro el tipo de
base de datos (MySQL) y la ubicacin de la base de datos, en mi caso, como estoy
trabajando en un entorno local, ser localhost. El segundo parmetro es el usuario y el tercero
la contrasea.
A su vez este mtodo puede disparar dos excepciones, SQLException, si surge algn error,
por ejemplo que no se pueda conectar a la base de datos, y ClassNotFoundException, en
caso de que no encuentre la librera.
Y por ltimo el mtodo, tambin esttico, cerrar(), que como su nombre lo indica, cerrar la
conexin, en caso de que haya alguna abierta.

CONCLUSIONES
En la practica anteriormente realizada con los conocimientos adquiridos en clases
al momento de realizar el proyecto de base de datos con interfaz grafica en net
beans se concluyo que los codigos usados en My SQL son mas sencillos de usar
por su facilidad y interfaz amistosa con el usuario y se pudo concluir que el manejo
de datos con bases resulta de mucha ayuda al momento de control y manejo de
personal entre otros
RECOMENDACIONES:
Trata de seguir la guia brindada por el docente para un facil entendimientos de el proyecto
requerido .
BIBLIOGRAFIA:
http://www.monografias.com/trabajos81/introduccion-bases-datos-y-sql/introduccionbases-datos-y-sql.shtml#ixzz407C1vJGI
http://www.monografias.com/trabajos88/mysql-worckbench/mysqlworckbench.shtml#ixzz407EZL7EX
Ing. Milton Escobar
45

Ing. Milton Escobar


46

You might also like