Kunci utama (primary key) ialah medan yang nilainya berbeza dalam setiap rekod, supaya setiap rekod boleh dicari dan tidak dikelirukan dengan yang lain. Syarat pengesahan (validation condition) ialah peraturan yang mesti dipenuhi oleh sesuatu nilai sebelum pangkalan data menerimanya. Tugasan praktikal ICT sering meminta anda menetapkan kedua-duanya pada jadual yang baru dicipta.
Kunci melindungi struktur jadual. Peraturan pengesahan melindungi mutu data.
Kedua-duanya melakukan kerja yang berbeza, dan satu medan boleh mempunyai kedua-duanya. Halaman ini sebahagian daripada struktur pangkalan data dan pengesahan.
Bagaimana memilih kunci?
Uji setiap medan calon dengan tiga soalan.
- Adakah ia unik? Bolehkah dua rekod memegang nilai yang sama?
- Adakah ia sentiasa ada? Bolehkah nilai itu tiada bagi rekod baharu?
- Adakah ia stabil? Adakah nilai itu perlu diubah suatu hari nanti?
Nama gagal soalan pertama. Nombor telefon gagal soalan ketiga. ID yang dicipta untuk jadual lulus ketiga-tiganya, sebab itu kebanyakan jadual menggunakannya.
Bagaimana menulis syarat pengesahan?
Nyatakan dahulu apa yang dibenarkan dengan perkataan biasa, kemudian tukarkan kepada syarat.
| Semakan | Peraturan biasa | Syarat |
|---|---|---|
| Julat (range) | Fee antara 0 dan 200 | >=0 AND <=200 |
| Panjang (length) | ID tepat 4 aksara | LEN([MemberID])=4 |
| Kehadiran (presence) | Name mesti diisi | Required = Yes |
| Carian (lookup) | Gred ialah A, B atau C | one of a list: A, B, C |
| Jenis (type) | Quantity ialah nombor bulat | field type = integer |
Sintaks tepat berbeza antara perisian, jadi tulis idea dengan jelas dalam jawapan anda dan gunakan sintaks yang diterima oleh program anda. Sempadan paling penting: ”>=0” menerima 0, tetapi “>0” tidak.
Contoh berlangkah
Sebuah kelab berbasikal rekaan (fiksyen) menyimpan data ahli. Tugasan: tetapkan kunci dan peraturan bagi medan Fee, dengan fi mesti dari 0 hingga 200 termasuk kedua-dua hujung.
Langkah 1, pilih kunci. Medannya ialah MemberID, Name, DateJoined, Fee. Nilai MemberID ialah M001, M002 dan seterusnya. Ia unik, sentiasa diisi dan tidak berubah. MemberID ialah kunci utama.
Langkah 2, nyatakan peraturan. Fi boleh jadi 0, 200 atau mana-mana nilai di antara. Itu semakan julat dengan kedua-dua hujung termasuk.
Langkah 3, tulis syarat: >=0 AND <=200
Langkah 4, uji nilai sempadan dan nilai di luar julat.
| Nilai ujian | Jangkaan | Sebab |
|---|---|---|
| 0 | diterima | sama dengan had bawah |
| 200 | diterima | sama dengan had atas |
| 45.50 | diterima | dalam julat |
| 200.01 | ditolak | melebihi had atas |
| -5 | ditolak | kurang daripada had bawah |
Semak jadual dengan syarat itu sekali lagi: 0 >= 0 benar dan 0 <= 200 benar, jadi 0 lulus. 200.01 <= 200 palsu, jadi ia gagal. Peraturan berfungsi seperti yang dirancang.
Kesilapan yang perlu diawasi
Kesilapan lazim ialah mempercayai bahawa data yang lulus pengesahan pasti betul.
Kepercayaan yang salah: Fi 54.50 dimasukkan bagi ahli yang fi sebenarnya 45.50. Ia lulus semakan julat, jadi ia mesti betul.
Semakan itu hanya menguji sama ada nilai antara 0 dan 200. Kedua-dua 54.50 dan 45.50 berada dalam julat, jadi pasangan digit yang bertukar tempat terus lepas.
Pembetulannya ialah menerangkan pengesahan sebagai penapis data yang tidak munasabah dan bukan bukti ketepatan. Untuk menangkap nilai yang bertukar tempat, anda membandingkan entri dengan dokumen sumber, iaitu verifikasi. Dalam jawapan peperiksaan, nyatakan kedua-dua bahagian: peraturan menolak nilai mustahil, dan semakan kedua diperlukan bagi nilai yang betul.
Semak diri anda
1. Dalam jadual pelajar dengan medan StudentID, FullName dan Class, medan mana paling sesuai sebagai kunci utama dan mengapa?
Lihat jawapan
StudentID. Ia unik dan tidak akan berubah. Dua pelajar boleh berkongsi nama atau kelas.
2. Tulis syarat pengesahan supaya markah ujian diterima hanya dari 0 hingga 100 termasuk. Namakan jenis semakan itu.
Lihat jawapan
>=0 AND <=100, iaitu semakan julat (range check). Kedua-dua 0 dan 100 diterima, dan 101 atau -1 ditolak.
3. Satu borang memerlukan ID tepat 4 aksara. Pengguna menaip M05. Semakan mana menolaknya, dan mengapa?
Lihat jawapan
Semakan panjang (length check) menolaknya. M05 mempunyai 3 aksara dan peraturan memerlukan tepat 4.
Langkah seterusnya
Setelah kunci dan peraturan disediakan, berlatih memasukkan data ke dalam jadual dengan mengimport set data rekaan yang kecil. Sebelum ini, memilih jenis medan daripada nilai contoh memberi anda jenis yang menjadi asas peraturan ini. Penyemak tugasan praktikal dan bukti ICT membantu anda menyenaraikan kriteria penerimaan bagi tugasan seperti ini.
Sesetengah pelajar boleh menghafal nama semakan tetapi kehilangan markah apabila diminta menguji sesuatu peraturan. Guru dalam tuisyen ICT dalam talian secara satu dengan satu boleh membekalkan jadual baharu dan mencabar syarat anda dengan nilai ujian yang luar biasa.