Comment déclarer et afficher une variable dans Oracle
Je voudrais déclarer et afficher une variable dans Oracle.
Dans T-SQL, je ferais quelque chose comme ceci
DECLARE @A VARCHAR(10) --Declares @A
SELECT @A = '12' --Assigns @A
SELECT @A --Displays @A
Comment puis-je faire cela dans Oracle.
4 réponses
Si vous parlez de PL/SQL, vous devriez le mettre dans un bloc anonyme.
DECLARE
v_text VARCHAR2(10); -- declare
BEGIN
v_text := 'Hello'; --assign
dbms_output.Put_line(v_text); --display
END;
Si vous utilisez sqlplus vous pouvez définir une variable donc:
define <varname>=<varvalue>
Et vous pouvez afficher la valeur par:
define <varname>
Et ensuite l'utiliser dans une requête comme, par exemple:
select *
from tab1
where col1 = '&varname';
Si vous utilisez pl / sql, le code suivant devrait fonctionner:
Définissez serveroutput sur -- pour récupérer et afficher un tampon
Déclarer
v_text VARCHAR2(10); -- declare
Début
v_text := 'Hello'; --assign
dbms_output.Put_line(v_text); --display
Fin;
/ -- ceci doit être utilisé pour exécuter le script pl / sql
Avez-vous récemment changé de MySQL et aspirez maintenant aux équivalents logiques de ses commandes plus simples dans Oracle? Parce que c'est le cas pour moi et j'ai eu la même question. Ce code vous donnera une impression rapide et sale qui, je pense, est ce que vous cherchez:
Variable n number
begin
:n := 1;
end;
print n
La section du milieu est un bit PL/SQL qui lie la variable. La sortie de print n est sous forme de colonne, et ne donnera pas seulement la valeur de n, j'en ai peur. Quand je l'ai couru dans Toad 11 Il est revenu comme ça
n
---------
1
J'espère que cela aide