none
¿Como llenar un ComboBox mediante un procedimiento almacenado?

    Pregunta

  • Hola, soy nuevo en conectar con base de datos.

    Debo llenar un ComboBox

    El procedimiento almacenado es:

    create procedure sp_llenar_especialidades
    as
    begin
        select ID_ESPECIALIDAD, NOMBRE_ESPECIALIDAD from ESPECIALIDAD
    end

    Y en VisualBasic tengo esto:

    Imports System.Data.SqlClient

    Dim cmd As New SqlCommand
    Dim reader As SqlDataReader

    Using cnn As SqlConnection = New SqlConnection("Initial Catalog=CONSULTORIO;" & _
            "Data Source=DESKTOP-LGTPUJM\SQLEXPRESS;Integrated Security=SSPI;")

                Try
                    cnn.Open()
                    cmd = New SqlCommand("sp_llenar_especialidades", cnn)
                    cmd.CommandType = CommandType.StoredProcedure

                    reader = cmd.ExecuteReader

                   'No se que más sigue

                   'el ComboBox de llama cbxEspecialidad

                    cnn.Close()
                Catch ex As Exception
                    cnn.Close()
                    MsgBox("Error")
                End Try

            End Using

    viernes, 16 de septiembre de 2016 22:12

Respuestas

  • LunarWolf,

    Puedes utilizar la siguiente estructura:

    Try
    	Using cn As New SqlConnection("<Colocar cadena de conexión>")
    
    		Dim cmd As New SqlCommand("sp_llenar_especialidades", cn)
    		cmd.CommandType = CommandType.StoredProcedure
    
    		Dim da As New SqlDataAdapter(cmd)
    
    		Dim dt As New DataTable
    
    		da.Fill(dt)
    
    		cbxEspecialidad.ValueMember = "ID_ESPECIALIDAD"
    		cbxEspecialidad.DisplayMember = "NOMBRE_ESPECIALIDAD"
    		cbxEspecialidad.DataSource = dt
    	End Using
    Catch ex As Exception
    	MessageBox.Show(ex.Message)
    End Try


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    viernes, 16 de septiembre de 2016 22:40