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

Oracle SQL Periksa batasan antara 2 tabel

Anda harus membuat pemicu.

Coba ini

CREATE OR REPLACE TRIGGER   my_trg
              BEFORE INSERT OR UPDATE ON Relationships
                 FOR EACH ROW
  declare
     function i_Age(id int) return int is
     li_res int;
     begin
       select p.Age
        into li_res 
        from Persons p 
        where p.ID= id 
         and rownum=1;
        return li_res;
    exception when no_data_found then
    return NULL; --or Throw Exception depend on your logic if some datas not found
     end;

     BEGIN
      IF INSERTING OR UPDATING THEN
          IF :NEW.Relation == 'child' and i_Age(:NEW.Person_ID) < i_Age(:NEW.Relative_ID)  then 
           NULL; --Throw Exception or your logic
          END IF;
      END IF;
   END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle Insert Select dengan pesanan berdasarkan

  2. Bagaimana cara menambahkan 2 tanggal di Oracle sp?

  3. Permintaan Hirarki Oracle

  4. ORA-00936 Saat menggunakan fungsi tanggal dalam pernyataan pilih oracle

  5. ubah gumpalan menjadi gumpalan