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

Mencegah Drop Table Pada Skema Target Di Oracle Streams

Contoh diberikan di bawah ini untuk menghentikan eksekusi perintah DDL tertentu di Oracle Streams. Dalam contoh ini Anda akan belajar bagaimana mengabaikan perintah Drop Table pada skema target di Oracle Streams.1. Hubungkan ke database target dengan kredensial admin aliran.conn STRMADMIN/STREAM@TARGET

2. Buat prosedur untuk menangani pernyataan tabel drop.

buat atau ganti prosedur
IGNORE_DROP_TABLE (di_any IN SYS.ANYDATA
)

adalah
lcr SYS.LCR$_DDL_RECORD;
rc PLS_INTEGER;

mulai
rc :=in_any.GETOBJECT(lcr);

if lcr.GET_COMMAND_TYPE !='DROP TABLE'
maka
lcr.execute();
end if;
END;
/

3. Ubah proses Terapkan.

mulai
dbms_apply_adm.alter_apply(
apply_name => 'STREAMS_APPLY',
ddl_handler => 'IGNORE_DROP_TABLE');
end;
/

Sekarang semua pernyataan DDL kecuali "Drop Table" akan dieksekusi di database target.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menghubungkan SQL Server ke Oracle

  2. ORA-06502:PL/SQL:kesalahan numerik atau nilai:buffer string karakter terlalu kecil

  3. SQL Terus mendapatkan kesalahan dengan ON UPDATE CASCADE

  4. Bagaimana cara mengubah nilai yang dipisahkan koma menjadi baris di Oracle?

  5. Perlu mengatur nama karyawan sesuai kolom kota mereka dengan bijak