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

Como hago una consulta a una BD desde VB

Estas en el tema de Como hago una consulta a una BD desde VB en el foro de Programación General en Foros del Web. hola saben tengo una duda el como hago una consulta a una BD desde una programa en visual Basic, ya tengo conectada la base de ...
  #1 (permalink)  
Antiguo 08/11/2004, 14:27
 
Fecha de Ingreso: septiembre-2004
Mensajes: 46
Antigüedad: 19 años, 7 meses
Puntos: 0
Información Como hago una consulta a una BD desde VB

hola saben tengo una duda el como hago una consulta a una BD desde una programa en visual Basic, ya tengo conectada la base de datos, pero necesito hacer una consulta tipo buscador y que me lance un resultado, bueno si lo encuentra o no lo encuentra.

Tambien quisiera saber si me pueden decir como valido mis campos los text para que si son de texto reciban texto y si son de numericos solo reciban numeros. muchas gracias
__________________
Feriv
  #2 (permalink)  
Antiguo 08/11/2004, 14:36
 
Fecha de Ingreso: septiembre-2004
Mensajes: 46
Antigüedad: 19 años, 7 meses
Puntos: 0
Tambien me podrian decir toda la manipulacion de una base de datos, borrar, agregar, buscar datos desde visual basic, o en su defecto un manual que me recomienden
__________________
Feriv
  #3 (permalink)  
Antiguo 08/11/2004, 15:44
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
tenes dos opciones dao y rdo pero todas se basan en lo mismo,, averiguate mas del tema y decis que deseas usar..
nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #4 (permalink)  
Antiguo 08/11/2004, 16:22
Avatar de jrp01  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 2.702
Antigüedad: 20 años
Puntos: 0
Bueno resolvendo tus dudas:

Usando ADO primero en proyecto->referencias
selecionas Microsoft ActiveX Data Objects 2.xx

despues declaras:
dim cn as new adodb.connection
dim rs as new adodb.recordset

en el load o en un modulo pones:

cn.open "Tu cadena de conexio a tu DB"


para guardar:
cn.execute("Insert into tutabla(tus campos) values(tus valores)")
borrar:
cn.execute("delete from tutabla where tucondicion")
actualizar:
cn.execute("update tutabla set tucampo=tuvalor where tu condicion")

Si quieres saber mas lee lo referente a SQL

si es en base a un text solo agregas por ejm.
cn.execute("update tutabla set tucampo='" & text1.text "' where tucampo=" & text2.text)

el primero es texto el segundo numerico.


Para validar si es numero
En el evento keypress solo funciona si haces matrices de botones lo cual te que hagas recomiendo:

Primero en que caja de texto estoy si el la primera
If Index = 0 Then
If KeyAscii < 48 Or KeyAscii > 57 Then 'Si es diferente de numero
If KeyAscii <> 8 And KeyAscii <> 46 Then 'Si es diferente de backspace o Tab
KeyAscii = 0 'Si no lo es no pone nada
Beep
End If
End If
End If


Saludos
  #5 (permalink)  
Antiguo 08/11/2004, 16:24
 
Fecha de Ingreso: octubre-2004
Ubicación: COLOMBIA
Mensajes: 240
Antigüedad: 19 años, 6 meses
Puntos: 3
A VER PARA LA PRIMERA NO MANEJO MUCHA DB PERO PUEDES HACERLOS CON SQL ASI:
Dim Datos As DataBase 'O ALGO ASI
Datos="Select Codigo,Nombre From NombreTabla" 'CREO QUE ES ASI

PARA LO SEGUNDO:
'PARA NUMEROS
Private Sub Text1_KeyPress (ByVal KeyAscii As Integer)
If KeyAscii <48 Or KeyAscii>57 Then
KeyAscii = 0
End If
End Sub
'PARA LETRAS
Private Sub Text1_KeyPress (ByVal KeyAscii As Integer)
If KeyAscii <97 Or KeyAscii>122 Then
KeyAscii = 0
End If
End Sub

OJALA TE SIRVA.
CHAO
  #6 (permalink)  
Antiguo 08/11/2004, 16:27
Avatar de jrp01  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 2.702
Antigüedad: 20 años
Puntos: 0
Upps me faltaba el buscar:

set rs=cn.execute("select tuscampos from tutabla where tu condicion")

Asi asignas a rs los resultados de la busqueda para verlos:

por ejm. ponerlo en un text

text1.text=rs(0) ' el 0 es el primer campo que devuelve la consulta si hay mas es asi rs(1)......rs(n)

o tambien:

text1.text=rs!Tucampo

Saludos
  #7 (permalink)  
Antiguo 09/11/2004, 13:50
Avatar de dobled  
Fecha de Ingreso: enero-2002
Ubicación: Rancagua - Chile
Mensajes: 1.328
Antigüedad: 22 años, 3 meses
Puntos: 2
me funciono super... ahora si quiero mostrar cuantos registros encontro, o mostrarlos en una grid como lo hago?
__________________
Usa títulos específicos y con sentido
En las listas de correo o en los grupos de noticias, la cabecera del mensaje es tu oportunidad de oro para atraer la atención de expertos cualificados en aproximadamente 50 caracteres o menos. No los desperdicies en balbuceos como "Por favor ayúdame" (de "POR FAVOR AYÚDAME!!!" ya ni hablamos). No intentes impresionarnos con lo profundo de tu angustia; mejor usa ese preciado espacio para una descripción lo más concisa posible del problema.
  #8 (permalink)  
Antiguo 09/11/2004, 18:39
Avatar de jrp01  
Fecha de Ingreso: mayo-2004
Ubicación: México
Mensajes: 2.702
Antigüedad: 20 años
Puntos: 0
Facil para saber el no. de registros es asi:

set rs=cn.execute("select count(*) from tutabla where tucondicion")

msgbox "se encontraron" & rs(0) & " registros"

Para meterlos en un grid:

http://www.forosdelweb.com/showthrea...light=datagrid

Saludos
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




La zona horaria es GMT -6. Ahora son las 05:46.