lunes, 18 de marzo de 2019

INTRODUCCION A BD


¿Que es una base de datos?
Es un conjunto de datos estructurado y almacenado de forma sistemática con el objetivo de facilitar su posterior utilización.
¿Diferencia entre dato y información?
Dato: es una forma simbólica(numérica,alfabética,algorítmica,entre otros) de representar una situación sin transmitir mensaje alguno.
Información: es un conjunto de datos organizados para transmitir un significado.
¿12 reglas del Codd y para que sirven?
Codd se percato de que existían bases de datos en el mercado la cuales indicaban ser relacionales,pero lo único que hacían era guardar la información en tablas,sin estar estas normalizadas;entonces publico 12 reglas que un verdadero sistema relacional debería tener:

  • Regla 0:Regla de fundación. Cualquier sistema que se proclame como relacional,debe ser capaz de gestionar sus bases de datos enteramente mediante sus capacidades relacionales
  • Regla 1: Regla de la información. Toda la información en la base de datos es representada unidireccinalmente por valores en posiciones de las columnas dentro de filas y tablas.
  • Regla 2: Regla de acceso garantizado.  Todos los datos deben ser accesibles sin ambigüedad.Es esencial una nueva exposición del requisito fundamental para la llaves primarias,cada valor escalar individual en la base de datos debe ser lógicamente direccionable especificando el nombre de la tabla,la columna que lo contiene y la llave primaria 
  • Regla 3: Regla de tratamiento sistemático de valores nulos. el sistema de gestión de base de datos debe permitir que haya campos nulos ,debe tener una representación de la información que falta y de la información inaplicable.
  • Regla 4: Regla de catalogo dinámico en linea basado en el modelo relacional. el sistema debe soportar un catalogo en linea,el catalogo relacional debe ser accesible a los usuarios autorizados
  • Regla 5: Regla comprensiva del sublenguaje de los datos . el sistema debe soportar por los menos un lenguaje relacional que: tenga un sintaxis lineal,puede ser utilizado de manera interactiva,soporte operaciones de definición de datos, seguridad e integridad y operaciones de administración de transacciones
  • Regla 6: Regla de actualización. Todas la vistas que son teóricamente actualizables deben ser actualizables por el sistema.
  • Regla 7: Regla alto nivel de inserción,actualización y cancelación. El sistema debe soportar suministrar datos en el mismo tiempo que se inserte,actualiza o este borrando
  • Regla 8: Regla independencia física de los datos.Los programas de aplicación y actividades del terminal permanecen inalterados a nivel lógico cuando quiera que se realicen cambios en la representaciones de almacenamiento o métodos de acceso.
  • Regla 9: Regla independencia lógica de los datos. Los cambios al nivel lógico(tablas,columnas,filas,etc.)no deben requerir un cambio a una solicitud basada en la estructura.
  • Regla 10: Regla de la independencia de la integridad. Las limitaciones de la integridad se deben especificar por separado de los programas de la aplicación y se almacena en la base de datos.Debe ser posible cambiar esas limitaciones sin afectar innecesariamente las aplicaciones existente
  • Regla 11: Regla de la independencia de la distribución.  La distribución de las bases de datos deben ser invisibles a los usuarios de la bases de datos
  • Regla 12: Regla de la no subversión. Si el sistema proporciona una interfaz de bajo nivel no se puede utilizar para subvertir el sistema.
¿Que es un motor de base de datos ?
Es el servicio principar para almacenar,procesar y proteger los datos.

¿Que es SGBD?
Sistema de gestión de bases de datos es un tipo de software muy especifico que se dedica a servir de interfaz entre la base de datos,el usuario entre otros .
El propósito general es manejar de manera clara,sencilla y ordenada un conjunto de datos  que posterior se convertirá en información relevante.

¿Cuales son las bases de datos mas utilizadas?

Gestores de bases de datos - INESEM





MySQL
Es un sistema de gestión de base de datos relacional,multihilo y multiusuario seguramente el mas usados en aplicación cerdas como software libre.
Microsoft SQL Server:
Es un sistema de gestión de datos relacionales basados en el lenguaje Transact-SQL,capaz de poner a disposición de muchos usuarios grandes cantidades de datos de manera simultanea.
Oracle:
Es un sistema de gestión de base de datos relacional fabricado pro Oracle Corporation.
Tradicionalmente Oracle ha sido el SGBS por excelencia,considerado siempre como el mas completo y robusto.
Mycrosoft Access:
Es un sistema de gestión de bases de datos Relacional creado por Microsoft pa uso personal de pequeñas organizaciones.
PostgreSQL:
Es un sistema de gestión de base de datos relacional orientada a objetos y libre ,publicado bajo la licencia BSD.
DB2:
Este SGBD es propiedad de IBM,bajo la cual se comercializa el sistema de gestión de base de datos.Utiliza XML como motor.

Se pueden encontrar muchos mas gestores de bases de datos en el mercado,pero estos son unos de los mas usados

Clasificación de base de datos:

Base de datos Estáticas:
Son bases de solo lectura,se usa para almacenar datos históricos que posteriormente se pueden utilizar para tomar una decisión realizar proyecciones etc.
Base de datos Dinámicas:
Estas son bases datos donde la información almacenada se modifica con el tiempo.

Resultado de imagen para clasificacion de base de datos




Modelos de base de datos:
Jerárquica:
se semeja como a la estructura de un árbol,cada enlace es anidado con el fin de conservar los datos organizados en un orden particular en mismo nivel de lista .
modelo jerarquico
Red:
Se almacena un registro con un enlace a otros registros-en efecto,una red
modelo de red
Documentales:
Están diseñadas para almacenar datos semiestructurados,como documentos,normalmente en formato JSON  o XML.
Imagen relacionada

Relacional:
Es el mas popular tipo de base de datos y una herramienta extremadamente potente,son organizadas en forma de tabla.
Resultado de imagen para modelos de base de datos relacional
Orientada a objetos:
Un BDOO almacena y manipula información que puede ser presentada como objetos y es bastante ágil. 
Resultado de imagen para modelos de base de datos orientado a objetos

Que es una relación y que tipos de relaciones existen
Las relaciones de bases de datos son asociaciones entre tablas que se crean utilizando sentencias de unión para recuperar datos


Tipo de relaciónDescripción
Unívoca
Las dos tablas pueden tener sólo un registro en cada lado de la relación.
Cada valor de clave primaria se relaciona con sólo un (o ningún) registro en la tabla relacionada.
La mayoría de relaciones unívocas están impuestas por las reglas empresariales y no fluyen con naturalidad a partir de los datos. Sin este tipo de regla, generalmente podrá combinar ambas tablas sin incumplir ninguna regla de normalización.
Uno a variosLa tabla de claves primaria sólo contiene un registro que se relaciona con ninguno, uno o varios registros en la tabla relacionada.
Varios a variosCada registro en ambas tablas puede estar relacionado con varios registros (o con ninguno) en la otra tabla. Estas relaciones requieren una tercera tabla, denominada tabla de enlace o asociación, porque los sistemas relacionales no pueden alojar directamente la relación.





Datos conceptual :
un modelo conceptual de datos identifica las relaciones de mas alto nivel entre las diferentes entidades.
El modelo conceptual contiene las clases de estereotipo entity u muestra las multiplicidades entre ella




Datos Lógico:
Un modelo de datos lógicos describe los datos con el mayor detalle posible
El modelo lógico contiene clases de estereotipo entity,muestras entre ellas y sus atributos.


Dato Físico
El modelo de datos físicos representa como se construirá el modelo en la base de datos
El modelo físico contiene las tablas que ese van a crear en la base de daros y su cardinal



Bases de datos relacionales

Ventajas :
Provee herramientas que garantizan evitar la duplicidad de registros
Garantiza la integridad referencia,así,al eliminar un registro elimina todos los registro relacionados dependientes
Favorecer la normalizan por ser mas comprensible y aplicable.
Desventaja:
La costosa creación y mantenimiento del sistema
No se manipula de forma manejable los bloques de texto como tipo de dato

Elementos de una base de datos relacional
  • Entidad o Tabla:son estructuras encargadas de alojar la información de la base de datos
  • Campo:son cada una de las columnas de una tabla,cada campo almacena un dato en concreto atributos
  • Dato:es un campo cuyo contenido no puede estar duplicado en la misma tabla y permite identificar a cada registro de manera univoca
  • Registro o tupla: cada una de las filas de la tabla que agrupa toda la información de un mismo elemento
¿Que es normalizacion?
Consiste en designar y aplicar una serie de reglas a la relaciones obtenidas tras el modelo entidad relación.
La Teoría sobre normalizacion te puedes entender en cualquier libro de bases de datos
Primera Forma Normal
todos los atributos son atómicos
la tabla contiene una clave primaria uncia
la clave primaria no contiene atributos nulos
no debe existir variación en el numero de columnas
una tabla no puede tener múltiples valores en cada columna
los datos son atómicos.
Segunda Forma Normal
Dependencia Funcional. Una relación está en 2FN si está en 1FN si los atributos no forman parte de ninguna clave dependen de forma completa de la clave principal
esta basado en el concepto de dependencia completamente funcional.
Tercera Forma Normal
La tabla se encuentra en 3FN si es 2FN y si no existe ninguna dependencia funcional transitiva entre los atributos que no son clave.
Cuarta forma Normal
Una tabla se encuentra en 4FN si, y sólo si, para cada una de sus dependencias múltiples no funcionales X->->Y, siendo X una super-clave que, X es o una clave candidata o un conjunto de claves primarias.
Quinta Forma Normal
Una tabla se encuentra en 5FN si:
  • La tabla está en 4FN
  • No existen relaciones de dependencias no triviales que no siguen los criterios de las claves. Una tabla que se encuentra en la 4FN se dice que está en la 5FN si, y sólo si, cada relación de dependencia se encuentra definida por las claves candidatas.
dml
Lenguaje de Manipulación de Datos(Data Manipulaltion Language,DML)es un idioma proporcionado por los sistemas gestores de bases de datos que permite a los usuarios de la misma llevar a cabo las tareas de consultas o modificación de datos.El lenguaje de manipulación de datos mas popular hoy día es SQL,usado para recuperar y manipular datos en una base de datos relacional
Sus elementos son Select,Insert,Delete y Update (cuatro procesos de crud)
dcl
Data Control Lenguaje el lenguaje incluye series de comandos SQL,estos comandos permiten al Administrador del sistema gestor de base de datos,controlar el acceso a los objetos,es decir podemos otorgar y denegar permisos a uno o mas roles para realizar determinadas tareas
lenguaje de control de datos permite dar permiso con los datos que he creado
Los comandos para controlar los permisos son los siguientes

  • GRANT,permite otorgar permisos
  • REVOKE,elimina los permisos que previamente se han concedido
tcl
El lenguaje de control de transacción es TCL,son comandos de SQL,permiten manejar transacciones en una base de datos relacional.
Los comandos para transacciones son

  • BEGIN TRANSACTION,para comenzar una transacción
  • COMMIT,para grabar todos los cambios en la base de datos
  • ROLLBACK,para deshacer los cambios de toda la transacción
permite administrar las transacciones







lunes, 11 de marzo de 2019



¿Cómo agrupar y utilizar botones de opción en una GUI de java?

CheckBox: Son cuadros de opciones con varias y pueden seleccionarse mas de una opción.
ejemplo de su programación:

Resultado de imagen para checkbox java
1
2
//Creamos nuestra variable global
private JCheckBox check1;
?
1
2
3
4
5
6
7
8
9
10
11
//Creamos el método que regresará el checkbox
private JCheckBox getCheck1() {
//inicializamo
check1 = new JCheckBox();
//le asignamos una posición
check1.setBounds(80, 30, 20, 20);
//Decimos que esté seleccionado por defecto
check1.setSelected(true);
//por ultimo retornamos
return check1;
}


RadioButton: Son opciones en forma redonda donde solo puede ser seleccionada una de las opciones.
Los RadioButton por si solo no pueden ser mutuamente excluyentes,por que son elementos individuales y si no usamos buttonGroup tendríamos que validar esa característica desde código,pero con un buttonGroup lo hacemos automáticamente. j
ejemplo de su programación:

Resultado de imagen para radio button java

 //Creamos la variable Global
 private JRadioButton radio1;
  
 //Método que retorna el radiobutton
 private JRadioButton getRadio1() {
 //inicializamos
 radio1 = new JRadioButton();
 //seleccionamos por defecto
 radio1.setSelected(true);
 //posicionamos
 radio1.setBounds(80, 100, 20, 20);
 //retornamos el objeto
 return radio1;
 }

¿Cómo cargar datos a un componente jtable utilizando defaultTableModel?

Un JTable es un componente visual de java que nos permite dibujar una tabla,una de las formas mas rápidas y sencillas de utilizar un JTable teniendo toda su funcionalidad,consiste en instanciar como modelo de datos un DefaultTableModel y luego un JTable,pasando el modelo en el constructor.El código quedaría así:

DefaultTableModel modelo = new DefaultTableModel();
JTable tabla = new JTable (modelo);

Para manejar una tabla,debemos implementar la interface TableModel y luego poner ademas todos los métodos que queramos.
Hay básicamente tres tipos de métodos:
  • Métodos para manejo de suscriptores al modelo. Un suscriptor es cualquier clase que quiera enterarse de cambios en los datos del modelo. El JTable es un ejemplo claro. El JTable se suscribe a cambios de datos en el modelo y de esta forma, en cuanto cambiemos datos en el modelo, el JTable se entera y se repinta automáticamente la pantalla. En este grupo están los métodos addTableModelListener() y removeTableModelListener()
  • Métodos para menejo de datos. Permiten obtener y cambiar datos dentro de la tabla. Son los métodos getValueAt() y setValueAt().
  • El resto son métodos para obtener información de la tabla en sí misma, como número de filas, número de columnas, si una fila-columna es o no editable, nombre de la columna, etc.
Resultado de imagen para ¿Cómo cargar datos a un componente jtable utilizando defaultTableModel?

¿Qué es un ArrayList y como se utiliza?

Es una clase que permite almacenar daros en memoria de forma similar a los Arrays, con la ventaja de que el numero de elementos que almacena,lo hace de forma dinámica,es decir, que no es necesario declarar su tamaño como pasa con los Arrays.
Para realizar las operaciones comunes tales como ingresar,eliminar,buscar o modificar datos encontramos los siguientes métodos:

brtyhethj




























Servicios Web

Servicios Web: W3C: lo define como un sistema de software, diseñado para soportar la interacción entre dos o mas maquinas a través de una...