23
- กกกกกกกกกกกกกกกกกก กกกก 4122612 กกกกกกกกกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกก (Information Technology for Personal Record and Payroll)

- การออกแบบฐานข้อมูล

Embed Size (px)

DESCRIPTION

วิชา 4122612 เทคโนโลยีสารสนเทศสำหรับงานทะเบียนบุคคลและการจ่ายเงินเดือน ( Information Technology for Personal Record and Payroll ). - การออกแบบฐานข้อมูล. ฐานข้อมูล. - PowerPoint PPT Presentation

Citation preview

Page 1: - การออกแบบฐานข้อมูล

- การออกแบบฐานข้�อมู�ล

วิ�ชา 4122612 เทคโนโลยี�สารสนเทศส�าหร�บงานทะเบ�ยีนบ คคลและการจ่"ายีเง�นเดื$อน(Information Technology for Personal Record and Payroll)

Page 2: - การออกแบบฐานข้อมูล

ฐานข้�อมู�ลฐานข้�อมู�ล ค$อ การรวิบรวิมูข้�อมู�ลท�%มู�ควิามูส�มูพั�นธ์(ก�นไวิ�ในท�%

เดื�ยีวิก�น ข้�อมู�ลเหล"าน�+จ่ะถู�กจ่�ดืเก-บไวิ�อยี"างมู�ระบบ เพั$%อประโยีชน(ในการจ่�ดืการและเร�ยีกใช�ข้�อมู�ลไดื�อยี"างมู�ประส�ทธ์�ภาพั จ่�ดืท�าข้0+นเองโดืยีอาศ�ยีน�กเทคโนโลยี�สารสนเทศ

ระบบจั�ดการฐานข้�อมู�ล หร$อ DBMS (data base management system ) ค$อซอฟต์(แวิร(ซ0%งมู�หน�าท�%ช"วิยีให�ผู้��ใช�เข้�าถู0งข้�อมู�ลไดื�ง"ายีสะดืวิกและมู�ประส�ทธ์�ภาพัโดืยีผู้��ใช�ไมู"จ่�าเป5นต์�องร�บร� �เก�%ยีวิก�บรายีละเอ�ยีดืภายีในโครงสร�างข้องฐานข้�อมู�ล

ฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์� (Relational Database) ค$อ การรวิบรวิมูเอนท�ต์�+ท�%อยี�"ในระบบท�%มู�ควิามูส�มูพั�นธ์(ระหวิ"างก�นเข้�าไวิ�ดื�วิยีก�น

Page 3: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล

เอนท์�ต่�" (Entity)เป5นค�าท�%อ�างอ�งถู0งบ คคล สถูานท�% และส�%งข้องต์"าง

ๆ เช"น ส�นค�า ใบส�%งซ$+อ และล�กค�า เป5นต์�น ถู�าเราสนใจ่ในการสร�างระบบฐานข้�อมู�ลการส�%งซ$+อส�นค�า เอนท�ต์�+ข้องระบบน�+จ่ะประกอบดื�วิยีเอนท�ต์�+ล�กค�า ใบส�%งซ$+อส�นค�าก�บส�นค�า ดื�งร�ปใบสั� งซื้$"อ (Orders) ล�กค้�า (Customers ) สั�นค้�า (Products)ใบสั� งซื้$"อ

(Orders)สั�นค้�า

(Products)

ล�กค้�า (Custom

ers)

Page 4: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล แอต่ท์ร�บ�วต่� (Attribute)

เป5นข้�อมู�ลท�%แสดืงล�กษณะข้องเอนท�ต์�+ เช"น แอต์ทร�บ�วิต์(ข้องเอนท�ต์�+ล�กค�า จ่ะมู�ช$%อ ท�%อยี�" และรห�สไปรษณ�ยี( ส"วินแอต์ทร�บ�วิต์(ข้องเอนท�ต์�+ใบส�%งซ$+อส�นค�า จ่ะมู�รห�สใบส�%งซ$+อ วิ�นท�%ส� %งซ$+อ ช$%อส�นค�า จ่�านวินส�นค�าท�%ส� %ง และราคาส�นค�า เป5นต์�น ซ0%งเราสามูารถูแสดืงเอนท�ต์�+ รวิมูท�+งแอต์ทร�บ�วิต์(ไดื� ดื�งร�ป

Page 5: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล

ล�กค้�า (Custome

rs)

รหั�สัล�กค้�าชิ$ อล�กค้�า

ท์� อยู่��ล�กค้�ารหั�สัไปรษณี�ยู่�

หัมูายู่เลข้โท์รศั�พัท์�

ใบสั� งซื้$"อ (Orders)

รหั�สัใบสั� งซื้$"อว�นท์� สั� งสั�นค้�าว�นท์� สั�งสั�นค้�า

รหั�สัล�กค้�าท์� สั� งรหั�สัสั�นค้�าท์� สั� งจั/านวนสั�นค้�าท์�

สั� งสั�วนลด

สั�นค้�า (Products

)

รหั�สัสั�นค้�าชิ$ อสั�นค้�าราค้าต่�อหัน�วยู่

รวมูภาษ�ด�วยู่หัร$อไมู�

จั/านวนสั�นค้�าในค้ล�ง

รหั�สัชิน�ดสั�นค้�า

ชิ$ อชิน�ดสั�นค้�า

ช$%อเอนท�ต์�+

แอต์ทร�บ�วิต์(ท�+งหมูดื

Page 6: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล

ค้วามูสั�มูพั�นธ์� (Relationships)จ่ะหมูายีถู0ง ควิามูส�มูพั�นธ์(ระหวิ"างเอนท�ต์�+ต์"าง ๆ ในระบบ

เช"น ในระบบการส�%งซ$+อส�นค�า จ่ะประกอบดื�วิยีเอนท�ต์�+ใบส�%งซ$+อส�นค�าและเอนท�ต์�+ล�กค�า ซ0%งมู�ควิามูส�มูพั�นธ์(จ่ากล�กค�าไปยี�ง ใบส�%งซ$+อส�นค�าเป5นแบบหน0%งต์"อกล "มู (One-to-Many) หมูายีควิามูวิ"า ล�กค�าสามูารถูส�%งส�นค�าไดื�หลายี ๆคร�+ง ค$อ มู�ใบส�%งส�นค�าหลายีใบน�+นเอง แต์"ใบส�%งซ$+อแต์"ละใบจ่ะมูาจ่ากล�กค�าเพั�ยีงรายีเดื�%ยีวิเท"าน�+น เป5นต์�น ควิามูส�มูพั�นธ์(ระหวิ"างเอนท�ต์�+ท�%กล"าวิมูาสามูารถูแสดืงไดื� ดื�งร�ป

Page 7: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล

1 Nล�กค้�า (Custome

rs)

รหั�สัล�กค้�าชิ$ อล�กค้�า

ท์� อยู่��ล�กค้�ารหั�สัไปรษณี�ยู่�

หัมูายู่เลข้โท์รศั�พัท์�

ใบสั� งซื้$"อ (Orders)

รหั�สัใบสั� งซื้$"อว�นท์� สั� งสั�นค้�าว�นท์� สั�งสั�นค้�า

รหั�สัล�กค้�าท์� สั� งรหั�สัสั�นค้�าท์� สั� งจั/านวนสั�นค้�าท์�

สั� งสั�วนลด

Page 8: - การออกแบบฐานข้อมูล

ศั�พัท์�ต่�าง ๆ ท์� ต่�องร��จั�กในระบบฐานข้�อมู�ล

ฟิ2ลด� (Field)หน"วิยีข้�อมู�ลท�%ประกอบมูาจ่ากอ�กข้ระต์"าง ๆ หลายีอ�กข้ระ เช"น ช$%อ ท�%อยี�" ท�%ประกอบดื�วิยีอ�กข้ระหลายี ๆ ต์�วิ เป5นต์�น จ่ากควิามูหมูายีน�+ ฟ9ลดื( ค$อ แอต์ทร�บ�วิต์(น�+นเอง เราจ่ะใช�ค�าน�+เมู$อเราอ�างอ�งถู0งแอต์ทร�บ�วิต์(ในทางคอมูพั�วิเต์อร(ส"วินแอต์ทร�บ�วิต์(เราจ่ะใช�เมู$%ออ�างอ�งถู0งเอนท�ต์�+

เรค้อร�ด (Record)จ่ะเป5นการน�าฟ9ลดื(หลายี ๆ ฟ9ลดื(มูารวิมูก�น เช"น เรคอร(ดืล�กค�า ก-จ่ะเก-บข้�อมู�ลข้องล�กค�าท�+งหมูดืท�%ประกอบดื�วิยี ช$%อ ท�%อยี�"หร$อหมูายีเลข้โทรศ�พัท( เป5นต์�น

ต่าราง (Table)ฟิ2ลด�จ่ะเป5นการน�าเรคอร(ดืมูารวิมูก�น เช"น ต์ารางล�กค�า จ่ะประกอบดื�วิยีเรคอร(ดืข้องล�กค�า

Page 9: - การออกแบบฐานข้อมูล

ต์�วิอยี"าง

รห�สล�กค�า ช$%อล�กค�า ท�%อยี�"ล�กค�า

รห�สไปรษณ�ยี(

หมูายีเลยีโทรศ�พัท(

003 P&S STOREช�+น 1 อาคารเสร�มูมู�ต์รทาวิเวิอร( 159

ส ข้ มูวิ�ท 21 (อโคก ) คลองเต์ยี กทมู. 10330 250-0750

008

The Bookseller

สมูาคมูฝร�%งเศส 29 ถู.สาธ์รไดื� ท "งมูหาเมูฆ ยีานนาวิา กร งเทพัฯ 10110

240-2865-75

015 Hope Shop Asia Hotel 296 ถู.พัญาไท กร งเทพัฯ 10330267-8850-

5

181The Book

Shop2675 หมู�" 9 ลาดืพัร�าวิ ซ.95 วิ�งทองหลาง

บางกะป9 กทมู. 10330 253-0123

213 P'S Line428 Rama I Road, Siam Square

Bangkok 10500 233-1717

เรค้อร�ด

ฟิ2ลด�

Page 10: - การออกแบบฐานข้อมูล

ชิน�ดข้องค้�ยู่�ในฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์� Primary Key (ค้�ยู่�หัล�ก)

จ่ะเป5นฟ9ลดื(ท�%มู�ค"าไมู"ซ�+าก�นเลยีในแต์"ละเรคอร(ดืในต์ารางน�+น เราสามูารถูใช�ฟ9ลดื(ท�%เป5น Primary Key น�+เป5นต์�วิแทนข้องต์ารางน�+นไดื�ท�นท�

Candidate Key (ค้�ยู่�ค้��แข้�ง)เป5นฟ9ลดื(หน0%ง หร$อหลายีฟ9ลดื(ท�%มู�ค ณสมูบ�ต์�ท�%เป5น Primary Key ไดื� แต์"ไมู"ไดื�เป5นค�ยี(หล�ก เช"น ช$%อและนามูสก ล สามูารถูรวิบรวิมูก�นเป5นค�ยี(ค�"แข้"งไดื� เป5นต์�น

Composite Key เป5นฟ9ลดื(ท�%ใช�รวิมูก�บฟ9ลดื(อ$%น ๆ ท�%เป5น Composite Key เหมู$อนก�นมูาใช�เป5น Primary Key ข้องต์าราง

Foreign Key เป5นฟ9ลดื(ในต์ารางหน0%ง (ฝ>ง Many) ท�%มู�ควิามูส�มูพั�นธ์(ก�บฟ9ลดื(ท�%เป5น Primary Key ในอ�กต์ารางหน0%ง (ฝ>ง One ) โดืยีท�%ต์ารางท�+งสองมู�ควิามูส�มูพั�นธ์(แบบ One-to-Many ต์"อก�น

Page 11: - การออกแบบฐานข้อมูล
Page 12: - การออกแบบฐานข้อมูล

การออกแบบฐานข้�อมู�ล จ่ ดืประสงค(

ลดืควิามูซ�+าซ�อนข้องข้�อมู�ล เน$%องจ่ากถู�ามู�การเก-บข้�อมู�ลซ�+าซ�อนก�น จ่ะท�าให�การเปล�%ยีนแปลงข้�อมู�ลในต์ารางท�าไดื�สะดืวิก

ต์อบสนองควิามูต์�องการเร�ยีกใช�ข้�อมู�ลในเวิลาท�%ส� +นท�%ส ดื ช"วิยีให�ต์รวิจ่สอบควิามูถู�กต์�อง รวิมูท�+งจ่�ดืมูาต์รฐานข้องข้�อมู�ล

ไดื�สะดืวิก สามูารถูก�าหนดืล�กษณะการเข้�าถู0งข้�อมู�ลส�าหร�บผู้��ใช�แต์"ละ

ประเภทไดื� ท�าให�มู�ควิามูอ�สระระหวิ"างข้�อมู�ลก�บแอพัพัล�เคช�%น

Page 13: - การออกแบบฐานข้อมูล

ข้�"นต่อนการออกแบบฐานข้�อมู�ล ก�าหนดืเอนท�ต์�+ท กต์�วิในระบบฐานข้�อมู�ลน�+น ๆ ต์�วิอยี"างเช"น ในระบบฐาน

ข้�อมู�ลการส�%งซ$+อส�นค�า ประกอบดื�วิยีเอนท�ต์�+ใบรายีการส�%งซ$+อ ล�กค�าและส�นค�า ก�าหนดืค�ยี(หล�ก และแอต์ทร�บ�วิท(ต์"าง ๆ ข้องเอนท�ต์�+ ต์�วิอยี"างเช"น ค�ยี(หล�ก

ข้องเอนท�ต์�+ล�กค�า ค$อ รห�สล�กค�า ซ0%งเป5นแอต์ทร�บ�วิต์(ท�%เราก�าหนดืเป5นค�ยี(หล�กอยี�"แล�วิ ในการออกแบบระบบจ่ร�งเราควิรจ่ะสอบถูามูเก�%ยีวิก�บเร$%องน�+ให�ละเอ�ยีดืวิ"า แอต์ทร�บ�วิต์(ใดืสามูารถูเป5นค�ยี(หล�กไดื�บ�าง

ก�าหนดืควิามูส�มูพั�นธ์(ระหวิ"างเอนท�ต์�+ต์"าง ๆ เหล"าน�+น ส�าหร�บในต์�วิอยี"างระบบฐานข้�อมู�ลการส�%งซ$+อส�นค�าเอนท�ต์�+ล�กค�า และใบรายีการส�%งซ$+อ จ่ะมู�ควิามูส�มูพั�นธ์(ก�นแบบ One-to-Many และควิามูส�มูพั�นธ์(ระหวิ"างใบรายีการส�%งซ$+อ และส�นค�าเป5น Many-to-Many

ท�าการเปล�%ยีนเอนท�ต์�+ท�%ไดื�ไปอยี�"ในร�ปต์าราง โดืยีใช�กฎการ Normalization

Page 14: - การออกแบบฐานข้อมูล

การ Normalizationเป5นทฤษฏี�ท�%ใช�ในการท�าให�เอนท�ต์�+ และแอต์ทร�บ�วิท(ไดื�ออกแบบ

ไวิ� ถู�กจ่�ดืกล "มูเป5นต์ารางท�%มู�ควิามูส�มูพั�นธ์(ก�น จ่ ดืประสงค(ข้องการ Normalization ค$อ

ลดืควิามูซ�+าซ�อนข้องข้�อมู�ลในต์าราง เพั$%อจ่ะไดื�ไมู"ต์�องแก�ไข้ข้�อมู�ลหลายี ๆ ท�%

ท�าให�การเปล�%ยีนแปลงแก�ไข้โครงสร�างข้องต์ารางในภายีหล�งท�าให�ง"ายี ท�าให�การเปล�%ยีนแปลงโครงสร�างฐานข้�อมู�ลมู�ผู้ลกระทบต์"อแอพัพัล�

เคช�%นท�%เข้�าถู0ง ข้�อมู�ลในฐานข้�อมู�ลน�อยีท�%ส ดื

Page 15: - การออกแบบฐานข้อมูล

First Normal Form จ่ะต์�องไมู"มู�เซลใดืในต์ารางท�%มู�ค"าเก�นหน0%งค"า ดื�งน�+นเรา

สามูารถูท�าให�ต์ารางผู้"านไดื�ดื�วิยีการแยีกเซลท�%มู�ค"าเก�นหน0%งออกเป5นเรคอร(ดืใหมู"

Page 16: - การออกแบบฐานข้อมูล

First Normal Form หล�งการท�า First Normal Form

Page 17: - การออกแบบฐานข้อมูล

Second Normal Form จ่ะต์�องไมู"มู�แอต์ทร�บ�วิท(ท�%ไมู"ใช"ค�ยี(ต์�วิใดื (เราเร�ยีกวิ"า

Non-Key Attribute) ข้0+นก�บส"วินใดืส"วินหน0%งข้องค�ยี(หล�ก จ่ะต์�องข้0+นก�บค�ยี(หล�กอยี"างแท�จ่ร�งเท"าน�+น

เราสามูารถูท�าให�ต์ารางผู้"านข้�อท�% 2 ไดื�โดืยีแยีกฟ9ลดื(ท�%ข้0+นเฉพัาะก�บส"วินหน0%งข้องค�ยี(หล�กก�บฟ9ลดื(ท�%มู�นข้0+นดื�วิยีออกมูาสร�างเป5นต์ารางใหมู"

Page 18: - การออกแบบฐานข้อมูล

Second Normal Form ต์ารางต์�วิอยี"างไมู"ผู้"านข้�อท�% 2 เน$%องจ่ากมู�ฟ9ลดื(รห�ส

ล�กค�า วิ�นท�%ส� %ง และวิ�นท�%ส"ง จ่ะข้0+นก�บฟ9ลดื(รห�สการส�%งซ$+อเท"าน�+น ซ0%งเป5นส"วินหน0%งข้องค�ยี(หล�ก (รห�สการส�%งซ$+อและรห�สส�นค�า เป5นค�ยี(หล�กแบบ Composite Key) เมู$%อท�า Second Normal Form แล�วิเราจ่ะไดื�ต์าราง 2ต์าราง

Page 19: - การออกแบบฐานข้อมูล

Second Normal Form หล�งการท�า Second Normal Form

Page 20: - การออกแบบฐานข้อมูล

Third Normal Form จ่ะต์�องไมู"มู�แอต์ทร�บ�วิท(ใดืในต์ารางข้0+นก�บแอต์ทร�บ�วิท(

อ$%นท�%ไมู"ใช"ค�ยี(หล�ก หร$อค�ยี(ค�"แข้"ง จ่ากท�%กล"าวิมูา เราสามูารถูท�าให�ต์ารางข้องเราผู้"านไดื�ดื�วิยีการแยีกฟ9ลดื(ท�%ข้0+นก�บฟ9ลดื(อ$%น ๆ น�+นออกมูาเป5นต์ารางใหมู" และค�ยี(หล�กข้องต์ารางใหมู" จ่ะเป5นฟ9ลดื(ท�%ฟ9ลดื(น�+นข้0+นดื�วิยี

Page 21: - การออกแบบฐานข้อมูล

ต์�วิอยี"าง Third Normal Form

Page 22: - การออกแบบฐานข้อมูล
Page 23: - การออกแบบฐานข้อมูล