Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-09-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 28
Caral Va por buen camino
Hola
No lo se, pero me parece que sobran comillas:
Código Delphi [-]
qtabla:=dbserver+'\@viajes.db';
with data.qapagos do begin
  close;
  SQL.Clear;
  SQL.ADD('select * from :xtabla  where referencia = :xreferencia ');
  parambyname('xtabla').asstring:=qtabla;
  parambyname('xreferencia').asinteger:=_referencia;
  open;
end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #2  
Antiguo 24-09-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.702
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
También depende la BD que estés usando, algunas no lo permiten.
Responder Con Cita
  #3  
Antiguo 24-09-2011
sabueso1010 sabueso1010 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 31
Poder: 0
sabueso1010 Va por buen camino
Talking datos extras

estoy utilizando el DBE con tablas paradox.

este es el error que me marca en tiempo de ejecucion


Código:
project cllmex raised exception class EDBEngineerror with message " invalid use of keyword.
token: ?
line number 1'. process stopped. use step or run to continue
que sera el error ?

saludos !!!!
Responder Con Cita
  #4  
Antiguo 24-09-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.015
Poder: 23
oscarac Va por buen camino
asi se llama tu base de datos? @viajes.DB?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #5  
Antiguo 24-09-2011
sabueso1010 sabueso1010 is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 31
Poder: 0
sabueso1010 Va por buen camino
Smile hola oscarac y demas amigos

la base de datos se llama cllmex y es un alias en DBE que esta direccionado
a c:\cllmex\datos

la tabla se llama @viajes.db

por eso al campo qtabla le asigno la cadena

qtabla:=dbserver+'\@viajes.db'
pues la variable dbserver trae arrastrando el valor 'C:\cllmex\datos'

entonces qtabla := 'c:\cllmex\datos' + '\@viajes.db';

resultado qtabla := 'c:\cllmex\datos\@viajes.db';
Responder Con Cita
  #6  
Antiguo 25-09-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola sabueso1010.

No podés pasar el nombre de la tabla a una consulta así en forma directa, vas a tener que crearte un procedimiento para la tarea.
¿ Es necesario que lo hagas de forma dinámica ? No me parece buena idea por que además de ser ineficiente, deja tu código expuesto a los ataques de inyección de sql.

De todas maneras no conozco Paradox para saber si lo soportaría y de ser así como hacerlo.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 25-09-2011 a las 17:52:26.
Responder Con Cita
  #7  
Antiguo 26-09-2011
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 23
defcon1_es Va por buen camino
Hola. Prueba a construir la sentencia SQL de esta forma.
Código Delphi [-]
qtabla:=dbserver+'\@viajes.db'; 
with data.qapagos do 
begin   
  close;   
  SQL.Clear;   
  SQL.ADD('select * from '+qtabla+' where referencia = :xreferencia ');   
  parambyname("xreferencia").asinteger:=_referencia;   
  open; 
end;

Nota: No la he probado, a lo mejor debes usar la función QuotedStr.

SQL.ADD('select * from '+QuotedStr(qtabla)+' where referencia = :xreferencia ');
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Enviar a VK_F1 como parametro mRoman OOP 4 01-05-2010 17:44:56
pasar el nombre de una forma como parametro Willo Varios 7 10-03-2009 23:17:05
pasar como parámetro nombre de un componente joanajj Varios 3 04-07-2007 22:25:49
Parámetro como nombre de campo Loviedo SQL 4 12-04-2007 19:49:35
Asignar como parámetro el nombre de la tabla PINO72 Firebird e Interbase 4 20-03-2005 20:00:11


La franja horaria es GMT +2. Ahora son las 14:56:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi