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

Consulta SQL con Campos Variables

Estas en el tema de Consulta SQL con Campos Variables en el foro de Bases de Datos General en Foros del Web. Que tal compañeros, planteo mi problema, tengo un formulario donde consulto bases de datos (hechas en Access 2003), utilizo ADOX para cargar las tablas de ...
  #1 (permalink)  
Antiguo 27/09/2011, 20:55
 
Fecha de Ingreso: octubre-2008
Mensajes: 44
Antigüedad: 15 años, 6 meses
Puntos: 1
Consulta SQL con Campos Variables

Que tal compañeros, planteo mi problema, tengo un formulario donde consulto bases de datos (hechas en Access 2003), utilizo ADOX para cargar las tablas de dicha base de datos en un TreeView, luego con un DoubleClik en el TreeView me carga los campos de dicha tabla en un CheckedListBox, luego selecciono los campos que quiero que me muestre en una grilla, hasta ahi todo bien, esto ultimo lo logro con código Visual Basic, mi pregunta es, existe alguna manera de crear una consulta SQL como "Select " & xCampos & " From " & MiTabla donde xCampos sean los campos que previamente seleccione en el CheckedListBox?, es decir, las consultas con campos previamente conocidos no tengo problema con eso ("Select cmp1, cmp2, cmp3, ... From MiTabla"), sin embargo en este caso los campos no son siempre los mismos, son al libre albeldrio, espero haberme explicado pues no he encontrado nada en la web que me saque de la duda, y es que con condigo SQL serian mas rápidas mis consultas. De antemano muchas gracias.
  #2 (permalink)  
Antiguo 28/09/2011, 08:52
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta SQL con Campos Variables

Query dinamico??? no se si se pueda hacer eso en access pero en sql server puedes ejecutar una variable y en la variable puedes poner tu sentencia.

algo asi

Código SQL:
Ver original
  1. DECLARE @query VARCHAR(200)
  2. SET @query='select * from mi tabla'
  3. EXEC Sp_sqlExec @query

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 28/09/2011, 10:53
 
Fecha de Ingreso: octubre-2008
Mensajes: 44
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Consulta SQL con Campos Variables

te refieres a una consulta algo asi?:
Código SQL:
Ver original
  1. CatCn.OPEN("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Ruta & _
  2. ";Persist Security Info=False;Jet OLEDB:DataBase Password=hu9rethu")
  3. Consulta = "Select NumCta, Indice, Descripcion From " & Tabla & _
  4. " Where NumCta = '" & NumCta & "'"
  5. CatRd.OPEN(Consulta, CatCn, ADODB.CursorTypeEnum.adOpenStatic, _
  6. ADODB.LockTypeEnum.adLockReadOnly)

Claro!, si se pueden hacer consultas asi, mi duda es como hago una consulta donde los campos no siempre son los mismos, si te das cuenta en el ejemplo los campos los puedo poner cuando son fijos y siempre voy a necesitar de esos campos en particular, pero no es así, en la siguiente necesito los datos de los campos seleccionados: "IndiceN1", "IndiceN2", "NumCta", "Concepto", luego quiero visualizar "IndiceN3", "IndiceBG", "NomCta", "Descripción", luego podria necesitar visualizar los campos: "Descripcion", "IndiceN4", "Concepto", "IndiceN2", y asi sucesivamente, un sin fin de combinaciones, pues los campos los selecciono de una lista con checkbox, luego los muestro en una grilla (vsFlexAray), espero haberme explicado compañero Libras, no se, se me ocurre un Array o Matriz, luego meter los campos (nombres) en dicho array o matriz, Array=Campo1, Campo2, Campo3, etc., luego "Select " & Array & " From MiTabla", algo asi, sin embargo no me funciona, y te agradezco hayas contestado.
  #4 (permalink)  
Antiguo 28/09/2011, 14:29
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta SQL con Campos Variables

Mi conocimiento en Access es muy limitado en sql para hacer lo que pides se hace un procedimiento almacenado que recibe los nombres de los campos a mostrar, igual y puedes hacer lo mismo en Access algo asi:

x=1
query="select
mientras haya elementos en array
comienza
campos=array[x];
campos=campos+campos
x=x+1
fin mientras
query=query + campos + "from tabla"


Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 28/09/2011, 21:39
 
Fecha de Ingreso: octubre-2008
Mensajes: 44
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Consulta SQL con Campos Variables

Seria algo como un bucle?
  #6 (permalink)  
Antiguo 29/09/2011, 07:39
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta SQL con Campos Variables

Pues..........si, en el pseudocodigo que te pase esta lo que necesitas........
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 05/10/2011, 08:45
 
Fecha de Ingreso: octubre-2008
Mensajes: 44
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Consulta SQL con Campos Variables

Gracias compañero, la verdad es que no le entiendo a tu secuencia, sin embargo me diste la pauta de intentar con array's. Saludos

Etiquetas: access, campos, sql, tabla, variables
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 21:23.