Acceso a Base de Datos



Documentos relacionados
DataSet. DataSet (System.Data):

Programación de Consultas SQL ADO.Net LDP / DUOC-AV

TEMA 6. ARQUITECTURA DE ADO.NET 6.1. INTRODUCCIÓN A ADO.NET

GALA. ADO Modo Conectado. Modelo de Base de Datos Relacional. m018a Curso Manejo de Datos con Visual Basic 2010, 24 h

GUÍA DE TRABAJO N 11 LENGUAJE C# Programación de Software Articulación SENA Grado 10 Ing. Néstor Raúl Suarez Perpiñan Página 2 de 11

Mecanismos de acceso a datos usando ADO.NET

Practica 7 Conexión a su base de datos. Optativa II

Acceso a Datos con ADO.NET

I.- Objetivo. II.- Introducción

ADO.NET. Contenido. Transición a ADO.NET. Introducción a ADO.NET. Limites de ADO

Presentación 4: ADO.NET

1. Bases de datos desde VB.Net 1.1 Introducción. Desde Vb Net 2005 se puede acceder a las siguientes bases de datos, utilizando las clases adecuadas.

INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES

El modelo de objetos ADO.NET. (Datos sin conexión) Proveedor de datos.net. Connection. Command Parameter. DataReader

SGME Documento Adjunto. Manual de introducción al acceso a la base de datos. Andrés Moschini

Lenguaje de manipulación de datos

Creación de un sistema ABC

ADO.NET. Arquitectura de ADO.NET

Programació amb C#.NET

Base de Datos Práctica 1.

TEMA 5: Trabajando con bases de datos. ClaseOracleBD

Conexión ODBC Visual Basic - MSQL. Cristian Vidal Silva

Índice de contenidos Iniciación a VB.NET Bases de Datos

Restricciones (constraints) FOREIGN KEY

ADO.NET. En este artículo vamos a ver el protocolo de acceso a datos en la plataforma.net, ADO.NET y su marco de funcionamiento con ASP.NET.

Bases de Datos. Marta Elena Zorrilla Pantaleón Rafael Duque Medina DPTO. DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN

Base de datos relacional

3.- Desarrollo e implementación del sistema.

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION

BASES DE DATOS EN VISUAL BASIC ACCESS + SQL

Tema: Conexión a Base de Datos.

Inside. Gestión de Expedientes y Documentos Electrónicos

Seguridad en SQL Server 2005

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

DIPLOMADO FRAMEWORK PARA DESARROLLO DE SISTEMAS DE INFORMACIÓN EMPRESARIALES

vgestorweb vgestorweb 1/9

Conexión SQL Server y C# (Consola)

Repaso. Laboratorio Informix. Stored Procedures. Ejemplo. Creación de stored procedures. Sql en un Procedimiento

Ejercicios - Persistencia en Android: ficheros y SQLite

Laboratorio Informix. Stored Procedures Triggers

Acceso a Datos. Visual Basic.NET 2005

Introducción a los Sistemas de Gestión de Bases de Datos

Tutorial : Hacer Combos Dependientes tipo Departamento Ciudad en ASP. Net

Microsoft SQL Server 2005

Ataques a Aplicaciones de Bases de Datos

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

Instalación Manual de Cubos 2008

Práctica sobre compartición de instancias remotas.

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INSTALACIÓN DE GOLDMINE PREMIUM PASO A PASO CREACIÓN DE UNA NUEVA BASE DE DATOS EN GOLDMINE PREMIUM PASO A PASO

CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida

MODELO: 301 RESPALDO DE TARJETA SIM

Manual de configuración de Adobe Reader para la validación de la firma de un documento Versión 1.0

IBM SPSS Statistics Versión 22. Instrucciones de instalación para Windows (Licencia concurrente)

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

Apuntes de la Unidad 1 de Base de Datos

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

SQL (Structured Query Language)

ÍNDICE. Introducción... Capítulo 1. Novedades de Access

%& %)& '$!%*+ $, %%%&$ %%

Administración avanzada de paquetes. apt-proxy.

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

CENTRO DE INVESTIGACIÓN CIENTÍFICA Y DE EDUCACIÓN SUPERIOR DE ENSENADA, BAJA CALIFORNIA Departamento de Cómputo / Dirección de Telemática ÍNDICE

CONSULTAS BASICAS EN SQL SERVER

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

Tema: Desarrollo de aplicaciones con Visual Studio.net Parte II

SISTEMAS OPERATIVOS AVANZADOS

MATERIAL 2 EXCEL 2007

Práctica 3. Consultas SQL

Visual Basic.NET : Acceso a Datos

Diseño de bases de datos

Utilización del programa de Orabench Versión para Migración. Describir los pasos para la utilización del programa Orabench de Oracle.

MySQL Administrator. Instructivo básico para el respaldo de base de datos gncys.com

Seguridad de la Información Permisos. Sistemas de Bases de Datos II - ITS EMT - CETP

Oracle 12c DISEÑO Y PROGRAMACIÓN

Acceso a datos con ADO.NET 2.0 (sin asistentes)

Bases de Datos en VB.Net. El control Datagrid, Relaciones y Vistas.1

Marcos de Desarrollo. Diseño e implementación de aplicaciones Web con.net

Componentes de una aplicación ASP.NET

MICROSOFT VISUAL BASIC.NET

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Programación de Consultas SQL ADO.Net LDP / DUOC-AV

APUNTES DE WINDOWS. Windows y sus Elementos INSTITUTO DE CAPACITACIÓN PROFESIONAL. Elementos de Windows

Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.

vmysql Requisitos Previos Conexión con el servidor vmysql 1/5

Conector CONTPAQi Comercial GUIA DE INSTALACIÓN. Conector CONTPAQi CRM

Otros tipos de Consultas

Conceptos básicos Oracle 10g Introducción - Administración de Oracle - Orasite.com

ADMINISTRACIÓN DE BASE DE DATOS

Tutorial: Primeros Pasos con Subversion

Bases de Datos 3º Informática de Sistemas

&' ' ' !,- (& ', Este tutorial trabaja sobre NetBeans 6.1 y MySQL 5.0. Crear un nuevo proyecto usando la ventana que se indica a continuación: !!

PROCEDIMIENTO DE ENLACE TCPIP

Transcripción:

Acceso a Base de Datos Diseño y Programación Avanzada de Aplicaciones Curso 2002-2003

Indice

ADO.Net ADO.Net ofrece dos espacios de nombres de clientes Uno para SQL Server Bases de Datos con interfaz Ole DB

Clases Compartidas DataSet Contienen un conjunto de objetos DataTable y relaciones entre dichas tablas. DataTable Consiste en uno o más objetos DataColumn y uno o más objeto DataRow DataRow Un conjunto de valores similares a la fila de una tabla.

Clases Compartidas (II) DataColumn Contiene la definición de una columna, incluyendo atributos como el nombre y el tipo de datos. DataRelation Representa un enlace entre dos objetos DataTable pertenecientes a un mismo DataSet. Permiten representar claves externas y relaciones maestro/detalle Constraint Restricciones que se aplican a una o un conjunto de columnas (Ej unicidad).

Clases específicas para Base de Datos SqlCommand,OleDbCommand Encapsulan sentencias SQL y llamadas a procedimientos almacenados SqlCommandBuilderOleDbCommandBuilder Permiten generar sentencias SQL SqlConnection,OleDbConnection Representan una conexión a BD SqlDataAdapter, OleDbDataAdapter Almacenan sentencias SQL y permiten llenar un DataSet y actualizar una Base de Datos.

Clases específicas para Base de Datos (II) SqlDataReader, OleDbDataReader Un lector de datos conectado y unidireccional SqlParameter, OleDbParameter Parámetro de un procedimiento almacenado SqlTransaction, OleDbTransaction Una transacción sobre una base de datos.

Conexión Server= (local)\\netsdk Indica el servidor Proceso NetSDK del servidor local. Uid y pwd. Usuario y password Si se desea utilizar la seguridad de windows se debe poner IntegratedSecurity=SSPI Database = Nombre de la base de datos

Ejecución de comandos ExecuteNonQuery Ejecuta un comando y no devuelve ningún resultado ExecuteReader Ejecuta un comando y devuelve un comando que implementa IDataReader (Permite iterar a partir de los registros recibidos) ExecuteScalar Ejecuta un comando y devuelve un valor simple

ExecuteNonQuery string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Update Articulos set precio = 10"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); cmd.executenonquery(); conn.close();

ExecuteReader string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select codigo, descripcion from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); SqlDataReader reader= cmd.executereader(); while (reader.read()) MessageBox.Show( reader.getint32(0) + " " + reader.getstring(1)); conn.close();

ExecuteScalar string source="server=acer-4ae69x9lgh\\netsdk; " + string comando= "Select count(*) from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); object o = cmd.executescalar(); MessageBox.Show( o.tostring()); "database=prueba10;"+ "integrated security=sspi";

Ejecución de procedimientos almacenados Ejemplo de procedimiento almacenado ALTER PROCEDURE ActualizaPrecios ( ) @incremento int AS update articulos set precio = precio * ( 1 + @incremento / 100) RETURN

Ejecución de procedimientos almacenados (II) string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select count(*) from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand("ActualizaPrecios",conn); cmd.commandtype = CommandType.StoredProcedure; cmd.parameters.add(new SqlParameter("@incremento",SqlDbType.Int)); cmd.updatedrowsource = UpdateRowSource.None; cmd.parameters[0].value = 100; cmd.executenonquery();

DataReader Es el mecanismo más sencillo para seleccionar un conjunto de datos de la base de datos. Se suelen crear con el ExecuteReader

ExecuteReader string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select codigo, descripcion from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); SqlDataReader reader= cmd.executereader(); while (reader.read()) MessageBox.Show( reader[0] + " " + reader["descripcion"]); conn.close();

ExecuteReader string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select codigo, descripcion from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); SqlDataReader reader= cmd.executereader(); while (reader.read()) MessageBox.Show( reader.getint32(0) + " " + reader.getstring(1)); conn.close();

Conjuntos de Datos o DataSets Un DataSet es un contenedor offline de datos. Puede contener datos que provienen de una BD o de cualquier otro origen Es un objeto de datos sin conexión. Una vez completado con datos actuará independiente No necesita conectarse a la BD

El objeto DataSet El DataSet es una representación de datos en memoria. Es un objeto de datos sin conexión. Una vez completado con datos actuará independiente No necesita conectarse a la BD

DataSet (II) DataTable Consiste en uno o más objetos DataColumn y uno o más objeto DataRow Formas de Generar Utilizar el motor de ejecución Escribir el código para generar la tabla Utilizar el generador de esquemas XML

Utilizar la tabla generada string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select codigo, descripcion from articulos"; SqlConnection conn = new SqlConnection(source); SqlDataAdapter da = new SqlDataAdapter(comando,source); conn.open(); DataSet ds = new DataSet(); da.fill(ds,"articulos"); conn.close(); Hay que incluir using System.Data.SqlClient;

DataRow Filas de datos Permite el acceso a cada fila de la tabla foreach (DataRow row in ds.tables["articulos"].rows) Console.WriteLine("{0}, {1}", row[0],row["descripcion"]);

DataRow (II) Atributos del DataRowVersion Current. Valor actual de la columna Default Valor por defecto de la columna Original Valor que se cargo de la base de datos. Si se llama al método AcceptChanges del DataRow es el mismo que el valor Current Proposed. Valor propuesto si se utiliza el método BeginEdit. Cada columna tiene un valor propuesto hasta que se haga EndEdit o CancelEdit

DataRow(III) foreach (DataRow row in ds.tables["articulos"].rows) Console.WriteLine("{0}, {1}", row[0,datarowversion.current], row[0,datarowversion.original]);

DataRow (IV) Atributos del DataRowState Unchanged. La fila no ha cambiado Added Se ha añadido una nueva fila Modified La fila se ha modificado Deleted La fila se ha borrado Detached Una fila está en este estado una vez ha sido creada

DataRow (V) Métodos sobre las filas NewRow Crea una nueva Fila Add. Permite insertar una nueva fila Delete Permite Borrar una fila Actualizar se puede hacer mediante operaciones de vectores

DataRow(IV) DataSet ds = new DataSet(); sqldataadapter1.fill(ds,"articulos"); //metodo 1 DataRow r = ds.tables["articulos"].newrow(); r["codigo"] = 24; r["descripcion"] = "Peana"; r["precio"] = 4; r["stock"] = 6; ds.tables["articulos"].rows.add(r); //metodo 2 ds.tables["articulos"].rows.add (new Object[]{25,"Casas",4,5}); sqldataadapter1.update(ds,"articulos");

DataRow y DataColumn (II) Para comprobar el estado de una fila se dispone de las siguientes propiedades:

ExecuteReader string source="server=acer-4ae69x9lgh\\netsdk; " + "database=prueba10;"+ "integrated security=sspi"; string comando= "Select codigo, descripcion from articulos"; SqlConnection conn = new SqlConnection(source); conn.open(); SqlCommand cmd=new SqlCommand(comando,conn); SqlDataReader reader= cmd.executereader(); while (reader.read()) MessageBox.Show( reader[0] + " " + reader["descripcion"]); conn.close();

El objeto DataSet (II) El DataSet está formado por 5 tipos de objetos diferentes: Tablas Filas Columnas Restricciones Relaciones

El objeto DataTable Un DataSet es una colección de tablas en forma de DataTableCollection Cada tabla individual almacena una referencia a este objeto en su propiedad Tables Cada tabla residente en memoria se denomina DataTable (Puede haber varias o ninguna dentro de una colección) Cada DataTable contiene filas de datos. Cada fila contiene columnas de datos

DataRow y DataColumn Los objetos DataRow y Data Column forman el DataTable. Por medio de las propiedades y métodos de ambos se pueden ver actualizar, insertar y eliminar información de una tabla. DataColumn representa una columna DataRow representa una fila

DataRow y DataColumn (II) Para crear una nueva fila se utiliza el méodo NewRow. Para aceptar los cambios se utiliza AcceptChanges Para rechazar los cambios se utiliza RejectChanges.