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

Oracle otomatis menambahkan tanggal saat ini

Dengan asumsi bahwa

  1. Kolom Anda sebenarnya tidak bernama date karena itu adalah kata yang dicadangkan
  2. Kolom Anda sebenarnya didefinisikan sebagai date bukan sebagai number
  3. Anda ingin mengisi kolom saat menyisipkan baris baru

Anda dapat menentukan nilai default untuk kolom.

SQL> ed
Wrote file afiedt.buf

  1  create table products (
  2  id number not null,
  3  dt date   default sysdate not null
  4* )
SQL> /

Table created.

SQL>
SQL> insert into products( id ) values( 1 );

1 row created.

SQL> select * from products;

        ID DT
---------- ---------
         1 20-NOV-12

Jika Anda ingin mengubah dt kolom ketika Anda UPDATE baris, Anda akan membutuhkan pemicu

CREATE OR REPLACE TRIGGER trg_products
  BEFORE INSERT OR UPDATE ON products
  FOR EACH ROW
BEGIN
  :new.dt := sysdate;
END;

Pemicu akan menimpa nilai apa pun yang diteruskan sebagai bagian dari INSERT atau UPDATE pernyataan untuk dt kolom. Nilai default tidak akan.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WSJDBCConnection tidak membungkus objek bertipe Oracle jdbc Connection

  2. Bagaimana cara mengulang skema yang berbeda dan menjalankan beberapa sql pada masing-masing?

  3. Di mana Folder Kerja Bea Weblogic

  4. CASE WHEN dalam klausa WHERE gagal dengan kesalahan kata kunci yang hilang

  5. Oracle - dapatkan nama tabel dari teks sql