Saya memiliki batasan yang disebut users.SYS_C00381400
. Bagaimana cara menemukan batasan itu? Apakah ada cara untuk menanyakan semua kendala?
sql
oracle
constraints
David Oneill
sumber
sumber
Jawaban:
Seperti semua tampilan kamus data, ini tampilan USER_CONSTRAINTS jika Anda hanya ingin memeriksa skema Anda saat ini dan tampilan DBA_CONSTRAINTS untuk pengguna administrasi.
Konstruksi nama kendala menunjukkan sistem yang dihasilkan nama kendala. Misalnya, jika kita menentukan TIDAK NULL dalam deklarasi tabel. Atau memang kunci utama atau unik. Sebagai contoh:
'C'
untuk cek,'P'
untuk utama.Secara umum itu adalah ide yang baik untuk memberikan batasan eksplisit nama relasional. Misalnya, jika database membuat indeks untuk kunci utama (yang akan dilakukan jika kolom itu belum diindeks) itu akan menggunakan nama kendala atau nama indeks. Anda tidak ingin database penuh dengan indeks bernama like
SYS_C00935191
.Sejujurnya kebanyakan orang tidak repot menyebutkan batasan NOT NULL.
sumber
Untuk mendapatkan deskripsi yang lebih terperinci (tabel / kolom mana yang merujuk tabel / kolom mana) Anda bisa menjalankan kueri berikut:
Dari sini .
sumber
mungkin ini bisa membantu ..
sumber