Lab9mysql Entregar

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Lab9mysql Entregar as PDF for free.

More details

  • Words: 2,051
  • Pages: 16
UNIVERSIDAD NACIONAL DE PANAMA FACULTAD DE INFORMATICA ELECTRÓNICA Y COMUNICACION LICENCIATURA EN INFORMATICAPARA LA GESTION EDUCATIVA Y EMPRESARIAL

ASIGNATURA PROGRAMACIÓN IV INF212 ASIGNACIÓN LABORATORIO # 9 Mysql PROFESOR : DIEGO SANTIMATEO G.

INTEGRANTES: NELVIN POLANCO 9-724-1604 MISAEL RODRÍGUEZ 8-406-874

FECHA DE ENTREGA: 13 DE DICIEMBRE DE 2007 II SEMESTRE 2007 ÍNDICE

1.Qué es una base de datos y un motor (manejador) de base de datos. Una Base de Datos es conjunto de información (datos en formato texto plano.) relacionados que se encuentran agrupados ó estructurados. Por lo general estos datos son almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos. un manejador de base de datos es la Parte más importante del software de un sistema de base de datos ya que se encarga del control total, y de los posibles aspectos que la puedan afectar, Sirve de interfaz entre los datos y los programas de aplicación. 2.Una tabla y sus componentes. ejemplos de varios registros. Indicamos cómo están constituidos los registros. Una tabla es donde se guardan los datos recolectados por un programa. Su estructura general se compone de: Campos: Corresponde al nombre de la columna, Deben relacionarse con las características (atributos) de cada registro localizado en la fila. Registro: Corresponde a cada fila que compone la tabla. Allí se componen cada uno de los registros que contendrá la base de datos

Ejemplo: Tabla Cliente Cada columna representa los atributos de la entidad del cliente Nombre Pedro López

Cédula 9-789-456

Dirección Teléfono Santiago, Veraguas 998-8901

José Muñoz Maria Ríos Luis Molina Edgardo Hernández

7-897-256 8-897-1231 9-785-972 9-789-1233

David, Chiriquí Panamá, Panamá Santiago, Veraguas Santiago, Veraguas

236-5689 260-7278 998-7845 999-5689

Registros que contienen la información (datos) de la entidad del empleado

3.¿Qué es SQL? ¿Qué es MYSQL?

SQL: es el lenguaje estándar utilizado para manejar las bases de datos. MYSQL: es un software creado por MySQL AB y es un software multiusuario, multihilos y un servidor SQL.

4.Estructura de los comandos SQL en MySQL para insertar, eliminar, actualizar y consultar registros de una tabla, así como para crear una tabla. ¿Cuál es la utilidad de la cláusula WHERE? •Insertar:

INSERT INTO: Es la sentencia SQL que inserta los valores en una tabla. •Eliminar:

DELETE FROM: Esta sentencia nos permite hacer que el contenido de la tabla se borre en su totalidad. •Actualizar:

UPDATE : permite modificar o cambiar los datos de la tabla. •Consultar:

SELECT: nos permite consultar los datos almacenados en una tabla de la base de datos. La cláusula WHERE es la instrucción que nos permite filtrar el resultado de una sentencia. Cuando no deseamos obtener toda la información existente en la tabla utilizamos la calusula WHERE en la sentencia SELECT, en caso que solo queremos obtener sólo la información que nos resulte util es ese momento, antes de ser devueltos por la consulta. Al igual si necesitamos que se grabe única y exclusivamente un dato en una columna, se verificará si la clausula WHERE cumple con la condición que sea, en la sentencia INSERT INTO. La condicion WHERE es opcional y puede no incluirse en, en caso de no ser insertadas, los datos se insertarán o mostrarán sin importar nada.

5.¿CUÁLES SON LOS TIPOS DE LOS CAMPOS Y QUÉ SIGNIFICA LLAVE PRIMARIA O KEY? En una base de datos es importante especificarle qué tipo de valor le estamos introduciendo a las tablas; de manera que podamos facilitar la búsqueda posteriormente y optimizar los recursos de memoria. existe un conjunto de tipos

de valores de campo que están representados en la totalidad de estas bases. Estos tipos comunes son los siguientes: Alfanuméricos: Contienen cifras y letras. Presentan una longitud limitada (255 caracteres) Numéricos: Existen de varios tipos, principalmente, enteros (sin decimales) y reales (con decimales). Boléanos: Poseen dos formas: Verdadero y falso (Sí o No) Fechas: Almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra... Memos: Son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados (veremos más adelante lo que esto quiere decir). Autoincrementables: Son campos numéricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta más que evidente: Servir de identificador ya que resultan exclusivos de un registro. llave primaria o key: se define para indicar en las tablas; la columna o conjuntos de columnas que son únicos (sus valores no se repiten en la tabla) y son la clave primaria de la tabla.

6.APLICACIÓN JAVA DEL LABORATORIO # 9 CLASE CLASEPRINCIPAL

//objetivo: llamado de los métodos import java.io.*; import javax.swing.*; import java.lang.String.*; class ClasPrincipal { public static void main(String args[]) throws Exception { CrearTabla tabla=new CrearTabla(); tabla.crea(); Datos base=new Datos(); base.TabDat(); Busqueda cedul=new Busqueda(); Capturaced cap =new Capturaced(); String cedu01= cap.getCed(); cedul.buscaced(cedu01); } } CLASE CREARTABLA // En esta clase creamos las tablas import java.sql.*; public class CrearTabla { public void crea () { Connection conn = null; try { String userName = "FIEC-03"; String password = ""; // se indica el servidor, puerto y la base de datos facultad de mysql String url = "jdbc:mysql://serfiec:3306/facultad"; Class.forName ("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection (url, userName, password); System.out.println ("Coneccion Database OKKK!!!"); try { Statement s = conn.createStatement (); //Creación de las Tablas s.executeUpdate("CREATE TABLE Asign (Cod VARCHAR(8), Abrev VARCHAR(7), NomAsig VARCHAR(50))");

s.executeUpdate("CREATE TABLE Profes(Codi VARCHAR(8),NomProf VARCHAR(35))"); s.executeUpdate("CREATE TABLE Estud (Ced VARCHAR(16),Nota VARCHAR(2),CodAsig VARCHAR(8),Codprof VARCHAR(8))"); s.close (); System.out.println ("creacion completada"); } catch (Exception e) { System.err.println ("Problemas con la tabla"+e); } } catch (Exception e) { System.err.println ("No se pudo conectar al Servidor Mysql"); } finally { if (conn != null) { try { conn.close (); System.out.println ("\no hay coneccion a Mysql"); } catch (Exception e) { /* sin mensajes de error */ } } } } } CLASE DATOS //Objetivo: introduce los datos a las tablas import java.io.*; import javax.swing.*; import java.lang.String.*; import java.sql.*; public class Datos { public void TabDat (){ String res=" "; String resul=" "; String es=" "; Connection conn = null; try {

String userName = "FIEC-03"; String password = ""; String url = "jdbc:mysql://serfiec:3306/facultad"; Class.forName ("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection (url, userName, password); System.out.println ("Coneccion Database OKKK!!!"); FileReader archi = new FileReader("Prueba.txt"); BufferedReader arch = new BufferedReader(archi); String linea=new String(); String codi=new String(); String nomas=new String(); String codiprofe=new String(); String nombprofe=new String(); Statement s = conn.createStatement (); while((linea=arch.readLine())!= null){//Lee el archivo línea por línea if (linea.indexOf("ASIGNATURA")!=-1){//Identifica los datos de las asignaturas nomas=" "; codi=" "; String[] id = linea.split(" "); for(int j=8;j
} String cedul="[ ]+"; String []datoced=linea.split(cedul); try{ Integer.parseInt(datoced[1]); String cedula=""; String cal=""; for (int j=2;j<6;j++) cedula+=datoced[j]+" "; cal=datoced[6]; //se insertan datos a la tabla Estudiante s.executeUpdate("INSERT INTO Estud ( Ced,Nota,CodAsig,Codprof)" ('"+cedula+"','"+cal+"','"+codi+"','"+codiprofe+"')"); } catch (Exception e) { } } //fin while s.close (); System.out.println("Dato correcto"); try { arch.close(); } catch ( IOException e ) { resul="El archivo no se pudo cerrar correctamente"+e; } } catch (Exception e) { System.out.println("***Error al leer o abrir el archivo...\n" +e); } } //fin metodo } // fin de Datos

CLASE CAPTURACED

+

"VALUES

//objetivo: se introduce la cédula del estudiante para la consulta

import javax.swing.*; import java.text.*; import java.lang.String.*; class Capturaced { public String getCed(){ String ced0= JOptionPane.showInputDialog(null, "Introduzca la cedula a consultar "); return (ced0); } } CLASE BUSQUEDA /*Objetivo: muestra los datos del estudiante consultado por la cedula, a*/

import java.io.*; import javax.swing.*; import java.lang.String.*; import java.sql.*; class Busqueda {

/* Recibe como parámetro la cédula a consultar, el mismo hace el llamado al método consulced2 que lleva como parámetro el código de asignatura y profesor */ public void buscaced (String cedula) {

Connection conn = null; try { String userName = "FIEC-03"; String password = ""; // se indica el servidor, puerto y la base de datos facultad de mysql String url = "jdbc:mysql://serfiec:3306/facultad";

Class.forName ("com.mysql.jdbc.Driver").newInstance (); conn = DriverManager.getConnection (url, userName, password); System.out.println ("Coneccion Database OKKK!!!"); try { //Uso de la tabla Estud de la base de datos facultad Statement s = conn.createStatement (); s.executeQuery ("SELECT Ced,Nota,CodAsig,Codprof FROM Estud WHERE Ced='"+cedula+"'");

ResultSet rs = s.getResultSet (); int cont= 0;

while (rs.next ()) { String codig = rs.getString ("Ced"); String nombre = rs.getString ("Nota"); String nombre2 = rs.getString ("CodAsig"); String nombre3 = rs.getString ("Codprof");

//Llama al método busced String cod01=busced(nombre2,nombre3); String[] cod02=cod01.split("tt"); String asig2=cod02[0]; String pro=cod02[1];

System.out.println ("\n Nota = " + nombre + "\n Asignatura = " + asig2 + "\n Profesor= " + pro); ++cont; } rs.close (); s.close (); } catch (Exception e) { System.err.println ("Problemas al accesar la tabla"+e); } } catch (Exception e) { System.err.println ("No puede conectarse al Servidor Mysql"); }

finally { if (conn != null) { try { conn.close (); System.out.println ("\n No se pudo conectar al Servidor Mysql"); } catch (Exception e) { /* sin mensajes de error */ } } } } public String busced (String codasi,String codiprofe) { Connection conn = null; String reg=new String(); String regnom=new String(); String regnompro=new String(); try { String userName = "FIEC-03"; String password = ""; // se indica el servidor, puerto y la base de datos facultad de mysql String url = "jdbc:mysql://serfiec:3306/facultad"; Class.forName ("com.mysql.jdbc.Driver").newInstance ();

conn = DriverManager.getConnection (url, userName, password); try { Statement s = conn.createStatement (); Statement t = conn.createStatement (); s.executeQuery Cod='"+codasi+"'");

("SELECT

t.executeQuery Codi='"+codiprofe+"'");

("SELECT

NomAsig NomProf

FROM FROM

ResultSet rs = s.getResultSet (); ResultSet rt = t.getResultSet (); int count = 0; while (rs.next ())//se obtiene el nombre de la asignatura { regnom=rs.getString ("NomAsig"); } rs.close (); s.close (); while (rt.next ())//se obtiene el nombre del profesor { regnompro=rt.getString ("NomProf"); } rt.close (); t.close (); }

Asign

WHERE

Profes

WHERE

catch (Exception e) { System.err.println ("Problemas con la tabla"+e); } } catch (Exception e) { System.err.println ("No se pudo conectar al Servidor Mysql"); } finally { if (conn != null) { try { conn.close (); }

catch (Exception e) { /* sin mensajes de error */ }

} } reg=regnom + "tt" + regnompro; return(reg); } } 7.COMPARACIÓN DE BASE DE DATOS VS ARCHIVOS

BASE DE DATOS •

La base de datos contiene de forma estructurada gran cantidad de datos, que se integran, ordenan, y clasifican en campos; lo que hace mas fácil a la hora de consultar o buscar información dentro de ella.



Al buscar algún tipo de archivo utilizando base de datos, podemos acceder a la información de manera directa, solo con especificar el campo de la tabla en donde se encuentra dicho dato; esto hace posible realizar una búsqueda mas eficiente, donde podemos acceder a la información más directamente que si hiciéramos la búsqueda utilizando un Archivo.



En la base de datos la información se aloja de una forma mas estructurada, nos da una forma mas completa. En la base de datos la información se aloja de una forma mas estructurada, nos da una forma mas precisa, esto con la utilización de tablas, las cuales tienen campos en donde almacenamos la información. Esto nos permite realizar una búsqueda mas precisa de la información.

ARCHIVOS •

Los Archivos son estructuras donde almacenamos datos de una forma no estructurada, sino que la información se presenta de una forma abultada o agrupada en una sola estructura; lo que constituye una forma ordinaria de almacenar información en gran escala, que a la hora de buscar sea menos preciso.



Al buscar un dato en un archivo es necesario, conocer el nombre del Archivo, para recorrerlo utilizando un ciclo, hasta que encontremos dicho dato o archivo; esto hace que la el proceso de búsqueda sea mas compleja y menos eficiente ya que tenemos recorrer nuestro archivo desde el principio hasta encontrar el dato deseado.



En un Archivo la información se almacena de una forma masiva, no tan ordenada ya que toda la información se guarda como una sola estructura, lo que nos obliga a la hora de buscar algún dato, a recorrer el Archivo hasta encontrar lo que deseamos, cosa que hace que el proceso sea mas ordinario, menos estructurado, y menos preciso.

Related Documents

Lab9mysql Entregar
November 2019 17
Lab9mysql[1]
November 2019 21
A Entregar
November 2019 23
Exel Para Entregar
November 2019 12
Para Entregar Sociales.docx
December 2019 19