taller de base de datos - unidad 7 conectividad

45
Ingeniería en Sistemas Computacionales Taller de Base de Datos Unidad VII: Conectividad Este material está desarrollado para la asignatura Taller de Base de Datos, de la carrera de Ingeniería en Sistemas Computacionales, plan de estudios ISIC-2010-224 TALLER DE BASE DE DATOS

Upload: jose-antonio-sandoval-acosta

Post on 13-Apr-2017

228 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Taller de Base de Datos - Unidad 7 Conectividad

Ingeniería en Sistemas Computacionales

Taller de Base de DatosUnidad VII: Conectividad

Este material está desarrollado para la asignatura Taller de Base de Datos, de la carrera de Ingeniería en Sistemas Computacionales, plan de estudios ISIC-2010-224

TALLER DE BASE DE DATOS

Page 2: Taller de Base de Datos - Unidad 7 Conectividad

Competencia: Conectar una base de datos con diferentes lenguajes de programación.

TALLER DE BASE DE DATOS

Page 3: Taller de Base de Datos - Unidad 7 Conectividad

Open Data Base Connectivity (ODBC)• Es un estándar de acceso a las bases de datos desarrollado por SQL Access

Group en 1992. • El objetivo de ODBC es hacer posible el acceder a cualquier dato desde

cualquier aplicación, sin importar qué sistema de gestión de bases de datos (DBMS) almacene los datos. • ODBC logra esto al insertar una capa intermedia (CLI) denominada nivel de

Interfaz de Cliente SQL, entre la aplicación y el DBMS. El propósito de esta capa es traducir las consultas de datos de la aplicación en comandos que el DBMS entienda.

TALLER DE BASE DE DATOS

Page 4: Taller de Base de Datos - Unidad 7 Conectividad

• Para que esto funcione tanto la aplicación como el DBMS deben ser compatibles con ODBC, esto es que la aplicación debe ser capaz de producir comandos ODBC y el DBMS debe ser capaz de responder a ellos. Desde la versión 2.0 el estándar soporta SAG y SQL.

• El software funciona de dos modos, con un software manejador en el cliente, o una filosofía cliente-servidor. En el primer modo, el driver interpreta las conexiones y llamadas SQL y las traduce desde el API ODBC hacia el DBMS.

• En el segundo modo para conectarse a la base de datos se crea una DSN dentro del ODBC que define los parámetros, ruta y características de la conexión según los datos que solicite el creador o fabricante.

TALLER DE BASE DE DATOS

Page 5: Taller de Base de Datos - Unidad 7 Conectividad

Java Database Connectivity (JDBC)

• Es un derivado inspirado en el mismo, una interfaz de programación de aplicaciones que permite la ejecución de operaciones sobre bases de datos desde el lenguaje de programación Java independientemente del sistema operativo donde se ejecute o de la base de datos a la cual se accede utilizando el dialecto SQL del modelo de base de datos que se utilice.

TALLER DE BASE DE DATOS

Page 6: Taller de Base de Datos - Unidad 7 Conectividad

ADO.NET• Es un conjunto de componentes del software que pueden ser usados por los

programadores para acceder a datos y a servicios de datos. • Es una parte de la biblioteca de clases base que están incluidas en el Microsoft

.NETFramework. • Es comúnmente usado por los programadores para acceder y para modificar

los datos almacenados en un Sistema Gestor de Bases de Datos Relacionales, aunque también puede ser usado para acceder a datos en fuentes no relacionales. • ADO.NET es a veces considerado como una evolución de la tecnología ActiveX

Data Objects (ADO), pero fue cambiado tan extensivamente que puede ser concebido como un producto enteramente nuevo.

TALLER DE BASE DE DATOS

Page 7: Taller de Base de Datos - Unidad 7 Conectividad

ActiveX Data Objects (ADO)• Es uno de los mecanismos que usan los programas de computadoras para

comunicarse con las bases de datos, darles órdenes y obtener resultados de ellas.• Con ADO, un programa puede leer, insertar, editar, o borrar, la información

contenida en diferentes áreas de almacenamiento dentro de la base de datos llamadas tablas. Además, se puede manipular la propia base de datos para crear nuevas áreas para el almacenamiento de información (tablas), como también alterar o eliminar las ya existentes, entre otras cosas.• Fue desarrollado por Microsoft y es usado en ambientes Windows por

lenguajes de programación como Visual Basic, C++, Delphi, entre otros, como también en la Web mediante el uso de Active Server Pages (ASP) y el lenguaje VBScript.

TALLER DE BASE DE DATOS

Page 8: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 9: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 10: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 11: Taller de Base de Datos - Unidad 7 Conectividad

Conectividad en dispositivos móviles

• Para mediados de 1990 el acceso a una base de datos se logró a través de Internet, lo que abrió camino hacía nuevas áreas de implementación de los SMBDs; además permitió la creación de sitios Web más dinámicos, haciendo que Internet ganara popularidad para el comercio electrónico, sistemas de información, etcétera. • En la década de los noventas el auge de Internet y las bases de datos

comienza a integrar lenguajes como XML (eXtensible Markup Language) en las aplicaciones, además de que el número de desarrolladores y usuarios aumenta impulsando el uso de los SMBD.

TALLER DE BASE DE DATOS

Page 12: Taller de Base de Datos - Unidad 7 Conectividad

• Con el surgimiento de nuevas tecnologías de comunicación inalámbrica y de dispositivos móviles (DM), se logró el desarrollo de la Computación Móvil (CM) que se caracteriza por la independencia en localización, movimiento y plataforma en los dispositivos.

• Por otra parte, la necesidad de gestionar información desde un ambiente móvil y la popularidad de las bases de datos, motivó al desarrollo de los Sistemas Manejadores de Bases de Datos Móviles (SMBDM).

• En la figura siguiente se describe el desarrollo histórico de los SMBD:

TALLER DE BASE DE DATOS

Page 13: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 14: Taller de Base de Datos - Unidad 7 Conectividad

• En el campo de los SMBDM, se han desarrollado importantes aplicaciones, desde versiones limitadas para ejecutarse en un DM(Dispositivos Móviles) para después sincronizarse con el servidor central, hasta productos que van inmersos (embebidos) en las aplicaciones.

• Las bases de datos móviles se consideran las bases de datos de nueva generación, ya que van dirigidas a sistemas informáticos portátiles como computadoras personales y dispositivos móviles que se conectan con las estaciones base (servidores) mediante redes de comunicación digitales inalámbricas, además deben funcionar mientras estén desconectadas de la red a diferencia de los sistemas de bases de datos fijos.

TALLER DE BASE DE DATOS

Page 15: Taller de Base de Datos - Unidad 7 Conectividad

• Las bases de datos móviles utilizan técnicas especiales para la administración de memoria debido a la capacidad de almacenamiento limitada con la que cuentan los dispositivos móviles. Además, el hecho de que se almacenen en el teléfono móvil o computadora personal permite a los usuarios realizar operaciones sobre la información sin necesidad de estar conectados a una red, y sincronizar o consultar datos de los servidores en el momento que se tenga acceso a una conexión inalámbrica.

TALLER DE BASE DE DATOS

Page 16: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 17: Taller de Base de Datos - Unidad 7 Conectividad

• A continuación se describen cinco de los SMBDm más comerciales, sus características, arquitectura, etc.

PointBase

TALLER DE BASE DE DATOS

Page 18: Taller de Base de Datos - Unidad 7 Conectividad

• PointBase provee de dos APIs para la versión Micro:

JDBC API para J2SE & J2ME/CDC. Subconjunto de JDBC API para J2ME/MIDP.

TALLER DE BASE DE DATOS

Page 19: Taller de Base de Datos - Unidad 7 Conectividad

SQLAnywhere• Es una base de datos móvil relacional que provee de tecnología para el

intercambio y la gestión de datos desde un dispositivo móvil. • Está diseñado para dispositivos con plataforma Windows Mobile 5 para

Pocket PC y Smartphone, y Windows Mobile 6. SQL Anywhere tiene soporte para la interfaz ADO.NET, .NET OLE DB y ODBC; además permite usar cualquier lenguaje como: .NET, incluyendo C# y Visual Basic .NET para escribir procedimientos y funciones . • Como se muestra en la figura siguiente, su arquitectura es de tipo Cliente –

Servidor, cuenta con un footprint pequeño, menor a 150 KB, permite conexiones simultáneas y utiliza el sistema Mobilink Syncronization, que es un conjunto de tecnologías para la sincronización entre sistemas fijos y usuarios móviles.

TALLER DE BASE DE DATOS

Page 20: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 21: Taller de Base de Datos - Unidad 7 Conectividad

DB2 EveryPlace

• Desarrollada por la compañía IBM, DB2 Everyplace Database Edition es una base de datos móvil de alto rendimiento, que permite ampliar el alcance de las aplicaciones y datos empresariales a dispositivos móviles como asistentes digitales personales y teléfonos inteligentes. Tiene un reducido consumo de espacio y una de sus ventajas es que se integra con la gama de productos de informática móvil de IBM WebSphere Everyplace Access y WebSphere Everyplace Server. • Esta base de datos es relacional y está dirigida para plataformas PalmOS y

Windows CE . Utiliza una arquitectura Cliente – Servidor (ver figura siguiente) y ofrece gran cantidad de productos de acuerdo a las necesidades de desarrollo que se tengan.

TALLER DE BASE DE DATOS

Page 22: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 23: Taller de Base de Datos - Unidad 7 Conectividad

Oracle Lite• Este SMBDm trabaja con una arquitectura Cliente – Servidor, descrita en la figura

7. El Cliente incluye un footprint pequeño de 1 Mb, optimizado para dispositivos de mano, computadoras portátiles y ambientes reducidos, además que cuenta con soporte multiusuario. Oracle Lite funciona sobre Windows Mobile, PocketPC, Symbian OS, y Linux. Utiliza SQL 92, procedimientos almacenados en Java, C++ y lenguajes basados en .NET como C#; cuenta con soporte de triggers, ODBC, JDBC y ADO .Net.• El Servidor Oracle Database Lite Mobile Server es necesario para permitir a los

usuarios móviles sincronizar la información con la base de datos principal. La sincronización es uno de los principales elementos de la base de datos de Oracle.• Es una solución completa, que nos permite el despliegue de información sin

conexión, ofrece métodos de administración y sincronización de dispositivos, además de una base de datos relacional segura, ligera y compatible con SQL.

TALLER DE BASE DE DATOS

Page 24: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 25: Taller de Base de Datos - Unidad 7 Conectividad

MSSQL CE• Desde que inició, SQL Server Compact Edition ha sufrido una serie de cambios y

ha pasado por varias versiones, comenzando con SQL Server CE que se incluía en SQL Server 2000; con el lanzamiento de SQL Server 2005 al mercado, SQL Server CE cambió de nombre a SQL Server 2005 Mobile Edition, que estaba dirigido a Smartphones y PDAs. • MSSQL CE en su versión 2005 es una base de datos compacta que necesita

menos de 2 MB de espacio en disco y solo 5 MB de memoria. Presenta gran variedad de funciones y fue diseñada para admitir una gran lista de dispositivos inteligentes y Tablets PC. Cuenta con un motor de base de Datos compacto y un sólido optimizador de consultas, permite el acceso a datos remotos y replica de mezcla para sincronizar datos; utiliza un subconjunto de sintaxis de SQL para las consultas, y se integra fácilmente con Microsoft SQL Server 2005.

TALLER DE BASE DE DATOS

Page 26: Taller de Base de Datos - Unidad 7 Conectividad

• La arquitectura está formada por un entorno de desarrollo, un Cliente y el Servidor, a diferencia de la nueva versión del manejador, que utiliza una arquitectura embebida. El entorno de desarrollo incluye el equipo en donde se desarrollan las aplicaciones, el cual debe tener Microsoft Visual Studio 2005 con .NET Compact Framework. El entorno Cliente se compone de uno o varios dispositivos compatibles en donde se implementa la • aplicación y SQL Server Compact Edition, la sincronización puede ser a través

de Microsoft ActiveSync o de la red. El entorno servidor está formado por uno o varios equipos en los que se ejecutan los servicios de Microsoft Internet Information Server (IIS) y una instancia de Microsoft SQL Server o datos propagados para un origen de datos heterogéneo. IIS es necesario para el intercambio de datos entre Servidores y clientes.

TALLER DE BASE DE DATOS

Page 27: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 28: Taller de Base de Datos - Unidad 7 Conectividad

TALLER DE BASE DE DATOS

Page 29: Taller de Base de Datos - Unidad 7 Conectividad

Tarea

•Realizar un resumen de las primeras 27 diapositivas de este archivo

TALLER DE BASE DE DATOS

Page 30: Taller de Base de Datos - Unidad 7 Conectividad

Conexión a la Base de Datos

En la actualidad los lenguajes de programación no traen incorporada una base de datos, por tal motivo es necesario conectar el lenguaje de programación con una base de datos.

TALLER DE BASE DE DATOS

Page 31: Taller de Base de Datos - Unidad 7 Conectividad

String de Conexión

Es una cadena de texto que conecta al lenguaje de programación con el gestor de base de datos seleccionado

TALLER DE BASE DE DATOS

Page 32: Taller de Base de Datos - Unidad 7 Conectividad

Elementos de la cadena de conexión

Provider: Establece el nombre del proveedor para la conexión (sólo aplica para OleDBConnection).Connection Timeout: Establece el tiempo en segundos para esperar a una conexión antes de terminar el intento y generar una excepción, por omisión es 15.Initial Catalog: El nombre de la base de datos, si se omite se utiliza la predeterminada del usuario.

TALLER DE BASE DE DATOS

Page 33: Taller de Base de Datos - Unidad 7 Conectividad

Elementos de la cadena de conexiónPassword: El password del usuario.User ID: El login del usuario.Integrated Security: Establece el mecanismo de autenticación con el servidor, los valores posibles son TRUE y FALSE, sólo aplica para SqlConnection.Persist Security: Cuando se establece a FALSE, la información sensitiva a la seguridad como la contraseña no es mostrada una vez que se ha establecido la conexión, por omisión es FALSE.

TALLER DE BASE DE DATOS

Page 34: Taller de Base de Datos - Unidad 7 Conectividad

Ejemplo:

data source = HP\SQLserver; initial catalog = BaseDatos; user id = Usuario; password = “123456”

La cadena de conexión puede ser diferente dependiendo del gestor de BD con el que debamos interactuar

TALLER DE BASE DE DATOS

Page 35: Taller de Base de Datos - Unidad 7 Conectividad

Ejemplo:data source = “server\bd_itsg”; initial catalog = “escolares”; user id = “admin”; password = “123456”

data source = (local); initial catalog = “escolares”; user id = “admin”; password = “123456”

data source = 127.0.0.1; initial catalog = “escolares”; user id = “admin”; password = “123456”

TALLER DE BASE DE DATOS

Page 36: Taller de Base de Datos - Unidad 7 Conectividad

Ejercicio:

• Instalar en su laptop o PC el manejador SQL y .Net para realizar prácticas

TALLER DE BASE DE DATOS

Page 37: Taller de Base de Datos - Unidad 7 Conectividad

Controles de la Base de Datos

• Los controles de la base de datos son una serie de comandos o métodos que sirven para realizar la conexión con la BD y el intercambio de información con la misma

TALLER DE BASE DE DATOS

Page 38: Taller de Base de Datos - Unidad 7 Conectividad

Listado de Controles

• String: Tipo de dato que representa una cadena (no es propiamente un control, se utiliza para generar la estructura de una consulta)

• SqlConnection: Representa una conexión abierta a una base de datos de SQL Server

Propiedades y métodos: open(), close()

TALLER DE BASE DE DATOS

Page 39: Taller de Base de Datos - Unidad 7 Conectividad

• SqlCommand: Representa un procedimiento almacenado o una instrucción de Transact-SQL que se ejecuta en una base de datos de SQL Server.

Propiedades y métodos: CommandText, CommandType, Connection, Parameters, ExecuteReader()

TALLER DE BASE DE DATOS

Page 40: Taller de Base de Datos - Unidad 7 Conectividad

• SqlDataReader: Proporciona una forma de leer una secuencia de filas sólo hacia delante en una base de datos de SQL Server

Propiedades y métodos: Read(), GetValue()

TALLER DE BASE DE DATOS

Page 41: Taller de Base de Datos - Unidad 7 Conectividad

• SqlDataAdapter: Representa un conjunto de comandos de datos y una conexión de base de datos que se utilizan para rellenar un DataSet y actualizar una base de datos de SQL Server.

Propiedades y métodos: Fill

• DataSet: Representa una memoria caché de datos en memoria

TALLER DE BASE DE DATOS

Page 42: Taller de Base de Datos - Unidad 7 Conectividad

Ejemplo de código

TALLER DE BASE DE DATOS

Page 43: Taller de Base de Datos - Unidad 7 Conectividad

Ejemplo de código para probar la conexión

OdbcConnection conexionBDODBC = new OdbcConnection(); try { conexionBDODBC = new OdbcConnection("dsn=" + lsODBC.Text + ";UID=" + txtUsuario.Text + ";PWD=" + txtContrasena.Text + ";"); conexionBDODBC.Open(); if (conexionBDODBC.State == ConnectionState.Open) { MessageBox.Show("Conectado a la base de datos."); } else { MessageBox.Show("No conectado a la base de datos."); } } catch (Exception error) { MessageBox.Show("Error de base de datos: " + System.Environment.NewLine + System.Environment.NewLine + error.GetType().ToString() + System.Environment.NewLine + error.Message, "Error al crear PDF", MessageBoxButtons.OK, MessageBoxIcon.Error); }

TALLER DE BASE DE DATOS

Page 44: Taller de Base de Datos - Unidad 7 Conectividad

TALL

ER D

E BA

SE D

E D

ATO

S

Page 45: Taller de Base de Datos - Unidad 7 Conectividad

Bibliografía Consultada

Adam Jorgersen, Microsoft SQL Server 2012 Bible. John Wiley & Sons, Inc. Indianapolis, Indiana. 2012.

https://msdn.microsoft.com. Página en Español, Sección de Ayuda de SQL Server 2012. Consultado en Junio de 2015.

TALLER DE BASE DE DATOS