Wenn ich dieses Skript ausführen es Fehler in dieser Aussage no1:=(no1+no2)-(no2:=no1);
Wie wird der Variablen im Ausdruck für einen PL/SQL-Block ein Wert zugewiesen?
declare
no1 number(3):=31;
no2 number(3):=34;
begin
dbms_output.put_line('Before swap');
dbms_output.put_line('No1 : '||no1||' No2 : '||no2);
-- no1:=(no1+no2)-(no2:=no1); generate error
dbms_output.put_line('After swap');
dbms_output.put_line('No1 : '||no1||' No2 : '||no2);
end;
Sie können keinen Wert in der Mitte einer anderen Zuweisung zuweisen. Sie haben 2 ': =' in dieser Zeile. Entfernen Sie einen von ihnen ... – Ben
Warum Oracle bietet solche Möglichkeit für die Zuordnung keine Idee? –
Weil es wahrscheinlich nicht nötig ist. Sie können eine Zuweisung in der obigen Zeile ausführen und diesen Wert dann in der neuen Zeile verwenden. – Ben