Estoy tratando de llenar un combobox con un Resultado de SQL
Creo que mi problema es el manejo de los datos en el formulario de datatable.

    Dim sql As String
    Dim sqlquery As String
    Dim ConnectionString As String
    ConnectionString = "Data Source=(local);Initial Catalog=Control;Persist Security Info=True;User ID=user;Password=pass"
    sqlquery = "Select dbName from Databases"

    Using connection As SqlConnection = New SqlConnection(ConnectionString)
        connection.Open()
        Using conn As SqlCommand = New SqlCommand(sqlquery, conn)
            Dim rs As SqlDataReader = comm.ExecuteReader
            Dim dt As DataTable = New DataTable
            dt.Load(cmboxDatabaseName)
        End Using 'comm
    End Using 'conn

Cuando ejecuto el programa me acabo de mirar un triste vacío combobox.

OriginalEl autor UPGRAYEDD | 2013-06-06

2 Comentarios

  1. 6

    Casi correcta, pero usted necesita para Cargar la tabla de datos utilizando el DataReader.

    Entonces realización de la tabla de datos para el origen de datos del Combo

    Using connection As SqlConnection = New SqlConnection(ConnectionString)
        connection.Open()
        Using comm As SqlCommand = New SqlCommand(sqlquery, connection)
                Dim rs As SqlDataReader = comm.ExecuteReader
                Dim dt As DataTable = New DataTable
                dt.Load(rs)
                ' as an example set the ValueMember and DisplayMember'
                ' to two columns of the returned table'
                cmboxDatabaseName.ValueMember = "IDCustomer"
                cmboxDatabaseName.DisplayMember = "Name"
                cmboxDatabaseName.DataSource = dt
        End Using 'comm
    End Using 'conn

    También puede establecer el combobox ValueMember de la propiedad a nombre de la columna que se utilizará como clave para el futuro de procesamiento y la DisplayMember de la propiedad a nombre de la columna que desea mostrar como texto a elegir para tu usuario

    Me mudé a este código de evento click de botón de la unidad. Al menos su soplando hasta ahora LOL ConnectionString = «ConnectionString = Datos … di cuenta de que la derecha del palo. Cambiado a ConnectionString = «Data Source=(local);Initial Catalog=Control;Persist Security Info=True;ID de Usuario=usuario;Password=pass» dice que la Conexión *** Resaltado ConnectionString = «ConnectionString = Fuente de Datos=(local);Initial Catalog=Control;Persist Security Info=True;ID de Usuario=usuario;Password=pass» es mi conenctionsting mal?
    Espero que ninguno ha sido herido : -) ¿me Podría indicar el mensaje de error?
    lol nosotros justo perdido un par de personas de apoyo no biggy relacionado con la red o específico de la instancia error al establecer una conexión a SQL Server. El servidor no se encuentra o no es accesible. Compruebe que el nombre de la instancia es correcto y que SQL Server está configurado para permitir conexiones remotas. (provider: Proveedor de Canalizaciones con Nombre, error: 40 – no se Pudo abrir una conexión con SQL Server)
    Creo que tengo algunos conns y comunicaciones mezclado así
    Hizo instalar SqlExpress en su dev PC? Si sí, entonces el DataSource=.\SQLEXPRESS debe ser utilizado en lugar de (local)

    OriginalEl autor Steve

  2. 1

    también se puede hacer como

    Dim Con = New SqlConnection(_ConnectionString)
    Dim cmdAs New SqlCommand
    Dim dr As New SqlDataReader
    
        Try
            If Con.State = ConnectionState.Closed Then
                Con.Open()
    
                cmd.Connection = Con
                cmd.CommandText = "Select field1, field2 from table"
    
    
                dr = cmd.ExecuteReader()
    
                ' Fill a combo box with the datareader
                Do While dr.Read = True
                    ComboBoxName.Items.Add(dr.GetString(0))
                    ComboBoxName.Items.Add(dr.GetString(1))
                Loop
    
                Con.Close()
            End If
    
        Catch ex As Exception
            MsgBox(ex.Message)
    
        End Try

    Espero que funcione para usted.

    OriginalEl autor SMHasnain

Dejar respuesta

Please enter your comment!
Please enter your name here