PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cegah drop table jika kondisi tidak terpenuhi

Saya akan menebak bahwa Anda mencoba bertanya:

Jika demikian, satu-satunya opsi bawaan Anda adalah menggunakan izin. Lihat GRANT dan REVOKE di manual PostgreSQL.

Jika Anda menginginkan sesuatu yang lebih kompleks, Anda dapat menulis ProcessUtility_hook , tetapi ini mengharuskan Anda menulis ekstensi dalam C yang dikompilasi dan dimuat ke server.

Menulis ProcessUtility_hook sebenarnya tidak terlalu sulit, tetapi ada perbedaan antara definisi PostgreSQL 9.2 dan 9.3 yang berarti Anda memerlukan ekstensi terpisah. Berikut contoh dasarnya:https://github.com/ringerc/scrapcode/ tree/master/postgresql/example_processutility_hook dan inilah pengait ProcessUtility yang benar-benar melakukan sesuatu yang berguna:https://github.com/ringerc/postgres/blob/bdr-reject-unsafe-commands/contrib/bdr/bdr_commandfilter.c

Jika Anda tidak memiliki pengalaman pemrograman C dan beberapa waktu, ProcessUtility_hook bukan untukmu.

Lihat juga:Bagaimana cara mencegah agar tabel tidak dijatuhkan?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa perilaku yang diharapkan untuk beberapa fungsi pengembalian set dalam klausa SELECT?

  2. Cara Mencatat Kueri di PostgreSQL

  3. Menghitung jumlah bidang berdasarkan kolom tabel gabungan lainnya

  4. Cara menyimpan objek JSON ke PostgreSQL menggunakan tipe data JSONB di dalam tabel dan driver JDBC PostgreSQL

  5. Menambahkan tabel pengguna/akun ke Postgres di Django View