Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se proporciona información sobre cómo abrir bases de datos de Microsoft SQL Server mediante el proveedor de datos .NET de SQL Server junto con Visual Basic .NET. Puede usar ADO.NET para abrir una base de datos de SQL Server mediante el proveedor de datos .NET de SQL Server. ADO.NET recopila todas las clases necesarias para el control de datos.
El System.Data.SqlClient espacio de nombres describe una colección de clases que se usan para acceder mediante programación a un origen de datos de SQL Server. Puede acceder a las clases de ADO a través del System.Data.OleDb espacio de nombres para proporcionar compatibilidad con las bases de datos OLE DB.
En este artículo, las conexiones se configuran mediante programación y mediante el Explorador de servidores .NET de Visual Studio. Los ejemplos de código de este artículo usan los SqlConnectionobjetos , SqlCommandy SqlDataReader ADO.NET.
Se aplica a: Visual Basic .NET
Número de KB original: 308656
Prerrequisitos
- Microsoft SQL Server
- Visual Basic .NET
Nota:
SQL Server y Visual Basic .NET deben instalarse y ejecutarse en el mismo equipo. Además, el usuario debe poder usar la seguridad integrada de Windows para conectarse a SQL Server.
En este artículo se da por supuesto que está familiarizado con los temas siguientes:
- conceptos de ADO.NET
- Conceptos de SQL Server y sintaxis de Transact-SQL (T-SQL)
- Base de datos de ejemplo Northwind
Creación de una aplicación windows de Visual Basic para .NET
En Visual Studio .NET, cree un proyecto de aplicación de Windows de Visual Basic y asígneles el nombre SQLDataAccess.
Abra Form1.
En la primera línea de Form1.vb, agregue una referencia al espacio de nombres ADO.NET, como se indica a continuación:
Imports System.Data.SqlClientPara asegurarse de que el servicio SQL Server se está ejecutando en el equipo, seleccione Inicio, seleccione Programas, Microsoft SQL Server y, a continuación, seleccione Administrador de servicios de SQL Server.
Establezca la propiedad Server en el nombre del equipo y, a continuación, establezca la propiedad Services en MSSQLServer.
Si el servicio no se está ejecutando, seleccione Iniciar.
Cierre el cuadro de diálogo Administrador de servicios de SQL Server.
Creación de objetos ADO.NET
Modifique la clase de la Form1 siguiente manera:
Public Class Form1
Inherits System.Windows.Forms.Form
'Create ADO.NET objects.
Private myConn As SqlConnection
Private myCmd As SqlCommand
Private myReader As SqlDataReader
Private results As String
El SqlConnection objeto establece una conexión de base de datos, el SqlCommand objeto ejecuta una consulta en la base de datos y el SqlDataReader objeto recupera los resultados de la consulta.
Uso del objeto SqlConnection para abrir la conexión de SQL Server
Para configurar el cadena de conexión del
SqlConnectionobjeto, agregue el código siguiente alForm1_Loadprocedimiento de evento:'Create a Connection object. myConn = New SqlConnection("Initial Catalog=Northwind;" & _ "Data Source=localhost;Integrated Security=SSPI;")Para configurar el
Commandobjeto que contiene la consulta SQL, agregue el código siguiente alForm1_Loadprocedimiento de evento:'Create a Command object. myCmd = myConn.CreateCommand myCmd.CommandText = "SELECT FirstName, LastName FROM Employees" 'Open the connection. myConn.Open()
SqlConnection usa los detalles de inicio de sesión de Windows para conectarse a la base de datos Northwind del equipo.
Usar el objeto SqlDataReader para recuperar datos de SQL Server
Agregue el código siguiente al procedimiento de eventos
Form1_Load:myReader = myCmd.ExecuteReader()
Cuando se ejecuta el myCmd.ExecuteReader método , SqlCommand recupera dos campos de la Employees tabla y crea un SqlDataReader objeto .
Para mostrar los resultados de la consulta, agregue el código siguiente al procedimiento de
Form1_Loadevento:'Concatenate the query result into a string. Do While myReader.Read() results = results & myReader.GetString(0) & vbTab & _ myReader.GetString(1) & vbLf Loop 'Display results. MsgBox(results)
El myReader.Read método devuelve un valor booleano que indica si hay más registros que se van a leer. Los resultados de la consulta SQL se muestran en un cuadro de mensaje.
Para cerrar los
SqlDataReaderobjetos ySqlConnection, agregue el código siguiente al procedimiento deForm1_Loadevento:'Close the reader and the database connection. myReader.Close() myConn.Close()Guarde y ejecute el proyecto.
Ver la base de datos en el Explorador de servidores
- En el menú Ver , seleccione Explorador de servidores.
- Haga clic con el botón derecho en Conexiones de datos y seleccione Agregar conexión.
- En el cuadro de diálogo Propiedades del vínculo de datos , seleccione localhost en el cuadro Seleccionar o escriba un nombre de servidor .
- Para iniciar sesión en el servidor, seleccione Seguridad integrada de Windows NT.
- Seleccione Seleccionar la base de datos en el servidor y, a continuación, seleccione la base de datos Northwind en la lista.
- Para validar la conexión, seleccione Probar conexión y, a continuación, seleccione Aceptar.
- En el Explorador de servidores, seleccione esta opción para expandir el árbol Conexiones de datos para que el
Employeesnodo de tabla se expanda. Las propiedades de los campos individuales aparecen en la ventana Propiedades .
Usar el Explorador de servidores para abrir la conexión de SQL Server
Ver Form1 en la vista Diseño.
En la
Employeestabla del Explorador de servidores, arrastre y coloque los campos de base de datos FirstName y LastName en Form1. Esta acción creaSqlConnectionobjetos ySqlDataAdapteren el formulario.En el menú Ver , seleccione Cuadro de herramientas.
En la pestaña Datos , arrastre y coloque un
DataSetobjeto (DataSet1) en el formulario.En el cuadro de diálogo Agregar conjunto de datos , seleccione Conjunto de datos sin tipo y, a continuación, seleccione Aceptar.
En el
Form1_Loadprocedimiento de evento, inserte una línea de código antes de que losDataReaderobjetos yConnectionse cierren para finalizar el procedimiento, como se indica a continuación:SqlDataAdapter1.Fill(DataSet1, "Employees") myReader.Close() myConn.Close()En la pestaña Formularios de ventana del cuadro de herramientas, arrastre y coloque un control DataGrid en Form1.
En el
Form1_Loadprocedimiento de evento, agregue el código siguiente antes de lamyReader.close()línea para enlazar DataGrid alDataSetobjeto que creó anteriormente:DataGrid1.SetDataBinding(DataSet1, "Employees")Guarde y ejecute el proyecto.