Normalizing ຖານຂໍ້ມູນຂອງທ່ານ: ການຫັນໄປຫາແບບຟອມປົກກະຕິທີສອງ (2NF)

ການຕັ້ງຖານຂໍ້ມູນໃນແບບຟອມປົກກະຕິທີສອງ

ໃນໄລຍະເດືອນທີ່ຜ່ານມາ, ພວກເຮົາໄດ້ພິຈາລະນາກ່ຽວກັບລັກສະນະຂອງ normalizing table database. ທໍາອິດ, ພວກເຮົາໄດ້ປຶກສາຫາລືຫຼັກການພື້ນຖານຂອງການປົກກະຕິຂອງຖານຂໍ້ມູນ. ສຸດທ້າຍ, ພວກເຮົາໄດ້ຄົ້ນຄວ້າຄວາມຕ້ອງການຂັ້ນພື້ນຖານທີ່ວາງໄວ້ໂດຍຮູບແບບປົກກະຕິທໍາອິດ (1NF). ຕອນນີ້, ເຮົາຈະສືບຕໍ່ການເດີນທາງຂອງພວກເຮົາແລະກວມເອົາຫຼັກການຂອງຮູບແບບປົກກະຕິທີ 2 (2NF).

ບັນທຶກຄວາມຕ້ອງການທົ່ວໄປຂອງ 2NF:

ກົດລະບຽບເຫຼົ່ານີ້ສາມາດສະຫຼຸບໄດ້ໃນຄໍາຖະແຫຼງທີ່ງ່າຍດາຍ: 2NF ພະຍາຍາມຫຼຸດຜ່ອນຈໍານວນຂໍ້ມູນທີ່ບໍ່ຈໍາເປັນໃນຕາຕະລາງໂດຍການສະກັດເອົາມັນ, ວາງໄວ້ໃນຕາຕະລາງໃຫມ່ແລະ ສ້າງຄວາມສໍາພັນ ລະຫວ່າງຕາຕະລາງເຫຼົ່ານັ້ນ.

ໃຫ້ເບິ່ງຕົວຢ່າງ. ຈິນຕະນາການຮ້ານອິນເຕີເນັດທີ່ຮັກສາຂໍ້ມູນຂອງລູກຄ້າໃນຖານຂໍ້ມູນ. ພວກເຂົາອາດມີຕາຕະລາງດຽວທີ່ເອີ້ນວ່າລູກຄ້າທີ່ມີອົງປະກອບດັ່ງຕໍ່ໄປນີ້:

ເບິ່ງສັ້ນໆຢູ່ຕາຕະລາງນີ້ສະແດງໃຫ້ເຫັນຈໍານວນຫນ້ອຍຂອງຂໍ້ມູນຊ້ໍາຊ້ອນ. ພວກເຮົາກໍາລັງເກັບຮັກສາ "Sea Cliff, NY 11579" ແລະ "Miami, FL 33157" ສອງເທື່ອ. ໃນປັດຈຸບັນ, ອາດຈະເບິ່ງຄືວ່າບໍ່ມີການເກັບຮັກສາຫຼາຍເກີນໄປໃນຕົວຢ່າງງ່າຍໆຂອງພວກເຮົາ, ແຕ່ຈິນຕະນາການພື້ນທີ່ສູນເສຍຖ້າພວກເຮົາມີຫລາຍໆແຖວໃນຕາຕະລາງຂອງພວກເຮົາ. ນອກຈາກນັ້ນ, ຖ້າຫາກວ່າລະຫັດຫັດຖະກໍາສໍາລັບ Sea Cliff ຈະມີການປ່ຽນແປງ, ພວກເຮົາຈໍາເປັນຕ້ອງເຮັດໃຫ້ມີການປ່ຽນແປງໃນຫຼາຍໆບ່ອນໃນຖານຂໍ້ມູນ.

ໃນໂຄງສ້າງຖານຂໍ້ມູນທີ່ສອດຄ່ອງກັບ 2NF, ຂໍ້ມູນຂ່າວສານຊ້ໍາຊ້ອນນີ້ຖືກສະກັດແລະເກັບໄວ້ໃນຕາຕະລາງແຍກຕ່າງຫາກ. ຕາຕະລາງໃຫມ່ຂອງພວກເຮົາ (ໃຫ້ໂທຫາມັນ ZIP) ອາດມີຂົງເຂດດັ່ງຕໍ່ໄປນີ້:

ຖ້າພວກເຮົາຕ້ອງການທີ່ມີປະສິດຕິພາບສູງ, ພວກເຮົາກໍ່ສາມາດຕື່ມຂໍ້ມູນໃສ່ຕາຕະລາງນີ້ກ່ອນ - ຫ້ອງການໄປສະນີຈະໃຫ້ລະຫັດ ZIP ທີ່ຖືກຕ້ອງແລະການພົວພັນເມືອງ / ລັດຂອງພວກເຂົາ. ແນ່ນອນ, ທ່ານໄດ້ພົບສະຖານະການທີ່ຖານຂໍ້ມູນນີ້ຖືກນໍາໃຊ້. ຜູ້ໃດຜູ້ຫນຶ່ງກິນຄໍາສັ່ງອາດຈະໄດ້ຂໍຮ້ອງໃຫ້ທ່ານສໍາລັບລະຫັດໄປສະນີຂອງທ່ານກ່ອນແລະຫຼັງຈາກນັ້ນຮູ້ເມືອງແລະລັດທີ່ທ່ານໄດ້ໂທຈາກ. ແບບການຈັດການນີ້ຊ່ວຍຫຼຸດຜ່ອນຄວາມຜິດພາດຂອງຕົວປະຕິບັດແລະເພີ່ມປະສິດທິພາບ.

ຕອນນີ້ພວກເຮົາໄດ້ລຶບຂໍ້ມູນທີ່ຊ້ໍາກັນຈາກຕາຕະລາງລູກຄ້າ, ພວກເຮົາໄດ້ປະເມີນກົດລະບຽບທໍາອິດຂອງແບບຟອມປົກກະຕິທີສອງ. ພວກເຮົາຍັງຈໍາເປັນຕ້ອງໃຊ້ ກຸນແຈຕ່າງປະເທດທີ່ ຈະຖີ້ມຕາຕະລາງທັງສອງກັນດ້ວຍກັນ. ພວກເຮົາຈະໃຊ້ ລະຫັດຫັດໄປສະນີ (ຫຼັກຫຼັກຈາກຕາຕະລາງ ZIP ) ເພື່ອສ້າງຄວາມສໍາພັນນັ້ນ. ນີ້ແມ່ນຕາຕະລາງລູກຄ້າໃຫມ່ຂອງພວກເຮົາ:

ຕອນນີ້ພວກເຮົາໄດ້ຫຼຸດຜ່ອນຈໍານວນຂໍ້ມູນທີ່ຖືກເກັບໄວ້ໃນຖານຂໍ້ມູນແລະໂຄງສ້າງຂອງພວກເຮົາແມ່ນຢູ່ໃນຮູບແບບປົກກະຕິທີສອງ!

ຖ້າທ່ານຕ້ອງການເພື່ອໃຫ້ຖານຂໍ້ມູນຂອງທ່ານຖືກປົກກະຕິ, ຄົ້ນຫາບົດອື່ນໆຂອງພວກເຮົາໃນຊຸດນີ້: