ក្បួនសាមញ្ញទាំងពីរនេះនឹងជួយធ្វើឱ្យមូលដ្ឋានទិន្នន័យរបស់អ្នកមានលក្ខណៈធម្មតា
ទម្រង់ធម្មតាទីមួយ (1NF) កំណត់ក្បួនមូលដ្ឋានសម្រាប់មូលដ្ឋានទិន្នន័យដែលបានរៀបចំ:
- លុបបំបាត់ជួរឈរស្ទួនពីតារាងដូចគ្នា។
- បង្កើតតារាងដាច់ដោយឡែកសម្រាប់ក្រុមនីមួយៗដែលទាក់ទងនឹងទិន្នន័យនិងកំណត់ជួរដេកនីមួយៗជាមួយជួរដេកតែមួយគត់ (កូនសោសំខាន់) ។
តើច្បាប់ទាំងនេះមានអត្ថន័យយ៉ាងណានៅពេលពិចារណាអំពីការរៀបចំជាក់ស្តែងនៃទិន្នន័យ? វាពិតជាសាមញ្ញណាស់។
លុបចោលស្ទួន
ក្បួនទីមួយកំណត់ថាយើងមិនត្រូវស្ទួនទិន្នន័យនៅក្នុងជួរដេកតែមួយនៃតារាង។ នៅក្នុងសហគមន៍មូលដ្ឋានទិន្នន័យគំនិតនេះត្រូវបានគេសំដៅថាជាអាតូមនៃតារាងមួយ។ តារាងដែលអនុលោមតាមច្បាប់នេះត្រូវបានគេនិយាយថាជាអាតូម។ ចូរយើងស្វែងយល់គោលការណ៍នេះជាមួយនឹងគំរូបុរាណមួយ: តារាងមួយនៅក្នុងមូលដ្ឋានទិន្នន័យធនធានមនុស្សដែលរក្សាទុកទំនាក់ទំនងអ្នកគ្រប់គ្រងក្រោមបង្គាប់។ ចំពោះគោលបំណងនៃឧទាហរណ៍របស់យើងយើងនឹងកំណត់ក្បួនអាជីវកម្មដែលអ្នកគ្រប់គ្រងអាចមានអ្នកក្រោមបង្គាប់មួយឬច្រើនខណៈពេលដែលអ្នកក្រោមនីមួយៗអាចមានអ្នកគ្រប់គ្រងម្នាក់។
ដោយចេតនានៅពេលបង្កើតបញ្ជីឬសៀវភៅបញ្ជីដើម្បីតាមដានព័ត៌មាននេះយើងអាចបង្កើតតារាងដែលមានវាលដូចខាងក្រោម:
- អ្នកគ្រប់គ្រង
- អ្នកក្រ 1
- អ្នកក្រោមបង្គាប់ 2
- អ្នកក្រ 3
- អ្នកក្រោមបង្គាប់ 4
ទោះជាយ៉ាងណាក៏ដោយសូមរំលឹកឡើងវិញនូវគោលការណ៍ទីមួយដែលបានកំណត់ដោយ 1NF: លុបបំបាត់ជួរឈរដែលស្ទួនពីតារាងតែមួយ។ ច្បាស់ណាស់ជួរឈរ Subordinate1-Subordinate4 គឺស្ទួន។ ចំណាយពេលបន្តិចហើយពិចារណាអំពីបញ្ហាដែលបានលើកឡើងដោយសេណារីយ៉ូនេះ។ ប្រសិនបើអ្នកគ្រប់គ្រងមានតែអ្នកក្រមួយជួរដេក Subordinate2-Subordinate4 ត្រូវបានបំលែងជាទូទៅទំហំផ្ទុក (ទំនិញមូលដ្ឋានទិន្នន័យដ៏មានតម្លៃ) ។ លើសពីនេះទៀតស្រមៃមើលករណីដែលអ្នកគ្រប់គ្រងម្នាក់មានអ្នកក្រោមបង្គាប់ 4 នាក់ហើយតើមានអ្វីកើតឡើងប្រសិនបើនាងចំណាយពេលលើបុគ្គលិកផ្សេងទៀត? រចនាសម្ពន្ធ័តុទាំងមូលនឹងត្រូវការកែប្រែ។
នៅចំណុចនេះគំនិតភ្លឺជាលើកទីពីរជាទូទៅកើតឡើងចំពោះអ្នកថ្មីក្នុងមូលដ្ឋានទិន្នន័យ: យើងមិនចង់មានជួរឈរច្រើនជាងមួយហើយយើងចង់អនុញ្ញាតឱ្យមានទំហំផ្ទុកទិន្នន័យដែលអាចបត់បែនបាន។ សូមសាកល្បងអ្វីមួយដូចនេះ:
- អ្នកគ្រប់គ្រង
- អ្នកក្រោមបង្គាប់
ហើយវាលកូនចិញ្ចឹមនឹងមានធាតុច្រើនក្នុងទម្រង់ "Mary, Bill, Joe" ។
ដំណោះស្រាយនេះគឺកាន់តែខិតជិតប៉ុន្តែវាក៏មិនស្ថិតក្នុងសញ្ញាណសំគាល់នោះដែរ។ ជួរឈរបណ្តោះអាសន្ននៅតែចម្លងតាមនិងមិនមែនអាតូម។ តើមានអ្វីកើតឡើងនៅពេលយើងត្រូវការបន្ថែមឬដកអ្នកក្រ? យើងត្រូវអាននិងសរសេរមាតិកាទាំងមូលនៃតារាង។ នោះមិនមែនជាបញ្ហាធំនៅក្នុងស្ថានភាពនេះទេប៉ុន្តែចុះយ៉ាងណាបើអ្នកគ្រប់គ្រងម្នាក់មានបុគ្គលិក 100 នាក់? ដូចគ្នានេះផងដែរ, វាស្មុគស្មាញដំណើរការនៃការជ្រើសរើសទិន្នន័យពីមូលដ្ឋានទិន្នន័យនៅក្នុងសំណួរនាពេលអនាគត។
នេះគឺជាតារាងមួយដែលបំពេញតម្រូវការទីមួយនៃ 1NF:
- អ្នកគ្រប់គ្រង
- អ្នកទន់ខ្សោយ
ក្នុងករណីនេះអ្នកក្រោមបង្គាប់នីមួយៗមានធាតុតែមួយប៉ុន្តែអ្នកគ្រប់គ្រងអាចមានធាតុច្រើន។
2. កំណត់អត្តសញ្ញាណកូនសោសំខាន់
ឥឡូវចុះអំពីក្បួនទីពីរ: កំណត់ជួរនីមួយៗដែលមានជួរឈរឬជួរឈរតែមួយគត់ ( កូនសោសំខាន់ )? អ្នកអាចមើលតារាងខាងលើនិងស្នើឱ្យប្រើជួរឈរក្រោមជាកូនសោសំខាន់។ តាមពិតជួរឈរក្រោមគឺជាបេក្ខជនដ៏ល្អសម្រាប់កូនសោសំខាន់ដោយសារតែច្បាប់អាជីវកម្មរបស់យើងបានបញ្ជាក់ថាអ្នកគ្រប់គ្រងនីមួយៗអាចមានអ្នកគ្រប់គ្រងតែមួយប៉ុណ្ណោះ។ ទោះជាយ៉ាងណាក៏ដោយទិន្នន័យដែលយើងបានជ្រើសរើសទុកក្នុងតារាងរបស់យើងធ្វើឱ្យដំណោះស្រាយនេះមិនសូវល្អ។ តើមានអ្វីកើតឡើងប្រសិនបើយើងជួលនិយោជិកម្នាក់ទៀតឈ្មោះជីម? តើយើងរក្សាទំនាក់ទំនងអ្នកគ្រប់គ្រងក្រោមបង្គាប់របស់គាត់នៅក្នុងមូលដ្ឋានទិន្នន័យយ៉ាងដូចម្តេច?
វាជាការល្អបំផុតដើម្បីប្រើអត្តសញ្ញាណតែមួយគត់ពិតប្រាកដ (ដូចជាលេខសម្គាល់បុគ្គលិក) ជា កូនសោសំខាន់ ។ តារាងចុងក្រោយរបស់យើងនឹងមើលទៅដូចនេះ:
- លេខសម្គាល់អ្នកគ្រប់គ្រង
- លេខសម្គាល់រង
ឥឡូវនេះតារាងរបស់យើងគឺនៅក្នុងសំណុំបែបបទធម្មតាដំបូង! ប្រសិនបើអ្នកចង់បន្តរៀនអំពីការប្រក្រតីកម្មសូមអានអត្ថបទផ្សេងទៀតនៅក្នុងស៊េរីនេះ: