Database relasional: kunci dan hubungan
Diperkenalkan| English | Makna |
|---|---|
| primary key/ˈpraɪməri kiː/ | kunci utama |
| foreign key/ˈfɒrən kiː/ | kunci asing |
Apa yang akan menjelaskan pengamatan ini?
- Menyalin alamat pengguna dalam setiap pesanan dapat menghasilkan catatan yang bertentangan ketika alamat berubah.
- Mulailah dengan prediksi. Nyatakan besaran atau fitur apa yang akan Anda bandingkan, lalu tentukan bukti apa yang dapat membedakan dua penjelasan.
Bangun modelnya
- Tabel relasional berisi baris dan atribut. Kunci utama mengidentifikasi baris; kunci asing menghubungkan ke kunci rujukan di tabel lain. Normalisasi dapat mengurangi duplikasi yang dapat dihindari dan anomali pembaruan sambil mempertahankan hubungan yang bermakna.
- primary key: himpunan atribut yang secara unik mengidentifikasi baris tabel; foreign key: himpunan atribut yang merujuk pada kunci di tabel lain.
Desain manakah yang membantu menghindari pembaruan alamat pelanggan yang ganda?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Menyimpan alamat sekali dalam tabel pelanggan dan menghubungkan pesanan melalui kunci asing berarti setiap fakta diperbarui di satu tempat. Mengulangi alamat di setiap pesanan mengundang salinan yang tidak konsisten, dan nama tidak dijamin unik.
Pasangkan setiap istilah teknis dengan maknanya yang tepat.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Gunakan definisi untuk membedakan besaran dan proses yang terkait.
Pilih bukti yang boleh mengujinya
- Gabungan (join) menggabungkan baris berdasarkan kondisi tertentu. Jumlah hasil bergantung pada kardinalitas hubungan dan filter. Batasan kunci asing menerapkan aturan hubungan; itu tidak secara otomatis mengenkripsi data pribadi.
- Rancang dataset sintetis pengguna-pesanan kecil tanpa informasi pribadi nyata. Deklarasikan kunci, uji penyisipan duplikat dan rujukan hilang, lalu periksa hasil query terhadap tabel harapan yang dihitung manual.
Dua kebiasaan manakah yang membuat penyelidikan atau model dalam kasus ini lebih dapat dipertanggungjawabkan?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Menyatakan kondisi dan asumsi memungkinkan orang lain mengulangi pekerjaan persis seperti itu, dan mencatat bukti pendukung memungkinkan mereka memeriksa kesimpulan. Menyembunyikan hasil yang bertentangan menghilangkan bukti yang dapat menentang kesimpulan yang salah, dan satu pengukuran tidak pernah dapat menetapkan klaim yang lebih luas.
Bekerja daripada kuantiti yang diketahui
- Nyatakan nilai yang diketahui dan unitnya. Pilih hubungan kerana asumsinya sesuai dengan kes ini, kemudian susun semula sebelum menggantikan.
- Diketahui: empat pelanggan masing-masing memiliki 2, 0, 3 dan 1 pesanan. Inner join pelanggan ke pesanan mengembalikan 2+0+3+1 = 6 baris. Left join juga mempertahankan pelanggan tanpa pesanan sebagai satu baris cocok null, memberikan 7 di sini.
Tiga pelanggan memiliki 1, 3 dan 2 pesanan. Berapa banyak baris yang dikembalikan oleh gabungan dalam pelanggan-pesanan? Gunakan urutan yang sama: kuantitas diketahui → model → relasi → substitusi → unit dan interpretasi.
Tiga pelanggan memiliki 1, 3, dan 2 pesanan. Berapa banyak baris yang dikembalikan oleh inner join pelanggan-pesanan?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Hasilnya adalah 6 baris. Diketahui: tiga pelanggan memiliki 1, 3, dan 2 pesanan. Join internal mengembalikan satu baris per pasangan pelanggan-pesanan: 1 + 3 + 2 = 6 baris. Pelanggan tanpa pesanan akan tidak menambah apa pun ke join internal.
Semak kesimpulan dan had-hadnya
- Kunci utama tidak perlu berupa nama orang. Gabungan bukan penggabungan sederhana tabel. Gunakan query terparameter untuk input yang tidak tepercaya alih-alih membangun SQL dari string mentah.
- Kembali ke pengamatan awal. Jelaskan apa hasil tersebut mendukung, kondisi apa yang diasumsikannya, dan satu cara untuk menguji penjelasan saingan.
Fungsi kunci asing secara otomatis mengenkripsi setiap baris. Klaim ini salah: Fungsi kunci asing adalah tautan referensial antar tabel—ia memastikan baris yang dirujuk ada. Ia tidak melakukan enkripsi; melindungi isi baris merupakan mekanisme keamanan yang terpisah.
Database relasional: kunci dan hubungan: Gabungan menggabungkan baris berdasarkan kondisi tertentu. Jumlah hasil bergantung pada kardinalitas hubungan dan filter. Batasan kunci asing menerapkan aturan hubungan; itu tidak secara otomatis mengenkripsi data pribadi.
Kunci asing secara otomatis mengenkripsi setiap baris.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Kunci asing adalah tautan referensial antar tabel - ia memastikan baris yang dirujuk ada. Kunci asing tidak melakukan enkripsi; melindungi konten baris adalah mekanisme keamanan terpisah.
Set atribut yang secara unik mengidentifikasi baris tabel: tulis istilah teknisnya.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
primary key berarti Set atribut yang secara unik mengidentifikasi baris tabel.