Oracle - Definir variables

 
Vista:

Definir variables

Publicado por Hernan* (62 intervenciones) el 12/09/2003 18:11:55
Como hago para definir una variable y asignarle un valor en Oracle?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Definir variables

Publicado por Byron (300 intervenciones) el 12/09/2003 20:51:50
declare
contador number(3) := 0;
begin

No se si a esto te refieres, espero te sirva.

Saludos DTB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Definir variables

Publicado por Hernan* (62 intervenciones) el 12/09/2003 22:49:22
Esta mal hacer:

Declare @var nchar;
Set @var="Hola Mundo!"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Sugerencia...

Publicado por Gilberto (119 intervenciones) el 13/09/2003 17:49:16
Que me corrigan si estoy equivocado, pero yo realmente no he visto que se asigne una variable como crees. Realmente solo lo he hecho como te lo explicó Byron, si no quieres asignarle un valor al principio lo puedes hacer en cualquier parte del procedimiento o función. Ejem.
DECLARE
VARIABLE VARCHAR2(100);

BEGIN
VARIABLE := 'HOLA';
END;

El SET si no estoy mal es para modificar y/o cambiar propiedades de algo. El set que estas proponiendo si no me equivoco es el que se hace por ejemplo en un update:
Update tabla
SET campo = 10;
Lo otro que veo es que le dices " = " lo que me hace pensar que estas comparando no asignando " := ". Solo como sugerencia te hago ver estos detallitos. Espero te sirva.
gilh
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Definir variables

Publicado por Byron (300 intervenciones) el 15/09/2003 16:53:14
Creo que lo que intentas hacer es una variable dinamica (?) entonces en vez de arroba @ debiste poner & pero aun así eso solo reemplazaría el nombre de la variable lo cual no tendria sentido, es mas si vuelves a poner &var te volverá a pedir el nombre de la variable por segunda vez, para que solo pida una vez puedes uso de accept o bien &&, aunque como te digo no tiene sentido, en todo caso puedes poner & para el reemplazo de valores a variables.

declare
cadena varchar2(100);
begin
cadena := '&mensaje';
dbms_output.put_line(cadena);
end;

El seteo de variable con set es unicamente para variables de entorno propias de sqlplus tales como la cantidad de lineas a mostrar (linesize) la cantidad de registros para poner cabeceras (pagesize) cantidad de buffer, mostrar salidas con dbms_output (set serveroutput on), etc.

Como te dijo Gilberto te olvidaste de poner los : en la asignacion de variables.

Saludos DTB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar