elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Consultas Select a una Base de Datos en Acces
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Consultas Select a una Base de Datos en Acces  (Leído 4,196 veces)
TheGhost(Z)

Desconectado Desconectado

Mensajes: 230



Ver Perfil
Consultas Select a una Base de Datos en Acces
« en: 14 Diciembre 2005, 13:25 pm »

Hola. Si alguien me puede ayudar con hacer una consulta SQL con variables.
 
Código:
Dim Tabla, Campo, TextoBusca As String

Tabla = "Empleados"
Campo="Nombre"
TextoBusca="Pedro"

Lo que deseo es mas o menos asi, pero no se como llevarlo a lo correcto:

Código:
Rs.Open "SELECT * FROM Tabla  where Campo = TextoBusca", DBConex, adOpenStatic, adLockOptimistic


He intentado con Solo la variable TextoBusca y funciona:
Código:
Rs.Open "SELECT * FROM  Empleados where Nombre = '" & Trim(TextoBusca) & "'  ", DBConex, adOpenStatic, adLockOptimistic


Pero lo he intentado haciendo lo mismo para todas las variables pero me arroja error Consulta Imcompleta
Código:
Rs.Open "SELECT * FROM '" & Tabla & "'  where '" & Campo & "' = '" & Trim(TextoBusca) & "'  ", DBConex, adOpenStatic, adLockOptimistic


Saludos
Pedro Jeri


En línea

programatrix


Desconectado Desconectado

Mensajes: 3.287


Ver Perfil WWW
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #1 en: 14 Diciembre 2005, 15:38 pm »

Aquí te faltan las comillas:

Citar
Rs.Open "SELECT * FROM Tabla  where Campo = 'TextoBusca'", DBConex, adOpenStatic, adLockOptimistic
No se si será por eso  ;)


En línea

el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #2 en: 15 Diciembre 2005, 03:55 am »

intenta con esto
Código:
Rs.Open "SELECT * FROM " & Tabla & "  where " & Campo & " = '" & Trim(TextoBusca) & "'  ", DBConex, adOpenStatic, adLockOptimistic

Saludos
En línea

TheGhost(Z)

Desconectado Desconectado

Mensajes: 230



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #3 en: 15 Diciembre 2005, 12:36 pm »

Gracias el_chente23

Si funciono!. con el codigo queme diste:

Código:
Rs.Open "SELECT * FROM " & Tabla & "  where " & Campo & " = '" & Trim(TextoBusca) & "'  ", DBConex, adOpenStatic, adLockOptimistic

Pero un pregunta: ¿cual es la diferencia entre estos dos? bueno se que se diferencian por ponerles estos ( ' ). Pero porque al TextoBusca se pone las ( ' ) y  a las demas no.

Código:
" & Tabla & " 
'" & Trim(TextoBusca) & "'


Lo que no entiendo es si la comilla (") que esta antes de & Tabla & cierra o abre. Es decir el formato:
Código:
Rs.Open "SELECT * FROM "

En fin. Si es asi:
Código:
& Tabla &

o asi:
Código:
"& Tabla &"

Y por otra parte porque a mi variable TextoBusca aparte de

las comillas
("textoBusca")

se le agrega un tilde mas, el que esta con rojo. No entiendo si al final: Tabla, Campo y textoBusca son variables.
('"& Tabla &"')

Saludos,
Pedro Jeri

En línea

el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #4 en: 15 Diciembre 2005, 18:49 pm »

la diferencia entre las 2 instruciones es que cuando armabas el string del Select le ponias comillas al nombre de la tabla y al nombre del campo, los cuales no llevan, los unicos que llevan esas comillas son las cadenas, entonces la variable textobusca las lleva proque si lo nota es una cadena, esa seria la diferencia. Sobre la otra pregunta, lo que pasa es que para hacer una consulta SQL, ya sea access o sql server, lo tienes que hacer armando una cadena con dicha consulta, entonces todo lo que es la instruccion del SQL tiene que ser entre comillas, pero si le quieres agragar valores de variables a la consulta, se la tienes que concatenar a la cadena fuera de las comillas, de lo contrario tomaria la variable tal cual y no su valor. Haber si me entiendes  :P, sino pregunta.

Saludos
En línea

TheGhost(Z)

Desconectado Desconectado

Mensajes: 230



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #5 en: 17 Diciembre 2005, 20:41 pm »

Estimado, el_chente23 .

Veamos. he entendio que se pone ("mivariable") si es algo relacionado con la consulta, pero sepone (' "mivariable" ' ) si es una cadena?

Es decir TextoBusca=TEGGAR458122445 (cadena), verdad

Pero las variables. Tabla y Campo son variables, pero variables especiales que van dentro de la consulta SQL ?

Es asi?

la verdad no entendi.

Si fuera mucha molestia que me expliques de nuevo..

Gracias

Pedro Jeri
En línea

el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #6 en: 20 Diciembre 2005, 21:03 pm »

Mira, cuando haces una consulta SQL, seria de esta manera
Código:
Select * From Tabla Where Campo='ABC'
si notas es una consulta a una tabla y mi filtro es una cadena (En SQL las cadenas van entre comillas sencillas), entonces cuando quieres hacer una consulta de ese tipo por medio de visual, armas la estructura de la consulta en una cadena, pero respetando esa estructura, entonces para hacer esa llamada desde visual quedaria algo asi
Código:
Variable="Select * From Tabla Where Campo='" & cadena & "'"
eso suponiendo que cadena trae el string con el que lo filtrarias(en este caso ABC), ahora por tener un manejo de cadena esa consulta, la puedes armar a como la necesites, ya sea condicionando si es una tabla u otro la que quieres usar
Código:
Variable ="Select * From " 
if X=0 Then
Variable = Variable & tabla1 & " Where Campo='" & cadena & "'"
Else
Variable = Variable & tabla2 & " Where Campo='" & cadena & "'"
End If
, en este ejemplo si ves le puedes poner una tabla u otra, dependiendo de como necesites hacer tu consulta, pero si nota en la parte de la variable Tabla1 y Tabla2(Son variables Visual Basic que contienen el nombre de las tablas) no llevan comillas porque si las llevara quedaria asi
Código:
Select * From 'Tabla' Where Campo='ABC'
y obviamente marcaria un error por el echo de tener comillas el nombre de la tabla y eso por eso que te marcaba error al principio. Haber si no te enrede mas  :rolleyes:  ;D.

Saludos
En línea

TheGhost(Z)

Desconectado Desconectado

Mensajes: 230



Ver Perfil
Re: Consultas Select a una Base de Datos en Acces
« Respuesta #7 en: 21 Diciembre 2005, 13:43 pm »

Ni yo se si entendi exactamente lo que queria. Pero me diste grandes ideas con eso de x=0 para permitir segun necesite las tablas..

Gracias por tu aporte, el_chente23.

Saludos
Pedro Jeri
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Enlaze de base de datos acces
Programación Visual Basic
raas5 4 3,095 Último mensaje 20 Noviembre 2011, 15:45 pm
por raul338
[DUDA] Base de datos en excel o Acces.
Programación Visual Basic
pungados 8 4,947 Último mensaje 27 Noviembre 2013, 23:23 pm
por seba123neo
Base de datos [VB2010 + Acces 2010] ayuda
.NET (C#, VB.NET, ASP)
LukaCrosszeria 0 1,891 Último mensaje 13 Mayo 2014, 18:51 pm
por LukaCrosszeria
C# [Conexion con base de Datos Acces y Comandos SQL]
.NET (C#, VB.NET, ASP)
Inspector12 1 2,323 Último mensaje 9 Mayo 2015, 13:47 pm
por fran800m
[Pregunta]: Consultas periódicas a una base de datos con PHP.
PHP
Leguim 6 6,612 Último mensaje 25 Mayo 2021, 04:36 am
por Leguim
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines