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

Pemicu:bagaimana saya bisa menginisialisasi nilai pada tabel dengan nilai pada yang lain?

Karena itu bukan cara Anda mengubah nilai pada baris yang disisipkan - Anda perlu memodifikasinya menggunakan :NEW sintaks (dokumentasi ); dan Anda belum menunjukkan cara mengambil nilai yang relevan dari MODELO tabel.

Anda perlu melakukan sesuatu seperti:

CREATE OR REPLACE TRIGGER inicializar_plazas_disponibles
BEFORE INSERT OR UPDATE ON vuelo
FOR EACH ROW
BEGIN
    SELECT capacidad
    INTO :NEW.plazas_disponibles
    FROM modelo
    WHERE ... some condition, presumably another :NEW column ...
END;

(Meskipun saya tidak sepenuhnya yakin apakah Anda dapat memilih langsung ke :NEW value - coba itu, tetapi jika tidak, Anda harus mendeklarasikan variabel dengan tipe yang sama, pilih ke dalamnya, lalu tetapkan itu ke :NEW ).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Addnode resolv.conf Kegagalan

  2. Apa itu pro*c?

  3. Cara memanggil fungsi Oracle dengan Kursor Ref sebagai parameter Keluar dari Visual Basic

  4. Versi SQL Server dari Oracle ADD_MONTHS()

  5. Mengirim array nilai ke prosedur Oracle untuk digunakan dalam klausa WHERE IN