FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
como enviar nombre de tabla como parametro ?
hola foro tengo el siguente codigo en donde quiero enviar como parametros 2 valores 1. el nombre de la tabla , 2. el valor de un campo, este es mi codigo:
al ejecutar me marca error alguien me puede ayudar a como pasar esos 2 parametros ? saludos. |
#2
|
||||
|
||||
Hola
No lo se, pero me parece que sobran comillas: Saludos
__________________
Siempre Novato |
#3
|
||||
|
||||
¿De casualidad el error es "error message and line number not specified"?
|
#4
|
||||
|
||||
seria de Muuuuuucha ayuda saber cual es el error no?
__________________
Dulce Regalo que Satanas manda para mi..... |
#5
|
||||
|
||||
También depende la BD que estés usando, algunas no lo permiten.
|
#6
|
|||
|
|||
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 saludos !!!! |
#7
|
||||
|
||||
asi se llama tu base de datos? @viajes.DB?
__________________
Dulce Regalo que Satanas manda para mi..... |
#8
|
|||
|
|||
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'; |
#9
|
||||
|
||||
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. |
#10
|
||||
|
||||
Hola. Prueba a construir la sentencia SQL de esta forma.
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... |
#11
|
||||
|
||||
Hola sabueso1010.
Una aclaración, cuando dije: Cita:
Del modo que te sugiere defcon1_es si se puede, pero deja el código expuesto a la Inyección SQL. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#12
|
|||
|
|||
Hola, mira este código y espero te ayude.
solo que al formar tu consulta por código no le veo sentido pero esto funciona, correctamente. ojo. qtabla tiene que ser un variable tipo string |
#13
|
||||
|
||||
Cita:
¿modificando en memoria el contenido de la variable qTabla? Voy a buscar más referencias sobre inyecciones de código SQL y sobre todo herramientas para el análisis de este tipo de vulnerabilidad.
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... Última edición por defcon1_es fecha: 26-09-2011 a las 18:45:08. |
#14
|
|||
|
|||
solucionado
solucionado con el codigo de defcon1_es que es
y muy importante tanto como el codigo el consejo de ECFISA, hay que tomar en cuenta mucho que asi el codigo queda expuesto a inyeccion, muy cierto. por el momento sali del problema con el codigo pero si hay que considerar lo que nos dice ECFISA. gracias a todos los que coolaboraron con este hilo y espero le sirva en el futuro a alguien mas. saludos. |
#15
|
||||
|
||||
Cita:
Si el valor es asignado por código yo tampoco veo la posibilidad de hacerlo. Mi comentario fué por que no ví de que manera sabueso1010 asignaba el valor a la variable, por lo que el código SQL bién podría haber quedado expuesto. Ahora revisando con más detenimiento véo que no reparé bién en el mensaje #8 donde sabueso1010 dice: Cita:
Al igual que comentás en tu último mensaje, yo también tendría que profundizar más sobre si aún así existe la posibilidad, ya que es una vulnerabilidad potencial muy peligrosa. Lo que es claro que con el uso de parámetros no es viable la inyección. Un saludo.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 27-09-2011 a las 18:25:17. |
#16
|
||||
|
||||
Y tanto que es peligrosa:
"existen alrededor de 115 millones de vulnerabilidades de inyección SQL en circulación, basándose en los datos conseguidos mediante la monitorización de un conjunto de 30 aplicaciones web durante los pasados nueve meses." Noticia: http://www.csospain.es/Los-ataques-d...noticia-113621
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
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 |
|