Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Evaluasi variabel boolean PL/SQL di Oracle Forms

Kita dapat menguji ini di SQLPlus untuk melihat apa yang terjadi di masing-masing dari 3 situasi (benar, salah, nol):

set serveroutput on

declare
  true_value boolean := true;
  false_value boolean := false;
  null_value boolean;
begin

    if not true_value then  --Should not pass
      dbms_output.put_line('True Value');
    end if;

    if not false_value then --Should pass
      dbms_output.put_line('False Value');
    end if;

    if null_value is null then --Just to make sure it is null
      dbms_output.put_line('Null Value is Null');
    end if;

    if not null_value then --Should not pass
      dbms_output.put_line('Null Value');
    end if;
end;
/

Yang menghasilkan:

SQL> set serveroutput on
SQL>
SQL> declare
  2    true_value boolean := true;
  3    false_value boolean := false;
  4    null_value boolean;
  5  begin
  6
  7      if not true_value then  --Should not pass
  8        dbms_output.put_line('True Value');
  9      end if;
 10
 11      if not false_value then --Should pass
 12        dbms_output.put_line('False Value');
 13      end if;
 14
 15      if null_value is null then --Just to make sure it is null
 16        dbms_output.put_line('Null Value is Null');
 17      end if;
 18
 19      if not null_value then --Should not pass
 20        dbms_output.put_line('Null Value');
 21      end if;
 22  end;
 23  /
False Value
Null Value is Null

PL/SQL procedure successfully completed.

SQL>

Jadi satu-satunya jalur kode yang mungkin yang dapat menghasilkan keluaran yang Anda harapkan adalah jika nilai yang masuk ke kondisi salah. Jika bukan itu yang Anda lihat atau harapkan maka sesuatu yang lain pasti terjadi dalam prosedur Anda atau sebagai efek samping.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Membuat Laporan PDF Menggunakan PL/SQL

  2. Oracle- buat hasil sementara untuk digunakan dalam kueri

  3. Apakah Oracle memiliki konsep indeks yang difilter?

  4. Kueri SQL FIFO dengan grup menurut

  5. ini kesalahan ORA-12154:TNS:tidak dapat menyelesaikan pengidentifikasi koneksi yang ditentukan?