FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Declarar variable y select en la misma llamada a Query.Open
Buneas gente.
A ver si alguno me tira un hueso con esto. Tengo una consulta con un select y varios union. La cosa es que al principio de la consulta tengo que declarar un par de variables.
Cuando ejecuto la query con un componente TQuery (contra SQL Server 2000) me manda un error de "Error creating cursor handle", que hasta donde sé viene por usar Open, en vez de Exec. La cosa es que sin variables funciona, pero con variables... No puedo usar Exec porque quiero el resultado del select, y no uedo usar Open porque declaro las variables... Por cierto, las variables sí o sí hay que daclararlas antes del select porque son usadas por éste. Sé que esto tiene que ser muy fácil de solucionar... Pero ni idea. Gracias de antemano. |
#2
|
|||
|
|||
Tendrías que hacerlo desde un Stored Procedure, y ejecutar con el SELECT el stored procedure.
|
#3
|
||||
|
||||
No estoy muy segura poorque no tengo SQL Server, pero en Oracle eso no funcionaría sin punto y coma entre ambas sentencias:
|
#4
|
||||
|
||||
Gracias gente.
En realidad lo que descubrí es que uno lo puede hacer pero a la hora de agregar el texto al Qry hay que hacerlo con Qry.SQL.Add() y no con Qry.SQL.Text:=''. Valla uno a saber porqué... Gracias de todos modos. |
#5
|
||||
|
||||
Hola Lord Delfos, lo que tu andas buscando -si no me equivoco- ya se ha inventado. No se conocen como variables -auque lo son- sino como parámentros.
Por ejemplo, imaginate que tengo un camponente Query que se llame miQuery, luego lo manipulo en el código de esta manera: En el código anterior he creado un nuevo parámetro llamado PARAM_CODIGOMAYOR y con el cual puedo asignar su valor o manipularlo, con un código similar a este. De forma, la consulta me va a devolver todos los registros en que RECORDID sea menor que 100. Como te había dicho anteriormente, al declarar una consulta SQL con parámetros, estos se crean automanticamente, luego es que los podrás manipular, de esta forma un ejemplar código quedaría así:
Saludos. |
#6
|
||||
|
||||
Gracias, D&W.
En realidad el problema pasa porque el cliente quiere específicamente que usemos la sentencia que él manda, la cual es una cosa así:
Y bueno... El cliente siempre tiene la razón... Qué sé yo. Lo del reemplazo de parámetros sería lo más lógico, pero por algún motivo a ellos no les gusta. Gracias de nuevo. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
declarar variable en QReport | mcnudi | C++ Builder | 0 | 08-11-2006 12:25:10 |
Declarar variable pública.. | JODELSA | Varios | 8 | 04-05-2006 14:45:48 |
Llamada a una funcion que incluye en el nombre una variable | papulo | PHP | 11 | 28-12-2005 17:38:19 |
Declarar variable global en delphi | el_barto | Conexión con bases de datos | 4 | 11-07-2005 16:59:38 |
Un select y update en una misma instruccion | dmagui | SQL | 2 | 06-07-2005 18:17:49 |
|