Dalam reka bentuk pangkalan data, kunci asing boleh digunakan untuk mencapai perkaitan dan integriti rujukan antara jadual data untuk memastikan ketekalan dan ketepatan data. Kunci asing bermaksud bahawa nilai medan atau sekumpulan nilai medan dalam satu jadual mestilah rujukan kepada nilai medan atau sekumpulan nilai medan dalam jadual lain. Apabila menanyakan kunci asing dalam pangkalan data hubungan, anda boleh menggunakan pernyataan SQL dan arahan Oracle khusus untuk mendapatkan maklumat yang berkaitan untuk memahami dan mengurus pangkalan data dengan lebih baik. Di bawah ini kami akan memperkenalkan secara terperinci cara untuk menanyakan kunci asing dalam pangkalan data Oracle.
1. Pertanyaan SQL kekunci asing
Untuk menanyakan maklumat kunci asing dalam pangkalan data Oracle, anda boleh menggunakan pernyataan SQL. Jadual sistem berikut digunakan terutamanya:
1 ALL_CONSTRAINTS
ALL_CONSTRAINTS ialah jadual sistem yang mengandungi semua kekangan dalam pangkalan data Oracle. Gunakan jadual ini untuk menanyakan maklumat kunci asing bagi semua jadual dalam pangkalan data.
Contoh pernyataan:
SELECT * FROM ALL_CONSTRAINTS WHERE CONSTRAINT_TYPE='R' AND OWNER='SCOTT' ORDER BY TABLE_NAME, CONSTRAINT_NAME;
Antaranya, OWNER='SCOTT' bermaksud menanyakan kunci asing pengguna SCOTT, dan CONSTRAINT_TYPE='R' bermaksud menanyakan kekangan kunci asing. Hasil pertanyaan diisih mengikut TABLE_NAME dan CONSTRAINT_NAME.
2. ALL_CONS_COLUMNS
ALL_CONS_COLUMNS ialah jadual sistem yang mengandungi lajur kekangan dalam pangkalan data Oracle. Gunakan jadual ini untuk menanyakan maklumat lajur bagi setiap kunci asing dalam jadual.
Contoh pernyataan:
SELECT * FROM ALL_CONS_COLUMNS WHERE OWNER='SCOTT' AND TABLE_NAME = 'DEPT' ORDER BY CONSTRAINT_NAME, POSITION;
Antaranya, OWNER='SCOTT' bermaksud menanyakan jadual pengguna SCOTT, dan TABLE_NAME = 'DEPT' bermaksud menanyakan maklumat lajur kunci asing bagi jadual DEPT. Hasil pertanyaan diisih mengikut CONSTRAINT_NAME dan POSITION.
Selain itu, ALL_TAB_COLUMNS boleh menanyakan maklumat terperinci seperti nama lajur dan jenis data jadual tertentu.
Contoh pernyataan:
SELECT COLUMN_NAME, DATA_TYPE FROM ALL_TAB_COLUMNS WHERE OWNER='SCOTT' AND TABLE_NAME='DEPT';
Antaranya, OWNER='SCOTT' bermaksud menanyakan jadual pengguna SCOTT, dan TABLE_NAME='DEPT' bermaksud menanyakan maklumat lajur jadual DEPT. Hasil pertanyaan termasuk nama lajur dan jenis data.
2. Perintah Oracle untuk menanyakan kunci asing
Arahan Oracle juga boleh digunakan untuk menanyakan maklumat kunci asing. Tiga arahan berikut digunakan terutamanya:
1. DESCRIBE
Perintah DESCRIBE digunakan untuk menanyakan maklumat struktur jadual dalam pangkalan data Oracle, termasuk nama jadual, nama lajur, jenis data , panjang, nilai nol/ Nilai bukan nol, dsb.
Arahan contoh:
DESCRIBE DEPT;
Arahan ini digunakan untuk menanyakan maklumat struktur jadual DEPT.
2. ALTER TABLE
Arahan ALTER TABLE digunakan untuk menukar maklumat struktur jadual dalam pangkalan data Oracle, termasuk menambah, mengubah suai, memadam jadual, lajur, kekangan dan operasi lain.
Arahan contoh:
ALTER TABLE EMP ADD CONSTRAINT FK_EMP_DEPT FOREIGN KEY(DEPTNO) REFERENCES DEPT(DEPTNO);
Arahan ini digunakan untuk menambah kekangan kunci asing bernama FK_EMP_DEPT pada jadual EMP dan mengaitkan medan DEPTNO pada jadual DEPT.
3. SHOW CONSTRAINT
Arahan SHOW CONSTRAINTS digunakan untuk memaparkan semua maklumat kekangan jadual dalam pangkalan data Oracle, termasuk kunci utama, kunci asing, semakan, unik, dsb.
Arahan contoh:
SHOW CONSTRAINTS EMP;
Arahan ini digunakan untuk menanyakan semua maklumat kekangan dalam jadual EMP, termasuk kunci utama dan kunci asing.
Ringkasan
Di atas ialah cara menggunakan pernyataan SQL dan arahan Oracle untuk menanyakan maklumat kunci asing dalam pangkalan data Oracle. Menanyakan kekangan kunci asing boleh membantu kami memahami dengan lebih baik perhubungan antara jadual pangkalan data, dan juga boleh digunakan untuk mengesan dan membaiki ralat perkaitan antara jadual. Akhir sekali, jika anda ingin mengetahui lebih lanjut tentang penggunaan pangkalan data Oracle dan prinsip reka bentuk dan pengurusan pangkalan data, sila teruskan mempelajari kursus berkaitan.
Atas ialah kandungan terperinci kunci asing pertanyaan oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!