តើអ្វីទៅជាទម្រង់ធម្មតារបស់ Boyce-Codd (BCNF)?

BCNF កាត់បន្ថយការលែងត្រូវការតទៅទៀតនិងបង្កើនភាពត្រឹមត្រូវនៃទិន្នន័យ

គោលបំណងនៃសំណុំបែបបទសាមញ្ញ Boyce -Codd (BCNF) គឺដើម្បីបង្កើន ភាពត្រឹមត្រូវទិន្នន័យ ដោយរៀបចំជួរឈរនិងតារាងនៃមូលដ្ឋានទិន្នន័យទំនាក់ទំនងដើម្បីសម្រេចបាននូវការធ្វើឱ្យដូចធម្មតានៃមូលដ្ឋានទិន្នន័យ។ មូលដ្ឋានទិន្នន័យមូលដ្ឋាននីត្យានុកូលភាព កើតឡើងនៅពេលមានការបង្កើតទំនាក់ទំនងរវាងតារាងនិងនៅពេលដែលតារាងបានកំណត់ក្បួនដើម្បីធ្វើឱ្យមូលដ្ឋានទិន្នន័យកាន់តែមានភាពបត់បែននិងដើម្បីរក្សាទិន្នន័យ។

គោលដៅនៃមូលដ្ឋានទិន្នន័យមូលដ្ឋានទិន្នន័យគឺដើម្បីលុបបំបាត់ទិន្នន័យមិនច្បាស់លាស់និងដើម្បីធានាថាភាពអាស្រ័យទិន្នន័យធ្វើឱ្យយល់។

មូលដ្ឋានទិន្នន័យត្រូវបានធ្វើឱ្យមានលក្ខណៈធម្មតានៅពេលដែលទិន្នន័យតែមួយមិនត្រូវបានរក្សាទុកក្នុងតារាងច្រើនជាងមួយហើយនៅពេល ដែលទិន្នន័យដែលទាក់ទង ត្រូវបានទុកក្នុងតារាង។

ប្រភពដើមនៃសំណុំបែបបទធម្មតារបស់ Boyce-Codd

ធ្វើតាមគោលការណ៍ណែនាំជាបន្តបន្ទាប់ធានាថាមូលដ្ឋានទិន្នន័យត្រូវបានធ្វើធម្មតា។ គោលការណ៍ណែនាំទាំងនេះត្រូវបានបញ្ជូនទៅជាទម្រង់ធម្មតាហើយត្រូវបានរាប់ចាប់ពីមួយទៅប្រាំ។ មូលដ្ឋានទិន្នន័យទំនាក់ទំនងត្រូវបានពិពណ៌នាថាជាធម្មតាប្រសិនបើវាបំពេញតាមទម្រង់បីដំបូង: 1NF, 2NF, និង 3NF ។

BCNF ត្រូវបានបង្កើតឡើងជាផ្នែកបន្ថែមទៅសំណុំបែបបទធម្មតាទីបីឬ 3NF នៅឆ្នាំ 1974 ដោយ Raymond Boyce និង Edgar Codd ។ បុរសទាំងនោះបានធ្វើការបង្កើតគំនូសតាងមូលដ្ឋានទិន្នន័យដែលកាត់បន្ថយការលែងត្រូវការតទៅទៀតដោយមានគោលដៅកាត់បន្ថយពេលវេលាគណនា។ សំណុំបែបបទធម្មតាទីបីយកជួរឈរដែលមិនអាស្រ័យលើកូនសោបឋមបន្ថែមលើការបំពេញតាមគោលការណ៍ណែនាំក្នុងទម្រង់ធម្មតាទីមួយនិងទីពីរ។ BCNF ដែលពេលខ្លះត្រូវបានគេហៅថា 3.5NF បានបំពេញតាមតម្រូវការទាំងអស់របស់ 3NF ហើយតម្រូវឱ្យកូនសោបេក្ខជនមិនមានភាពអាស្រ័យលើគុណលក្ខណៈផ្សេងទៀតនៅក្នុងតារាង។

នៅពេលនៃការបង្កើត BCNF, Boyce គឺជាអ្នកបង្កើតដ៏សំខាន់នៃភាសារចនាសម្ព័ន្ធភាសាអង់គ្លេស (SQL) ដែលធ្វើអោយប្រសើរឡើងនូវការទាញយកទិន្នន័យដោយប្រើគំរូទំនាក់ទំនងរបស់ Codd ។ ក្នុងគំរូនេះ Codd បានលើកឡើងថាភាពស្មុគស្មាញនៃរចនាសម្ព័ន្ធមូលដ្ឋានទិន្នន័យអាចត្រូវបានកាត់បន្ថយដែលអាចមានន័យថាសំណួរអាចមានឥទ្ធិពលនិងអាចបត់បែនបាន។

ដោយប្រើការយល់ដឹងអំពីមូលដ្ឋានទិន្ន័យទំនាក់ទំនងរបស់គាត់ Codd បានកំណត់គោលការណ៍ណែនាំ 1NF, 2NF និង 3NF ។ គាត់បានសហការជាមួយ Boyce ដើម្បីកំណត់ BCNF ។

គ្រាប់ចុចបេក្ខជននិង BCNF

កូនសោបេក្ខជនគឺជាជួរឈរឬបន្សំនៃជួរឈរនៅក្នុងតារាងដែលបង្កើតគន្លឹះតែមួយគត់នៅក្នុងមូលដ្ឋានទិន្នន័យ។ ការរួមបញ្ចូលគ្នានៃគុណលក្ខណៈអាចត្រូវបានប្រើដើម្បីកំណត់អត្តសញ្ញាណកំណត់ត្រាមូលដ្ឋានទិន្នន័យដោយគ្មានសំដៅទៅលើទិន្នន័យផ្សេងទៀត។ តារាងនីមួយៗអាចមានកូនសោបេក្ខជនច្រើនដែលគ្រប់ផ្នែកទាំងអស់អាចមានលក្ខណៈគ្រប់គ្រាន់ជាកូនសោសំខាន់។ តារាងមួយមានតែកូនសោសំខាន់មួយប៉ុណ្ណោះ។

លេខបេសសញ្ញាបេក្ខជនត្រូវតែមានតែមួយគត់។

ទំនាក់ទំនងគឺស្ថិតនៅក្នុង BCNF ប្រសិនបើមានកត្តាកំណត់ជាពាក្យគន្លឹះ។ ពិចារណាតារាងមូលដ្ឋានទិន្នន័យដែលផ្ទុកព័ត៌មានបុគ្គលិកនិងមានគុណលក្ខណៈ , , និង <ចំណងជើង> ។

ក្នុងតារាងនេះវាល កំណត់ឈ្មោះនាមត្រកូលនិងឈ្មោះចុងក្រោយ។ ដូចគ្នានេះដែរ tuple (, Last_name) កំណត់ថា

លេខសម្គាល់បុគ្គលិក នាមខ្លួន នាមត្រកូល ចំណងជើង
13133 អេមីលី ស្មី អ្នកគ្រប់គ្រង
13134 ជីម ស្មី ភ្ជាប់
13135 អេមីលី Jones ភ្ជាប់


កូនសោបេក្ខជនសម្រាប់ មូលដ្ឋានទិន្នន័យ នេះគឺ ពីព្រោះវាជាតម្លៃតែមួយគត់ដែលមិនអាចប្រើបានដោយជួរដេកផ្សេងទៀត។