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

Kunci asing Oracle

Saya pikir Anda menginginkan yang berikut ini. Harap dicatat bahwa Anda mungkin harus menggunakan VARCHAR2 daripada VARCHAR di Oracle. Mereka bekerja sama saat ini tetapi ada kemungkinan Oracle akan mengubah fungsionalitas untuk VARCHAR untuk membawanya sejalan dengan standar ANSI (di mana string kosong '' dibedakan dari NULL s ... tapi saya ngelantur):

CREATE TABLE client
( id NUMBER(10) NOT NULL PRIMARY KEY
, name VARCHAR2(30) NOT NULL
, surname VARCHAR2(30) NOT NULL
, phone NUMBER(11) NOT NULL
, email VARCHAR2(70) );

CREATE TABLE boss
( b_surname VARCHAR2(30) NOT NULL PRIMARY KEY
, b_Name VARCHAR2(30) NOT NULL );

Dan kemudian:

ALTER TABLE client ADD CONSTRAINT boss_client_fk FOREIGN KEY (surname) REFERENCES boss (b_surname);

Agak aneh kolomnya diberi nama surname di CLIENT dan b_surname di BOSS .

Jika Anda ingin b_surname di BOSS untuk merujuk ke surname di CLIENT -- maka Anda perlu membuat CLIENT.surname kunci utama, atau setidaknya unik.




  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 dbms_job.submit:Mencampur Sinkron dan Asinkron

  2. SQL*Plus CSV Ekspor lebih lambat dari SQL Developer

  3. listagg data ke format yang bisa digunakan?

  4. Java - arti sebenarnya http.maxConnections

  5. Di PL/SQL, ambil tabel sebagai parameter, filter dan kembalikan