239
23749
 
Varios
Articulos y manuales de wpf, html, crystal report, gadget...
Enlaces
Encuentra links a manuales o paginas relacionadas
Visual C#
Creado en el 2001 y actualmente se se encuentra en su version 4.0
Visual Basic
Visual Basic es un lenguaje de programación desarrollado por Alan Cooper para Microsoft.
SQL Server
Basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ
ASP .Net
Apareció en enero de 2002 con la versión 1.0 del .NET Framework
JavaScript
JavaScript es un lenguaje de programación interpretado, es decir, que no requiere compilación
Utilidades
Herramientas y utilidades que podras usar en tus ambientes de desarrollo. Hazte la Vida mas Facil!!!
Ex empleado de Apple describe duro sistema de trabajo y "ley del silencio"
El uso de blogs hasta lo que pueden o no pueden comentar con sus cónyuges en sus hogares
7/15/2010 6:57:11 AM
El iPhone 4, no apto para zurdos
Las críticas sobre la calidad de la recepción cuando se sostiene con la mano izquierda
6/26/2010 8:35:23 PM
Nuevo Hotmail a partir de hoy
Exchange ActiveSync en móviles como iPhone, BlackBerry, o Windows Phone
6/17/2010 12:41:25 PM
Microsoft Office 2010 es ahora gratuito en versión web
Office.live.com
6/10/2010 6:34:23 AM
Se inicia el Campus Party 2010
Del 28 de Junio al 4 de Julio se inicia la tercera edición de la fiesta de la tecnología en Colombia, que se caracteriza por ser un foro para aprender.
6/29/2010 2:32:59 PM
Novedades en Reporting Services 2008 R2
Nuevas funcionalidades de SSRS 2008 R2 (Maps, Report Builder 3.0, cambios de skin y mucho más).
2/4/2010 8:08:54 AM
Uso del diseñador de SharePoint y Visual Studio con Microsoft Business Connectivity Services en SharePoint 2010
crear Tipos de contenido externos para conectarse a los sistemas externos.
2/4/2010 8:04:53 AM
Creación de soluciones Office con Visual Studio 2010 y Office 2010
Webcast
1/10/2010 10:44:50 PM
 
   
Conexiones a Bases de Datos ADO.NET
Acceso a Datos Espacios de nombres System.Data.Client y System.Data.OleDb
Oscar Hernando Barón Roa
Conexiones a Bases de Datos ADO.NET
Acceso a Datos Espacios de nombres System.Data.Client y System.Data.OleDb
 
Visitas:23749
Fecha publicación:5/14/2008 8:29:41 AM
Para el acceso a datos desde Visual Basic se utiliza el nuevo modelo de acceso a datos que proporciona la plataforma .NET FrameWork : ADO.NET. Basicamente, se implementarán a modo de ejemplo algunas aplicaciones Windows Forms que accedan a datos utilizando la tecnología ADO.NET. Podriamos definir ADO.NET como: • Un conjunto de interfaces, clases y estructuras que permiten el acceso a datos desde la plataforma .NET de Microsoft. • Una evolución del API ADO de Microsoft. • Permite un modo de acceso a datos desconectado. Esto quiere decir que, a través de ADO.NET, sólo estaremos conectados al servidor el tiempo estrictamente necesario para realizar la carga de los datos en el DataSet. Acceso Desconectado Mediante el acceso desconectado que proporciona la plataforma .NET a través de ADO.NET, reduciremos el número de conexiones aumentando la capacidad de carga de trabajo de nuestro servidor ya que se soportarán una mayor cantidad de usuarios por unidad de tiempo. Normalmente, cuando se recoge información de una Base de Datos es con el propósito de realizar algún tipo de proceso con ella: mostrarla por pantalla, procesarla o enviarla a algún componente. Con frecuencia, no sólo necesitaremos una sola fila, sino un conjunto de ella. Y también será frecuente que necesitemos información que se encuentre en más de una tabla (join de tablas). Lo que hará la aplicación entonces será cargarlos y tratarlos como un bloque compacto. En un modelo desconectado, sería ilógico tener que conectar cada vez que queramos avanzar al registro siguiente para recoger la información de dicho registro. Así, lo que se hace para solucionar ese inconveniente es almacenar temporalmente toda la información necesaria para poder trabajar posteriormente con ella. Esto es lo que representa un objeto DataSet en el modelo ADO.NET. Un objeto DataSet es una caché de registros recuperados de una Base de Datos que puede llegar a contener más de una tabla, basadas éstas en tablas reales de la Base de Datos. Será importante saber que los DataSet son almacenes estáticos. Es decir, no se “enterarán” de los cambios realizados en la Base de Datos real, hasta que no se hayan recargado dichos datos. Por lo que será necesario hacerlo si queremos “estar al dia”. En definitiva, un objeto DataSe es capaz de almacenar toda una Base de Datos lógica y siempre con independencia del fabricante que la diseño, lo que da una gran flexibilidad de trabajo al modelo ADO.NET de Microsoft.
 
Espacio de nombres System.Data Dentro del espacio de nombres System.Data nos encontramos con las siguientes clases, que son el eje central de ADO.NET: • DataSet : Almacén de datos de ADO.NET. Representa una Base de Datos desconectada del proveedor de datos. Capaz de almacenar datos y relaciones. • DataTable : Un contenedor de datos. Estructurado como un conjunto de filas (DataRow) y de columnas (DataColumn). • DataRow : Registro que almacena x valores. Representación de una fila/tupla de una Bases de Datos en ADO.NET. • DataColumn : Contiene la definición de una columna de una Base de Datos.
 
Espacios de nombres System.Data.Client y Sistem.Data.OleDb • SqlCommand / OleDbCommand : Clases que representan un comando de SQL contra un SGBD. • SqlConnection / OleDbConnection : Clases que representan la etapa de conexión a un SGBD. • SqlCommandBuilder / OleDbCommandBuilder : Generador de comandos SQL de inserción, modificación y borrado de una consulta de SQL. • SqlDataReader / OleDbDataReader : Un lector de datos de sólo avance, conectado a la Base de Datos • SqlDataAdapter / OleDbDataAdapter : Clase adaptadora entre un objeto DataSet y sus operaciones en la Base de Datos.
 
Las Clases Connection En los ejemplos que se han utilizado, se ha empleado Microsoft SQL Server 2000 como SGBD, ya que ha sido uno de los SGBD vistos en clase. El primer paso en un acceso a datos consiste en establecer una conexión con la Base de Datos. Esta operación la llevaremos a cabo gracias a las clases Connection de ADO.NET, que permiten conectar a un origen de datos. En ADO.NET existen dos implementaciones para algunos de los objetos, cada uno específico del origen de datos al que vayamos a conectar. En este caso, somo queremos conectar con Microsoft SQL Server lo haremos a través de la clase System.Data.SqlClient.SqlConnection. Si quisieramos hacerlo con un proveedor de datos OLEDB, lo hariamos a través de la clase System.Data.OleDb.OleDbConnection. Utilizaremos los métodos Open() y Close() para conectar y desconectar de la Base de Datos, respectivamente. El constructor de la clase Connection que empleemos (SqlConnection o OleDbConnection) recibirá como parámetro la cadena de conexión que se aplique a su propiedad ConnectionString.
 
Las clases Command Una vez que hemos establecido la conexión con el SGBD, la siguiente operación que normalmente querremos llevar a cabo será la de enviarle sentencias para realizar diferentes operaciones con los datos. Las clases Command de ADO.NET son las que nos permitirán llevar a cabo tales operaciones. Un objeto Command nos va a permitir ejecutar una sentencia SQL sobre la fuente de datos con la que hemos conectado. También podremos obtener un cojunto de resultados. En este caso, esos datos pasarán a otro tipos de objetos como DataReader o DataAdapter. Los objetos Command se deben crear a partir de la conexión que ya se ha establecido y contendrá una sentencia a SQL a ejecutar sobre dicha conexión.
 
Entre sus propiedades más comunes se encuentran las siguientes: • CommandText : Contiene la cadena de texto que representa la sentencia SQL que se ejecutará sobre la fuente de datos. Entre sus métodos más comunes se encuentran los siguientes: • ExecuteNonQuery : Ejecuta la sentencia SQL contenida en la propiedad CommandText del objeto Command. En este caso la sentencia que se ejecuta debe ser una sentencia de un tipo que no devuelva resultado alguno (UPDATE, DELETE, INSERT). • ExecuteReader : Ejecuta la sentencia SQL contenida en la propiedad CommandText del objeto Command. En este caso si que se devolverán resultados. El resultado devuelto será un objeto de tipo DataReader (SqlDataReader/OleDbDataReader) que nos permitirá leer y recorrer los datos devueltos por la sentencia SQL. • ExecuteScalar : Utilizada cuando sólo queremos obtener el dato de la primera columna de la primera fila. El resto de datos no se tienen en cuenta. Muy útil cuando queremos recoger la resultado, por ejemplo, de un COUNT(*) ya que este método devuelve un tipo de dato Object como resultado.
 
Inserción sobre una tabla.
 
Consulta sobre una tabla
 
Las clases DataReader Un objeto DataReader permite la navegación hacia delante y de sólo lectura de los registros devueltos por una consulta. A diferencia de los objetos que trabajan en modo desconectado comentados anteriormente, este objeto permanece conectado durante todo el tiempo que se esté trabajando con él. Para obtener un objeto DataReader tendremos que ejecutar un método ExecuteReader() de un objeto Command basado en una consulta SQL. Estas son sus propiedades más comunes: • FieldCount : Devuelve el número de columnas de la fila actual. • IsClosed : Indica si está (True) o no cerrado (False) el objeto DataReader. Y sus métodos más comunes: • Close() : Cierra el objeto DataReader liberando los recursos. • Read() : Desplaza el cursor actual al siguiente registro permitiendo obtener los valores del mismo a través del objeto DataReader. Además, devolverá True si quedan más elementos dentro del objeto DataReader y False si hemos llegado al final del conjunto de registros. La posición inicial de un objeto DataReader es justo antes del primer registro por lo que lo primero que deberemos hacer será realizar una llamada a este método para empezar a obtener valores.
 
La Clase DataSet DataSet es el almacén de datos por excelencia de ADO.NET. Un objeto DataSet es capaz de almacenar y representar a una Base de Datos en memoria y desconectada del proveedor de datos (Base de Datos) que contiene tablas y sus relaciones. Cada tabla contenida dentro del objeto DataSet se encuentra disponible a través de su propiedad Tables, que es una colección de objetos System.Data.DataTable. Cada objeto System.Data.DataTable es una colección de objetos System.Data.DataRow que representan las filas de la Base de Datos. Y siguiendo con esto, cada objeto DataRow posee una colección de objetos DataColumn que representan cada una de las filas de la fila actual. Para poder crear e inicializar las tablas del DataSet deberemos hacer uso del objeto DataAdapter (SqlAdapter para Microsoft SQL Server). Al objeto DataAdapter le pasaremos como parámetro la cadena que represente la consulta que queremos hacer, y que rellenará de datos el DataSet. Del objeto DataAdapter utilizaremos su método Fill(), que tiene dos parámetros: uno el objeto DataSet que se rellenará de datos y otro que será el nombre que tendrá la tabla dentro del objeto DataSet. A continuación, se pueden ver los método más importantes de la clase DataSet: • Clear() : Elimina todos los datos almacenados en el objeto DataSet. • AcceptChanges() : Confirma todos los cambios realizados en el DataSet (los últimos cambios). • GetChanges() : Devuelve un objeto DataSet que contiene únicamente los cambios realizados desde que se cargaron los datos o desde la última vez que se llamó al método AcceptChanges(). • RejectChanges() : Abandona todo los cambios realizados en el DataSet (los últimos cambios).
 
Y una de sus propiedades más importantes: • Tables : Devuelve una colección de objetos DataTable que representan cada una de las tablas contenidas en el objeto DataSet. El siguiente ejemplo muestra como rellenar un ListBox a través de datos obtenidos de una Base de Datos haciendo uso de objetos DataSet y DataAdapter:
 
Ver mas
 
Roberto
Es excelente la idea q tienes pero sacame de una duda tengo el vb 2005 en mi maquina y sql server 2000 como gestor de BD pero cuando cargo mi aplicacion hecha por estas herramientas me sale un error el cual no encuentra la base de datos sql server 2005 y no la tengo q debo hacer por favor gracias
5/15/2008 1:39:20 PM
lisa
talvez esta mal instalado y pusites sqlserver200 como default. Reinstala sin borrar las Bd de datos
5/15/2008 2:35:01 PM
Javier V
Hola amigo creo saber que pasa. Debes estar usando en algun lado un archivo de base de datos de sql 2005, el error no es con tu sql 2000, esto puede ocurrir si usas webparts o autenticacion con forms por medio de mebership o algun archivo .mdf saludos y nos cuentas...
5/18/2008 12:17:36 PM
Roberto
Hola chicos, hice lo de Lisa pero sigo en lo mismo, pero Javier al momento q he instalado el vb2005 hay una parte donde instala el sql express 2005, Tiene algo q ver esto?, pq ya probe instalandolo en forma personalizada, y desactive el sql express 2005 y nada de nada, otra cosa no he intentado lo q me haz dicho javier donde puedo ver el Webparts? gracias y disculpa
5/21/2008 5:50:14 AM
Javier V
Mira que los servicios de SQL 2005 se esten ejecutando.
5/29/2008 1:06:37 PM
Noe
Excelente articulo para los que estamos iniciando en .Net, sin ningun problema al ejecutar cualquiera de los ejemplos.
6/12/2008 4:12:14 PM
Palacios Garcia
Es una excelente ayuda. Hera justo lo que necesitava
6/20/2008 7:27:06 PM
jairo duarte
no entiendo nada de esta huevada y valen verga todos
9/14/2009 12:04:10 PM
Roberto
Hola necesito realizar un sistema en el cual me maneje bases de datos desconectadas, es decir q tenga un base principal y otras mas q al final de el dia pueda actualizar la base principal con todos los movimientos de las demas, alguna sugerencia??
9/30/2009 9:40:00 AM
TYKYS
gente, muy buena explicacion, yo soy principiante en esto, les quiero preguntar solamente como tiene q ser la cadena de conexion, ej: conexion.ConnectionString = “server=(local);” & _ integrated security=sspi;“database=kostek;uid=;pwd=;” pero me larga la execption de q no puede conectar a la base de datos, q toy haciendo mal? y si pueden explicarme brevemente el porq de esa cadena de conexion se los agradeceria un monton. salu2!!!
10/17/2009 5:46:22 PM
Alvaro
Muy buena la explicacion. Tengo una duda. Quiero realizar un insert en la bd pero metiendo los valores desde unas variables. Es esto posible directamente con la sentencia en sqlcommand (y como se haría)o no admite esas variables y hay que hacerlo a través de dataset? Gracias
10/23/2009 6:16:06 AM
Ernesto Edel
Para los que tengan problemas con conectarse EJEMPLO TYKYS quiten de la connectionstrin "integrated security=ssp", esto te esta obligando que te conectes con compatibilidad a windows es decir con usuario de windows, quitalo si en realidad tienes usuario de sql y adelante!.. espero lk les ayude si no jaja pos ai lk ver ai lk ver... pos cierto muy buena la explicacion, jaja teniendo lk migrar todo un sistema a .net, ujuuu ¬¬ lastima lk a 2005 bueno se hace lo lk se puede :-P..
10/28/2009 6:14:57 PM
Gabriel
Excelente articulo, tmb estoy empezando con VB.net ¿Para realizar una aplicacion de carga de encuestas.Que se debe usar ADO conectado o Desconectado?
11/5/2009 9:05:59 PM
Miguel
Me parece una completa y clara exposición. Gracias
12/26/2009 4:38:47 AM
ROBINSON LAPEIR
los ejemplos expuestos anteriormente me sirvió de mucho para una aplicacion que estaba haciendo... gracias ROBINSON LAPEIRA MONTENEGRO
1/18/2010 8:00:47 PM
leo
hola muchas gracias por el articulo. te escribo para pedirte un favor enorme, necesito como hacer para leer datos de una base de datos Access en .net saludos
2/18/2010 2:24:55 PM
camila
hola gracias por escribir todo este articulo.. entendí todo super bien, antes leia o escuchaba que mencionaban todos estos comandos pero no sabia que significaban y menos para que servian!!.. ahora entiendo.. los conceptos que hay detrás y todo, de verdad muchas gracias.. los felicito por su trabajo
4/4/2010 10:57:06 PM
kike
hola a todos, algo tarde pero espero me peudan ayudar, uso mysql montado en linux, me coneto mediante odbc, pero al formar la cadena de conecxion me doy cuenta que no soporta odbc, alguna sugegerncia de como accesar..saludos, espeor contesten
4/28/2010 3:06:56 PM
baby jhonny
esta chida esta informacion me sirvio bye
5/14/2010 2:32:16 PM
JuanC
Q mas pana, buen documentó estaba pensando que seria mejor q publicaras el proyecto con las repectivas lineas de codigo documentadas, asi seria mas facil analizarlo q leer un monton
6/26/2010 3:15:42 PM
Agregar comentarios
Autor:
Comentario:
codigo de la imagen

Fecha de publicación: 5/14/2008 8:29:41 AM