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

Menambahkan kunci asing ke tabel yang ada

ALTER pernyataan untuk beberapa FOREIGN KEYS tidak bekerja.

Setiap CONSTRAINT harus ditambahkan satu per satu :

CREATE TABLE Gust ( Gust_ID INT PRIMARY KEY, First_Name VARCHAR(50), Last_Name VARCHAR(50), Email VARCHAR(20), phone_number INT, Address VARCHAR(30) );
CREATE TABLE Reservation ( Reservation_ID INT PRIMARY KEY, Start_Date Date, End_Date Date );
CREATE TABLE RoomType ( RoomType_ID INT NOT NULL PRIMARY KEY, Class VARCHAR(10), ExtraPrice INT );

CREATE TABLE Room(Room_ID int PRIMARY KEY, Price INT, Reservation_ID int,Gust_ID int );

ALTER TABLE Room ADD FOREIGN KEY (Room_ID) REFERENCES RoomType(RoomType_ID);

ALTER TABLE Room ADD FOREIGN KEY (Reservation_ID) REFERENCES Reservation(Reservation_ID); 
-- the table Room is assumed to have a column Reservation_ID 

ALTER TABLE Room ADD FOREIGN KEY (Gust_ID) REFERENCES Gust(Gust_ID);
    -- the table Room is assumed to have a column Gust_ID

Jika nama kendala yang dihasilkan Sistem tidak diinginkan, maka gunakan ini;

ALTER TABLE Room ADD CONSTRAINT fk_RoomType_ID FOREIGN KEY (Room_ID) 
                                               REFERENCES RoomType(RoomType_ID);

ALTER TABLE Room ADD CONSTRAINT fk_Reservation_ID FOREIGN KEY (Reservation_ID) 
                                                REFERENCES Reservation(Reservation_ID); 

ALTER TABLE Room ADD CONSTRAINT fk_Gust_ID FOREIGN KEY (Gust_ID) 
                                           REFERENCES Gust(Gust_ID);

mungkin lebih disukai.

P.S. :

  • Jangan Gunakan NOT NULL dengan PRIMARY KEY , PRIMARY KEY sudah termasuk NOT NULL .
  • Panjangnya tidak dapat ditentukan untuk INT kolom.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara menggunakan Tabel Oracle PLSQL (Array asosiatif atau tabel indeks menurut)

  2. Program PL/SQL untuk Menghapus Catatan Dari Tabel

  3. c3p0 hang di getConnection ketika ada kegagalan jaringan

  4. N+1 Redundansi dan Konsolidasi Server

  5. Hibernasi kueri asli - kolom char(3)