2012-05-09 49 views
5

utilizo el software SQuirrel SQL Client versión 3.2.1 y quiero declarar variables comocómo definir/declarar y utilizar variables en el cliente de SQL ardilla 3

define dateFrom = '13/04/2012'; 
define dateTo = '13/04/2012' 

Y para usarlo en mi consulta SQL como que

SELECT * FROM table_name WHERE TRUNC(column_name) BETWEEN to_date('&dateFrom','YYYY-MM-DD') AND to_date('&dateTo','YYYY-MM-DD'); 

Pero no funciona. ¿Cómo puedo definir y usar la variable en SQuirreL?

+0

SQuirreL es un cliente, no el RDBMS real. ¿A qué RDBMS llamas? Es decir, la variable se declarará en el SQL que envíe desde SQuirreL al RDBMS – gbn

+0

Llamaré a una base de datos Oracle. – BasicCoder

+1

¿Qué mensaje de error está recibiendo? La máscara de formato dice 'YYYY-MM-DD', mientras que sus valores constantes tienen el formato 'DD/MM/YYYY'. ¿Intentó ese formato en la consulta? –

Respuesta

-1

Quizás no sea exactamente lo que quiere, pero ¿ha intentado cargar el plugin 'sqlparam'? Ofrece una substición variable, p.

SELECT * FROM table_name WHERE TRUNC(column_name) BETWEEN :dateFrom and :dataTo 

Al ejecutar esta consulta, Squirrel solicitará valores.

+0

Error: ORA-01008: no todas las variables vinculadas – BasicCoder

-1

"ardilla (al igual que de Oracle SQL-Plus) tiene que saber cuando haya terminado su procedimiento anónimo. Que por lo general se lleva a cabo mediante la adición de una línea al final de su procedimiento con una barra sinlge (/) carácter. Por ejemplo:"

DECLARE 
v1 NUMBER(3); 

BEGIN 
    v1 := 3; 
    select 1 from dual 
END; 
/

Por favor, mira aquí: http://sourceforge.net/p/squirrel-sql/mailman/message/28580491/

Ahora cuando se selecciona SQL incluyendo la barra va a ser capaz de ejecutar con Ctrl + Enter.

Cuestiones relacionadas