ការដាក់ទិន្នន័យក្នុងសំណុំបែបបទធម្មតាទីពីរ
ក្នុងរយៈពេលមួយខែកន្លងមកនេះយើងបានមើលលើទិដ្ឋភាពមួយចំនួននៃការធ្វើតារាងទិន្នន័យជាទូទៅ។ ទីមួយយើងបានពិភាក្សាអំពីគោលការណ៍ជាមូលដ្ឋាននៃការធ្វើឱ្យមានប្រក្រតីភាពទិន្នន័យ។ កាលពីលើកមុនយើងបានរកឃើញនូវតម្រូវការជាមូលដ្ឋានដែលដាក់ដោយទម្រង់ធម្មតាធម្មតា (1NF) ។ ឥឡូវនេះសូមបន្តការធ្វើដំណើររបស់យើងហើយគ្របដណ្ដប់លើគោលការណ៍នៃទម្រង់ធម្មតាទី 2 (2NF) ។
រំលឹកឡើងវិញពីតម្រូវការទូទៅនៃ 2NF:
- យកសំណុំរងទិន្នន័យដែលអនុវត្តទៅជួរដេកច្រើននៃតារាងហើយដាក់វាក្នុងតារាងដាច់ដោយឡែក។
- បង្កើតទំនាក់ទំនងរវាងតារាងថ្មីទាំងនេះនិងអ្នកកាន់តំណែងមុនរបស់ពួកគេតាមរយៈការប្រើប្រាស់កូនសោបរទេស។
ច្បាប់ទាំងនេះអាចត្រូវបានសង្ខេបនៅក្នុងសេចក្តីថ្លែងការណ៍សាមញ្ញ: 2NF ប៉ុនប៉ងកាត់បន្ថយចំនួនទឹកប្រាក់នៃទិន្នន័យដែលមិនច្បាស់លាស់នៅក្នុងតារាងដោយទាញយកវាដាក់វានៅក្នុងតារាងថ្មីនិង បង្កើតទំនាក់ទំនង រវាងតារាងទាំងនោះ។
សូមមើលឧទាហរណ៍មួយ។ ស្រមៃមើលហាងអ៊ីនធឺណែតមួយដែលរក្សាព័ត៌មានអតិថិជនក្នុងមូលដ្ឋានទិន្នន័យ។ ពួកគេអាចមានតារាងតែមួយដែលហៅថាអតិថិជនដែលមានធាតុដូចខាងក្រោម:
- CustNum
- នាមខ្លួន
- នាមត្រកូល
- អាសយដ្ឋាន
- ទីក្រុង
- រដ្ឋ
- ហ្ស៊ីប
ការមើលសង្ខេបនៅលើតុនេះបង្ហាញពីចំនួនទឹកប្រាក់តិចតួចនៃទិន្នន័យហួសប្រមាណ។ យើងកំពុងផ្ទុកធាតុ "ឆ្នេរសមុទ្រឆ្នេរសមុទ្រ NY 11579" និង "Miami, FL 33157" ពីរដង។ ឥឡូវនេះប្រហែលជាមិនដូចជាឃ្លាំងផ្ទុកច្រើនពេកនៅក្នុងឧទាហរណ៍សាមញ្ញរបស់យើងទេប៉ុន្តែស្រមៃមើលចន្លោះដែលគ្មានការប្រើប្រាស់ប្រសិនបើយើងមានជួរដេករាប់ពាន់នៅក្នុងតារាងរបស់យើង។ លើសពីនេះទៀតប្រសិនបើលេខកូដតំបន់សម្រាប់ឆ្នេរសមុទ្រត្រូវផ្លាស់ប្តូរយើងត្រូវការផ្លាស់ប្តូរកន្លែងជាច្រើននៅលើមូលដ្ឋានទិន្នន័យ។
នៅក្នុងរចនាសម្ព័ន្ធមូលដ្ឋានទិន្នន័យ 2NF ដែលពោរពេញដោយពត៌មាននេះត្រូវបានស្រង់ចេញនិងរក្សាទុកនៅក្នុងតារាងដាច់ដោយឡែកមួយ។ តារាងថ្មីរបស់យើង (ហៅថាកូដ ZIP) អាចមានវាលដូចខាងក្រោម:
- ហ្ស៊ីប
- ទីក្រុង
- រដ្ឋ
ប្រសិនបើយើងចង់មានប្រសិទ្ធិភាពខ្ពស់យើងអាចបំពេញតារាងនេះជាមុន - ការិយាល័យប្រៃសណីយ៍ផ្តល់នូវថតនៃកូដប្រៃសណីយ៍ដែលត្រឹមត្រូវទាំងអស់និងទំនាក់ទំនងទីក្រុង / រដ្ឋរបស់ពួកគេ។ ពិតណាស់អ្នកបានជួបប្រទះស្ថានការណ៍មួយដែលប្រភេទនៃមូលដ្ឋានទិន្នន័យនេះត្រូវបានប្រើប្រាស់។ នរណាម្នាក់ដែលកំពុងបញ្ជាទិញអាចសួរអ្នកអំពីលេខកូដសំងាត់របស់អ្នកមុនហើយបន្ទាប់មកស្គាល់ទីក្រុងហើយប្រាប់ថាអ្នកកំពុងហៅ។ ប្រភេទនៃការរៀបចំនេះជួយកាត់បន្ថយកំហុសប្រតិបត្តិករនិងបង្កើនប្រសិទ្ធភាព។
ឥឡូវយើងបានដកចេញទិន្នន័យស្ទួនពីតារាងអតិថិជនយើងបានពេញចិត្តចំពោះវិធានទីមួយនៃទម្រង់ធម្មតាទីពីរ។ យើងនៅតែត្រូវប្រើ កូនសោបរទេស ដើម្បីចងតុពីរជាមួយគ្នា។ យើងនឹងប្រើ កូដប្រៃសណីយ៍ (គន្លឹះសំខាន់ពីតារាង ZIP) ដើម្បីបង្កើតទំនាក់ទំនងនោះ។ នេះគឺជាតារាងអតិថិជនថ្មីរបស់យើង:
- CustNum
- នាមខ្លួន
- នាមត្រកូល
- អាសយដ្ឋាន
- ហ្ស៊ីប
ឥឡូវនេះយើងបានបង្រួមអប្បបរមាចំនួននៃពត៌មានដែលបានបំរុងទុកនៅក្នុងមូលដ្ឋានទិន្នន័យហើយរចនាសម្ព័ន្ធរបស់យើងគឺស្ថិតនៅក្នុងសំណុំបែបបទធម្មតាទីពីរ!
ប្រសិនបើអ្នកចង់ប្រាកដថាមូលដ្ឋានទិន្នន័យរបស់អ្នកត្រូវបានធ្វើធម្មតាសូមរុករកអត្ថបទផ្សេងទៀតរបស់យើងនៅក្នុងស៊េរីនេះ:
- មូលដ្ឋានទិន្នន័យមូលដ្ឋានធម្មតា
- ការដាក់ទិន្នន័យរបស់អ្នកជាទម្រង់ធម្មតាធម្មតា
- ការដាក់ Database របស់អ្នកក្នុងសំណុំបែបបទធម្មតាទីពីរ
- ការដាក់ Database របស់អ្នកជាទម្រង់ធម្មតាទីបី