Foros del Web » Programación para mayores de 30 ;) » .NET »

Cargar datos de una Base de Datos en una select(listbox)

Estas en el tema de Cargar datos de una Base de Datos en una select(listbox) en el foro de .NET en Foros del Web. Hola foro. Hace poco pregunté sobre cómo podia pasar de un listbox a otro datos pulsando un boton.Me lo solucionasteis (gracias). Despúes, pregunté como podia ...
  #1 (permalink)  
Antiguo 21/04/2006, 03:10
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
Cargar datos de una Base de Datos en una select(listbox)

Hola foro.

Hace poco pregunté sobre cómo podia pasar de un listbox a otro datos pulsando un boton.Me lo solucionasteis (gracias).

Despúes, pregunté como podia introducir nuevos datos en una select, también contestasteis (que majos sois).

Pero resulta que no sé como meter información de una base de datos en la select, es decir, cogiendo la información de los dataadapter, los datatable... que se usan para establecer la conexión con la base de datos.

¿Sabeís si se puede hacer referencia a un "select" desde el archivo .aspx.vb para poder introducir los datos de las datatables etc.?

Esperando que me podais ayudar,

Muchisimas gracias a todos
  #2 (permalink)  
Antiguo 21/04/2006, 05:59
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
Hola.

He descubierto una forma de hacerlo desde el código de ASP:

<select style="width: 200px; height: 120px;" id="segundo" name="segundo" multiple="multiple">
<%
Dim cnn = Server.CreateObject("ADODB.Connection")
Dim result
cnn.open("PROVIDER=SQLOLEDB;DATA SOURCE=PC-DESARROLLO4;UID=sa;DATABASE=Proyecto1")

Dim sql = "SELECT * FROM TPersona"

result = cnn.Execute(sql)

result.movefirst()
'Recorre todas las filas del resultado
Do While Not result.EOF
'Imprimimos los contenidos del listbox

'AQUI ME DA EL ERROR
Response.Write("<option value='" & result("Cod_persona") & "'>" & result("Des_persona") & "</option>")


result.movenext()
Loop
cnn.close()
cnn = Nothing

%>
</select>

Como veis, donde he puesto "aqui me da error" me da el siguiente error:

El operador '&' no está definido para cadena "<option value='" ni para tipo 'Field'

¿Alguien sabe porque?

GRACIAS
  #3 (permalink)  
Antiguo 23/04/2006, 03:40
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hola aupaneu

traslado el tema al foro de asp a ver qué pueden decirte de el error que estás obteniendo

Un saludo
  #4 (permalink)  
Antiguo 23/04/2006, 04:44
Avatar de a n g e l u s  
Fecha de Ingreso: enero-2006
Ubicación: Chile
Mensajes: 237
Antigüedad: 18 años, 3 meses
Puntos: 1
hola aupaneu bienvenido al foro ASP.

tu problema son las comillas simples = '

solucion

<select style="width: 200px; height: 120px;" id="segundo" name="segundo" multiple="multiple">
<%
'esto pegalo al inicio de la pag o has un include para que no lo tengas que copiar una y otra vez
Dim cnn = Server.CreateObject("ADODB.Connection")
cnn.open("PROVIDER=SQLOLEDB;DATA SOURCE=PC-DESARROLLO4;UID=sa;DATABASE=Proyecto1")

sub cerrar
cnn.close()
cnn = Nothing
end sub

%>

<%
Dim result
Dim sql

'order by para que ordene asc=ascendente desc=decendente
sql = "SELECT * FROM TPersona order by Des_persona ASC"

on error resume next '-> ayuda a controlar errores
result = cnn.Execute(sql)

if err <> 0 then

' puedes colocar un mensaje para los usuarios como que no se puede
' realizar la accion en este momento pruebe mas tarde o
' mostrar el error como en este caso.

response.write ("tenemos un error <br>"& err.description)

else

Do While Not result.EOF

Response.Write "<option value=" & result("Cod_persona") & ">" & result("Des_persona") & "</option>"

result.movenext()
Loop

cerrar ' se cierra la conexion

end if ' fin control de errores
%>
</select>
__________________
Atte,
A n g e l u s
Concepción - Chile
más vale respuestas bien pensadas, que 7000 post
  #5 (permalink)  
Antiguo 23/04/2006, 07:44
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 8 meses
Puntos: 18
Cita:
Iniciado por a n g e l u s
Response.Write "<option value=" & result("Cod_persona") & ">" & result("Des_persona") & "</option>"
</select>
asi funcionará, pero no hay que hacerlo así.

Código:
Response.Write "<option value=""" & result("Cod_persona") & """>" & result("Des_persona") & "</option>"
así sí.
  #6 (permalink)  
Antiguo 24/04/2006, 00:32
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
Hola de nuevo.

Gracias por contestar, pero me ocurre una cosa:
en vez de sacarme los datos de la base de datos, en el listbox me sale el siguiente texto repetido: "System.__ComObject"

¿A que se debe?

Gracias!
  #7 (permalink)  
Antiguo 24/04/2006, 05:31
 
Fecha de Ingreso: abril-2006
Mensajes: 166
Antigüedad: 18 años
Puntos: 0
Holita vecinillos.

Ya he resuelto el asunto, al final lo he hecho desde el código de VB, no desde ASP (pensaba que en ASP solucionaria un tema que he resuelto en VB).

Gracias y hasta otra!!
  #8 (permalink)  
Antiguo 24/04/2006, 08:50
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
Si...hasta otra, solamente comentarte que tú estás trabajando en .NET y no en ASP clásico, para eso existe un foro de .NET

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 00:18.