Visual Basic.NET - Combobox con datos desde sql

 
Vista:
sin imagen de perfil
Val: 43
Ha disminuido su posición en 9 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por javier (20 intervenciones) el 06/02/2019 23:01:24
Saludos,

Necesito ayuda con una consulta en sql, probablemente esta duda pueda ir en el espacio de sql pero para mi esto tiene que ver mas con .net

Necesito mostrar datos en un comboBox provenientes de una tabla de sql server, tengo el siguiente código

1
2
3
4
5
6
7
8
9
Dim adap As SqlDataAdapter
Dim tabla As New DataTable
 
adap = New SqlDataAdapter("select '" & CbxCiclos.Text & "' from Ordinales where id between 1 and '" & TxtNumCiclos.Text & "'", conex)
adap.Fill(tabla)
 
For Each fila As DataRow In tabla.Rows
    CbxNumCiclo.Items.Add(fila("x"))
Next

Donde "x" seria mi columna, el problema que tengo es que el nombre de la columna es variable y es que esa la determina la selección de otro comboBox, mi duda es como asigno el nombre de la columna en lugar de mi variable actual "x"

Ojala me puedan ayudar a solucionar esta duda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2
Ha disminuido su posición en 102 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por Horroroso (52 intervenciones) el 06/02/2019 23:16:39
Hola,

en lugar de llenar dato por dato pudes utilizar datasource de la siguiente forma:

1
2
3
4
5
6
7
8
Dim adap As SqlDataAdapter
        Dim tabla As New DataTable
 
        adap = New SqlDataAdapter("select '" & CbxCiclos.Text & "' from Ordinales where id between 1 and '" & TxtNumCiclos.Text & "'", conex)
        adap.Fill(tabla)
 
 CbxNumCiclo.DataSource = tabla
 CbxNumCiclo.DisplayMember = "X"

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 43
Ha disminuido su posición en 9 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por javier (20 intervenciones) el 07/02/2019 16:56:22
Te agradezco el apoyo, he intentado el proceso que me comentas y me parece valido, solo que al momento de ejecutarlo, en el comboBox me muestra una lista con este mensaje "System.Data.DataRowView".

Tendrás una idea del porque ese error?

Saludos!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 2.767
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por Phil Rob (728 intervenciones) el 07/02/2019 19:03:32
Hola,

Si conoce el índice de la columna, puede reemplazar "X" por tabla.Columns (i) .ColumnName.

Puede ser útil (no estoy seguro) para poner la línea
adap.FillSchema (tabla, SchemaType.Source)
antes
adap.Fill (tabla)

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 43
Ha disminuido su posición en 9 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por javier (20 intervenciones) el 07/02/2019 19:16:13
Agradezco el apoyo, he estado realizado algunas pruebas para ver de donde proviene el error, y me he percatado que es en la consulta, al hacer el select directamente con valores

"select Semestre from Ordinales where id between 1 and 5"

El resultado es el esperado, pero al momento de agregar los campos que mantienen las variables empieza a mandar el error

"select '" & CbxCiclos.text & "' from Ordinales where Id between 1 and 5"

Acá el resultado es este "System.Data.DataRowView" repetido 5 veces en lista del comboBox, por pruebas q he echo me he percatado que se refiere a que la columna a la que apunta el CbxCiclos no existe en la tabla, he comprobado que todo este bien escrito para omitir cualquier error ortográfico.

Asta aqui voy ahorita , ojala tengas alguna idea del porque desconoce la columna
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2
Ha disminuido su posición en 102 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Combobox con datos desde sql

Publicado por Horroroso (52 intervenciones) el 07/02/2019 20:35:58
Hola,

intenta quitando los apostrofes:
1
"select " & CbxCiclos.Text & " from Ordinales where id between 1 and " & TxtNumCiclos.Text
El incluir apostrofes, son valores de texto literales, no tienen porque ir.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar