You are on page 1of 85

Microsoft Access 2007

สาขาวิชาคอมพิวเตอร์ธรุ กิจ
มหาวิทยาลัยราชภัฏเชียงใหม่
ฐานข้อมูล

• ฐานข้อมูล (Database) หมายถึง วิธกี ารจัดเก็บข้อมูลอย่างมีระเบียบ


และเป็ นระบบ โดยใช้เครือ่ งคอมพิวเตอร์มาเป็ นตัวช่วย สามารถเพิม่
ข้อมูล ลบข้อมูล สืบค้นข้อมูล รวมถึงการวิเคราะห์ขอ้ มูล
• เช่น ระบบการขายสินค้าในซูเปอร์มาร์เก็ต มีการจัดเก็บสินค้าแยก
เป็ นหมวดหมู่ มีการกาหนดรหัสสินค้า และมีการกาหนดราคาและ
ส่วนลดอย่างชัดเจน ในขณะทีเ่ ราซื้อสินค้าก็จะมีพนักงานใช้เครื่อง
อ่านบาร์โค้ดทีต่ วั สินค้า ก็จะทราบชื่อสินค้าและราคา ทาให้คดิ เงินได้
อย่างถูกต้องและรวดเร็ว
รู้จกั กับ Access

• Access เป็ นโปรแกรมที่ใช้จดั การกับฐานข้อมูลเชิงสัมพันธ์


(Relational Database) ประกอบไปด้วยตารางหลายๆ ตารางทีม่ ี
ความสัมพันธ์กนั เช่น ตารางข้อมูลของลูกค้ากับตารางสินค้า
• จุดเด่นของ Access คือ ใช้งานง่าย (เมื่อเทียบกับโปรแกรม
ประเภทเดียวกัน) และมีความยืดหยุ่นในการใช้งาน เหมาะสาหรับ
การจัดการข้อมูลในเครือ่ งคอมพิวเตอร์ ไม่ว่าจะเป็ นการค้นหาข้อมูล
การคานวณค่า การนาข้อมูลมาวิเคราะห์ การจัดทารายงานสรุป และ
การเขียนโปรแกรมเพือ่ พัฒนาเป็ นแอพพลิเคชันต่อไป
วิธีเก็บข้อมูลใน Access

Access เก็บข้อมูลต่างๆ ลงในตาราง ซึง่ ประกอบด้วย แถว (Row)


และคอลัมน์ (Column) โดยเรียกข้อมูลในแต่ละคอลัมน์ของตารางว่า
ฟิลด์ (Field) และเรียกแต่ละแถวในตารางว่า เรคอร์ด (Record)
• ฟิลด์ - สิง่ ต่างๆ ทีอ่ า้ งอิงถึงในฐานข้อมูลเช่น ชือ่ คนนับเป็ น 1 ฟิลด์
• เรคอร์ด - การรวมกันของแต่ละ 1 ฟิลด์ เช่น รายละเอียดของคน
หนึ่งคนในสมุดโทรศัพท์ เรียกว่าเป็ น 1 เรคอร์ด (การรวมกันของ
หลายๆ ฟิลด์)
• ตาราง - รายละเอียดของคนทุกคนทีอ่ ยูใ่ นสมุดโทรศัพท์ ซึง่ สมุด
โทรศัพท์ 1 เล่ม คือ 1 ตาราง(การรวมกันของหลายๆ เรคอร์ด)
Column =Fields(Attribute)

NAME ADDRESS TELEPHONE

SOMBAT P. BANGKOK 478-9876


Record SUCHADA M. CHIANGMAI 426-9765
Table
(Tuple)
NILORN C. LAMPHUN 205-1335

แต่ละ Column จะถือเป็ น 1 Field (Attribute)


แต่ละ Row จะถือเป็ น 1 Record (Tuple)
บรรทัดแรก จะต้องเป็ นชือ่ ฟิลด์เสมอ
ทัง้ หมดรวมเรียกว่าเป็ น Table
คาศัพท์ที่ควรรู้จกั
เอนทิตี (Entity)
• เป็ น ค าที่อ้า งอิง ถึง บุ ค คล สถานที่ และสิ่ง ของต่ า ง ๆ เช่ น สิน ค้า
ใบสังซื
่ ้อ และลูกค้าเป็ นต้น โดยแต่ละเอนทิตจี ะต้องเป็ นอิสระต่อกัน
แต่สามารถมีความสัมพันธ์กบั สิง่ อื่นๆ ได้
• ถ้าสนใจในการสร้างระบบฐานข้อมูลการสังซื ่ อ้ สินค้า
ลูกค ้า(Customer)

เอนทิตขี องระบบนี้จะประกอบไปด้วย ใบสงั่ ซอ


ื้ (Orders)

เอนทิตลี กู ค้า ใบสังซื


่ อ้ สินค้า กับสินค้า ดังรูป
ิ ค ้า (Products)
สน
แอตทริบิวต์ (Attribute)
• สิง่ ที่ใช้อธิบายรายละเอียดของแต่ละเอนทิตี เช่น แอตทริบวิ ต์ของ
เอนทิตลี กู ค้า จะมีช่อื ทีอ่ ยู่ และรหัสไปรษณีย์ ส่วนแอตทริบวิ ต์ใบสัง่
ซื้อ จะมีรหัสใบสังซื
่ ้อ วันที่สงซื ั ่ ้อ ชื่อสินค้า จานวนสินค้าที่สงั ่ และ
ราคาสินค้า เป็ นต้น ซึง่ เราสามารถแสดงเอนทิตี รวมทัง้ แอตทริบวิ ต์
ได้ ดังรูป
ชือ่ เอนทิต้ี ลูกค ้า(Customer) ใบสงั่ ซอ
ื้ (Orders) ิ ค ้า (Products)
สน

รหัสสน ิ ค ้า
รหัสลูกค ้า รหัสใบสงั่ ซอ ื้ ชอื่ สน ิ ค ้า
ื่ ลูกค ้า
ชอ ่ งั่ สน
วันทีส ิ ค ้า ราคาต่อหน่วย
ทีอ่ ยูล
่ ก
ู ค ้า วันทีส่ ง่ สนิ ค ้า รวมภาษี ด ้วยหรือไม่
แอตทริบวิ ต์ รหัสไปรษณีย ์
หมายเลขโทรศพ ั ท์
รหัสลูกค ้าทีส ่ งั่ จานวนสน ิ ค ้า
รหัสสน ิ ค ้า รหัสสน ิ ค ้า
ทัง้ หมด จานวน ชอ ื่ สนิ ค ้า
ความสัมพันธ์ (Relationships)
• คือ ความสัมพันธ์ระหว่างเอนทิตตี ่าง ๆ ในระบบ เช่น ในระบบการ
สังซื
่ ้อ สิน ค้า จะประกอบด้ว ย เอนทิตีใ บสังซื่ ้อ สิน ค้า และเอนทิตี
ลูกค้า ซึง่ มีความสัมพันธ์จากลูกค้าไปยังใบสังซื
่ อ้ สินค้าเป็ นแบบหนึ่ง
ต่อกลุ่ม (One-to-many) หมายความว่า ลูกค้าสามารถสังซื ่ ้อสินค้า
ได้หลาย ๆ ครัง้ คือมีใบสังสิ่ นค้าหลายใบนัน่ เอง แต่ใบสังซื ่ ้อแต่ละ
ใบจะมาจากลูก ค้า เพีย งรายเดีย วเท่ า นัน้ เป็ น ต้น ความสัม พัน ธ์
ระหว่างเอนทิตสี ามารถแสดงได้ดงั รูป 1 N ใบสงั่ ซอ
ื้
ลูกค ้า(Customer) (Orders)
รหัสลูกค ้า รหัสใบสงั่ ซอ ื้
ื่ ลูกค ้า
ชอ ่ งั่ สน
วันทีส ิ ค ้า
ทีอ่ ยูล
่ ก
ู ค ้า วันทีส่ ง่ สนิ ค ้า
รหัสไปรษณีย ์ รหัสลูกค ้าทีส ่ งั่
หมายเลขโทรศพ ั ท์ รหัสสน ิ ค ้า
จานวน
ชนิดของความสัมพันธ์ (Relationship)
• การออกแบบฐานข้อมูลทีม่ โี ครงสร้างเชิงสัมพันธ์ ส่วนสาคัญ
คือ การออกแบบเทเบิลเพือ่ เก็บข้อมูลกลุม่ ต่าง ๆ โดยจะต้อง
สามารถกาหนดความสัมพันธ์ระหว่างกลุ่มข้อมูลเหล่านัน้ ได้
ซึง่ จะต้องวิเคราะห์ให้ได้วา่ ข้อมูลเหล่านัน้ มีความสัมพันธ์กนั
อย่างไร
• ความสัมพันธ์ระหว่างเทเบิลมีดว้ ยกันทัง้ หมด 3 ลักษณะคือ
▫ ความสัมพันธ์แบบ 1:1 (One-to-One)
▫ ความสัมพันธ์แบบ 1:N (One-to-Many)
▫ ความสัมพันธ์แบบ M:N (Many-to-Many)
ความสัมพันธ์แบบ 1:1 (One-to-One)
• ความสัมพันธ์แบบ 1:1 (One-to-One)
เป็ นความสัมพันธ์ท่ี 1 เรคอร์ดในเทเบิลใดๆ สามารถจับคู่
กับเรคอร์ดในอีกเทเบิลได้เพียงเรคอร์ดเดียวเท่านัน้ แบบตัว
ต่อตัว รายละเอียดส่วนบุคคล
รหัส ชื่อ นามสกุล ที่อยู่ โทรศัพท์ .......
เงินเดือนของแต่ละบุคคล 1001 Michale Suyama London (77)555-9888 ……
รหัส เงิ นเดือน เลขที่บตั ร 1 1002 Laura Callahan Seattle (71)555-7654 ……
ประกันสังคม
1003 RObert King London (48)876-4324 ……
1001 25,000 324-45-9687
1004 Anne Dodsworth London (75)764-8732 ……
1002 20,000 245-37-7654 1
1003 30,000 459-87-897
1004 35,000 895-87-7545
1005 33,000 678-54-8754
ความสัมพันธ์แบบ 1:N (One-to-Many)
• ความสัมพันธ์แบบ 1:N (One-to-Many)
เป็ นความสัมพันธ์ทเ่ี รคอร์ดในเทเบิลใดๆ สามารถจับคู่กบั เร
คอร์ดในอีกเทเบิลหนึ่งได้หลายเรคอร์ด เช่น ความสัมพันธ์
ระหว่างเทเบิลลูกค้า และเทเบิลการสังซื่ อ้ ลูกค้าคนหนึ่งจะมี
ใบสังซื
่ อ้ สินค้าได้หลายใบ ในขณะทีใ่ บสังซื
่ อ้ แต่ละใบ ต้องมา
จากลูกค้าเพียงคนเดียวเท่านัน้ ลูกค้า
การสังซื
่ อ้
รหัสสังซื
่ อ้ รหัสลูกค้า รหัสสินค้า ….. รหัสลูกค้า ชื่อบริษทั ทีอ่ ยุ่ …..
12010 1001 ME-99 ….. 1001 Sony Japan …..

12013 1003 BE-88 ….. 1 1002 Beverage London …..

12014 1002 NE-87 ….. 1003 Chop Bern …..

12105 1003 NE-87 ….. N


ความสัมพันธ์แบบ M:N (Many-to-Many)
• ความสัมพันธ์แบบ M:N (Many-to-Many)
คือลักษณะทีเ่ รคอร์ดหลายๆ เรคอร์ดในเทเบิลหนึ่ง มี
ความสัมพันธ์กบั อีกหลายๆ เรคอร์ดในอีกเทเบิลหนึ่งพร้อมกัน
เช่น ความสัมพันธ์ระหว่างเทเบิลลูกค้า และเทเบิลสินค้า ลูกค้า
หนึ่งคนสามารถซือ้ สินค้าได้หลายชนิด ในขณะทีส่ นิ ค้าแต่ละชนิด
ก็จะถูกซือ้ โดยลูกค้าหลาย ๆ คนได้ดว้ ย การสร้างความสัมพันธ์
ประเภทนี้ ต้องใช้เทเบิลอื่นมาช่วยเป็ นสะพานในการเชือ่ มโยง
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
เพือ่ เพิม่ ประสิทธิภาพในการจัดการฐานข้อมูล เช่นการอ้างอิง
การค้นหา การแก้ไขข้อมูลในแถวใด ๆ หรือการกาหนด
ความสัมพันธ์ระหว่าง เทเบิล ประเภทของคีย์ อาจแบ่งเป็ น 5
ประเภทหลัก คือ
1) คียห์ ลัก (Primary Key)
2) คียล์ าดับรอง (Secondary Key)
3) คียค์ แู่ ข่ง (Candidate Key)
4) คียร์ วม (Compound Key)
5) คียน์ อก (Foreign Key)
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์

1.คียห์ ลัก (Primary Key)


เป็ นแอททริบวิ ต์ทม่ี คี ุณสมบัตขิ องข้อมูลทีเ่ ป็ นค่าเอกลักษณ์
หรือมีคา่ ทีไ่ ม่ซ้าซ้อนกัน คุณสมบัตดิ งั กล่าวจะสามารถระบุวา่ ข้อมูล
นัน้ เป็ นข้อมูลของทูเพิล/เรคอร์ดใด แอททริบวิ ต์ทม่ี คี ุณสมบัตเิ ป็ นคีย์
หลักอาจ ประกอบด้วยหลายแอททริบิวต์/คอลัมน์ /ฟิลด์รวมกัน
เพือ่ ทีจ่ ะกาหนดค่าทีเ่ ป็ นเอกลักษณ์ได้ คียห์ ลักทีป่ ระกอบด้วยหลาย
แอททริบวิ ต์น้เี รียกว่า คียผ์ สม(Composite Key) นัน้ คือเมือ่ แอททริ
บิวต์แต่ละตัวประกอบกันจึงจะให้คา่ ทีเ่ ป็ นเอกลักษณ์หรือไม่ซ้าซ้อน
กันได้
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
2) คียล์ าดับรอง (Secondary Key)
หรือ บางครัง้ เรียกว่า อินเด็กซ์ (Index) ดัชนี ซึง่ นอกจาก
กาหนดคียห์ ลักให้กบั แต่ละ เทเบิล ยังสามารถใช้ อินเด็กซ์
เป็ นคียช์ ว่ ยในการค้นหาหรือจัดเรียกกลุม่ แถวทีม่ จี านวนมาก ๆ ไ
ด้ อย่างรวดเร็ว เช่น การค้นหาชือ่ และนามสกุลของพนักงานในเท
เบิลพนักงานเป็ น คียห์ ลักอยูแ่ ล้ว
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
พน ักงาน
รห ัสพน ักงาน ชอื่ นามสกุล ทีอ่ ยู่ ั
เบอร์โทรศพท์
1001 Michael Suyana Conventry Hourse London 02-735-8564
1002 Laura Callahan 4726 Ave.N.E Seattle 02-856-9874
1003 Robert King Edgeham Hollow London 02-896-9632
1004 Anne Dodsworth 7 Hondstood RD. London 01-589-3658

INDEX
ื่
ชอ นามสกุล
Anne Dodsworth
Laura Callahan
Michael Suyana
Robert King
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
3) คียค์ ่แู ข่ง (Candidate Key)
เป็ น คียท์ ม่ี คี ุณสมบัตทิ ส่ี ามารถเป็ นแทน คียห์ ลักได้
ถ้าจากข้อมูลในตาราง พนักงานถ้ามันใจว่ ่ า ชือ่ พนักงาน ไม่ม ี
ชือ่ ซ้าสามารถ สามารถนาcolumn ชือ่ มาเป็ น Secondary คีย์
ได้
พน ักงาน
รห ัสพน ักงาน ชอื่ นามสกุล ทีอ่ ยู่ ั
เบอร์โทรศพท์
1001 Michael Suyana Conventry Hourse London 02-735-8564
1002 Laura Callahan 4726 Ave.N.E Seattle 02-856-9874
1003 Robert King Edgeham Hollow London 02-896-9632
1004 Anne Dodsworth 7 Hondstood RD. London 01-589-3658

Candidate Key
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
4) คียร์ วม (Compound Key)
เป็ น คียท์ เ่ี กิดจากการนาคอลัมน์หลาย ๆ คอลัมน์มา
รวมกัน เพือ่ ให้คุณสมบัตเิ ป็ นคียห์ ลักคือ ไม่มขี อ้ มูลซ้ากัน และไม่
มีคา่ ว่าง (NULL) เนื่องจากการบางครัง้ การสร้างคียห์ ลักจาก
คอลัมน์เดียวเดียวอาจมีโอกาสทีจ่ ะเกิดข้อมูลซ้ากันได้
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
คียร์ วม (Compound Key)
พน ักงาน
ชอื่ นามสกุล ทีอ่ ยู่ ั
เบอร์โทรศพท์
Michael Suyana Conventry Hourse London 02-735-8564
Laura Callahan 4726 Ave.N.E Seattle 02-856-9874
Robert King Edgeham Hollow London 02-896-9632
Anne Dodsworth 7 Hondstood RD. London 01-589-3658

(หากไม่มี รหัสพนักงาน) อาจใช้คอลัมน์ ชื่อและนามสกุลรวมกันเป็ น Primary Key ได้


สมมุติฐานว่าจะไม่มีคนใช้ชื่อ และ นามสกุลเดียวกันเรียกว่า Compound Key
ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์
5) คียน์ อก (Foreign Key)
เป็ นแอททริบวิ ต์ในรีเลชันหนึ ่ ่งทีใ่ ช้ในการอ้างอิงถึง
แอททริบวิ ต์เดียวกันในอีกรีเลชันหนึ ่ ่ง โดยทีแ่ อททริบวิ ต์น้จี ะมี
คุณสมบัตเิ ป็ นคียห์ ลักในรีเลชันที
่ ถ่ กู อ้างอิงถึง การทีม่ แี อททริบวิ ต์น้ี
ปรากฏอยูใ่ นรีเลชันทั่ ง้ สองก็เพือ่ ประโยชน์ในการเชือ่ มโยงข้อมูลซึง่
กันและกันนันเอง

ชนิดของคียใ์ นฐานข้อมูลเชิงสัมพันธ์

Attribute ใดคือ คียน์ อก (Foreign Key) รหัสนักศึกษา


??
รูปตัวอย่างของคีย์

N ตารางรายการสงิ่ สน
ิ ค ้า
1 ตารางใบสงั่ สน
ิ ค ้า
ื้
รห ัสการสง่ ั ซอ ิ ค้า
รห ัสสน จานวน สว่ นลด(%)
รห ัสการ รห ัสลูกค้า ่ ง่ ั
ว ันทีส ว ันทีส ่
่ ง
ื้
สง่ ั ซอ 10258 005 8 25.00%
10258 015 21/10/xx 28/10/xx 10258 0100 8 0.00%
10265 181 21/10/xx 27/10/xx
10258 0125 15 0.00%
10278 015 24/10/xx 3/11/xx
10265 0005 31 0.00%

10265 0010 15 0.00%


Primary Key
Candidate Key Foreign Key

รห ัสจ ังหว ัด ชอื่ จานวน Composite Key


จ ังหว ัด ประชากร
001 ี งราย
เชย 4,500,000
002 ี งใหม่
เชย 5,000,000
003 ลาพูน 2,500,000
กฎที่ใช้จดั เก็บในฐานข้อมูลเชิงสัมพันธ์

ในการจัดเก็บข้อมูลในฐานข้อมูลเชิงสัมพันธ์นนั ้ มี
ข้อกาหนดเพือ่ สร้างความถูกต้องสมบูรณ์ของข้อมูล (Integrity) ใน
ฐานข้อมูลดังนี้
กฎที่ใช้จดั เก็บในฐานข้อมูลเชิงสัมพันธ์

กฎข้อที่ 1 ทุกเทเบิลต้องมีคียห์ ลัก (Primary Key)


Phone Book Phone Book

NAME TELEPHONE ID NAME TELEPHONE

Anna 02-456-6985 1001 Anna 02-456-6985

Laura 02-865-7456 1002 Laura 02-865-7456

Michael 02-856-6321 1003 Michael 02-856-6321


Anna 02-549-9856 1004 Anna 02-549-9856
กฎที่ใช้จดั เก็บในฐานข้อมูลเชิงสัมพันธ์

กฎข้อที่ 2

ในการสร้างความสัมพันธ์ระหว่างเทเบิล 2 เทเบิลใน
ฐานข้อมูลเชิงสัมพันธ์สามารถกาหนด (Foreign Key) ซึง่
อาจจะมีคา่ NULL (ไม่มขี อ้ มูล) หรือมีคา่ ตรงกับคียห์ ลักในอีก
เทเบิลหนึ่งทีม่ คี วามสัมพันธ์กนั ด้วย
กฎที่ใช้จดั เก็บในฐานข้อมูลเชิงสัมพันธ์
Employee
EMP_ID NAME TELEPHONE DEP_NO
1001 Anna 02-456-6985 100
1002 Laura 02-865-7456 300
1003 Michael 02-856-6321 NULL
1004 Anna 02-549-9856 200

Department
DEP_NO DEP_NAME
100 Accounting
200 Marking
300 Computer
400 Sale
การออกแบบฐานข้อมูล
วัตถุประสงค์ของการออกแบบฐานข้อมูล
• เพือ่ ลดความซ้าซ้อนในฐานข้อมูล
• ตอบสนองความจาเป็ นในการเรียกใช้ขอ้ มูลในเวลาทีส่ นั ้ ทีส่ ดุ
• ช่วยให้ตรวจสอบความถูกต้อง และจัดมาตรฐานข้อมูลได้
สะดวก
• เพือ่ กาหนดลักษณะการเข้าถึงข้อมูลสาหรับผูใ้ ช้แต่ละประเภท
• ทาให้มคี วามอิสระระหว่างข้อมูลกับแอพพลิเคชัน่
• ขัน้ ตอนการแบบฐานข้อมูล
▫ กาหนดเอนทิตี (ตาราง)ทุกตัวในระบบฐานข้อมูลนัน้
▫ กาหนดคียห์ ลัก และแอตทริบวิ ต์ (ฟิลด์)ต่าง ๆ
▫ กาหนดความสัมพันธ์ระหว่างเอนทิตี (ตาราง)ต่าง ๆ
▫ ทาการเปลีย่ นเอนทิตี ได้ไปอยูใ่ นรูปตารางทีม่ ี
ความสัมพันธ์กนั
N:M ิ ค ้า (Products)
สน
ลูกค ้า(Customer) ใบสงั่ ซอ
ื้

รหัสลูกค ้า
1:N (Orders) รหัสสน
ชอื่ สน
ิ ค ้า
ิ ค ้า
รหัสใบสงั่ ซอ ื้
ื่ ลูกค ้า
ชอ ราคาต่อหน่วย
่ งั่ สน
วันทีส ิ ค ้า
ทีอ่ ยูล
่ ก
ู ค ้า รวมภาษี ด ้วยหรือไม่
วันทีส่ ง่ สนิ ค ้า
รหัสไปรษณีย ์ จานวนสน ิ ค ้า
รหัสลูกค ้าทีส ่ งั่
หมายเลขโทรศพ ั ท์ รหัสสน ิ ค ้า
รหัสสน ิ ค ้า
ชอ ื่ สนิ ค ้า
จานวน
Microsoft Access 2007
ส่วนประกอบของ Microsoft Access 2007
• Quick Access เก็บปุม่ คาสังที
่ ใ่ ช้งานบ่อยๆ โดยเราสามารถเพิม่ หรือ
ลบปุม่ คาสังตามความเหมาะสม

• Ribbon เป็ นทีเ่ ก็บคาสังและปุ
่ ม่ ทีใ่ ช้ใน Access โดยแบ่งเป็ นแท็บและ
ในแต่ละแท็บยังแบ่งคาสังเอาไว้
่ เป็ นกลุ่มย่อย เพือ่ สะดวกต่อการใช้
งาน
• Navigation Pane จะแสดงชื่อฐานข้อมูล และแสดง Object ทีเ่ ป็ น
ส่วนประกอบต่างๆ ของ Access เช่น ตาราง คิวรี ฟอร์ม รายงาน
ฯลฯ
• Tabbed Documents ในกรณีทเ่ี ราเปิดตาราง ฟอร์ม คิวรี รายงาน
รวมถึง Object อื่น จะแสดง Object ทีเ่ ปิดอยูท่ งั ้ หมด
• Status bar จะแสดงข้อมูลบางอย่างและปุม่ สาหรับสลับมุมมอง
ชุดเครื่องมือของโปรแกรม Access 2007

• แท็บ Home (หน้าแรก)


เป็ นแท็บทีร่ วบรวมชุดเครือ่ งมือพืน้ ฐานทีผ่ ใู้ ช้งานส่วนมากต้องใช้
บ่อยๆ เป็ นประจา เช่น การเปลีย่ นมุมมอง การตัดและแปะข้อมูล
การเปลีย่ นรูปแบบตัวอักษร การเพิม่ ลบข้อมูลในตาราง การ
กรองข้อมูลและการค้นหาข้อมูล
ชุดเครื่องมือของโปรแกรม Access 2007

• แท็บ Create (สร้าง)


เป็ นแท็บทีใ่ ช้สาหรับสร้างออบเจ็กต์หรือองค์ประกอบต่างๆ ลงไป
ในฐานข้อมูล อันได้แก่ ตาราง ฟอร์ม รายงาน และคิวรี รวมถึง
Macro
ชุดเครื่องมือของโปรแกรม Access 2007

• แท็บ External Data (ข้อมูลภายนอก)


เป็ นแท็บทีม่ คี าสังเกี
่ ย่ วกับการแลกเปลีย่ นข้อมูลภายนอก เช่น
การนาข้อมูลจากไฟล์อ่นื ของ Access หรือจากไฟล์ Excel มาใช้
การ save ฐานข้อมูลให้เป็ นตาราง Excel หรือการ save เป็ น
เอกสาร Word เป็ นต้น
ชุดเครื่องมือของโปรแกรม Access 2007

• แท็บ Database Tools (เครือ่ งมือฐานข้อมูล)


เป็ นแท็บทีม่ คี าสังในการจั
่ ดการฐานข้อมูล เช่น การสร้าง Macro
และเขียนคาสัง่ การกาหนดความสัมพันธ์ระหว่างตาราง การ
วิเคราะห์ขอ้ มูล การจัดการโยกย้ายฐานข้อมูล และการเข้ารหัส
ฐานข้อมูล
ขัน้ ตอนการสร้างฐานข้อมูลด้วย Access
ขัน้ ตอนการสร้างฐานข้อมูลด้วย Access มี 5 ขัน้ ตอน
• ขัน้ ตอนที่ 1 ออกแบบฐานข้อมูล
การออกแบบฐานข้อมูล จะเริม่ จากพิจารณาวัตถุประสงค์ของการ
ใช้งานฐานข้อมูล จากนัน้ นาเอาข้อมูลทีต่ อ้ งการจัดเก็บ ตลอดจน
ข้อมูลทีต่ อ้ งใช้งานทัง้ หมดมาอ้างอิงกับทฤษฎีการออกแบบ
ฐานข้อมูล เพือ่ ให้ได้ขอ้ มูลทีถ่ กู ต้อง ง่ายต่อการใช้งาน สะดวก
ต่อการบารุงรักษา ตลอดจนสามารถใช้งานร่วมกับฐานข้อมูล
อื่นๆ
ขัน้ ตอนการสร้างฐานข้อมูลด้วย Access
• ขัน้ ตอนที่ 2 สร้างตารางและกาหนดความสัมพันธ์
หลังจากออกแบบฐานข้อมูลเรียบร้อย ต่อไปคือการสร้างตารางที่
เกีย่ วข้อง เพือ่ ใช้สาหรับเก็บข้อมูลตามทีไ่ ด้ออกแบบไว้ จากนัน้
กาหนดความสัมพันธ์ระหว่างตารางตามความเหมาะสม
• ขัน้ ตอนที่ 3 สร้างฟอร์มสาหรับกรอกข้อมูล
การกรอกข้อมูลลงไปในตาราง ซึง่ การกรอกข้อมูลลงในตารางนัน้
ไม่คอ่ ยสะดวกและอาจผิดพลาดได้งา่ ย ทางทีด่ กี ว่าคือสร้าง
ฟอร์มสาหรับกรอกข้อมูลโดยตรง โดยฟอร์มจะมีลกั ษณะทีเ่ อือ้
ต่อการกรอกข้อมูลลงในฐานข้อมูล ทาให้ผกู้ รอกข้อมูลสามารถ
ทางานได้งา่ ยและสะดวกยิง่ ขึน้ อีกทัง้ ยังลดความผิดพลาดได้
ขัน้ ตอนการสร้างฐานข้อมูลด้วย Access
• ขัน้ ตอนที่ 4 สร้างคิวรีเพื่อดึงข้อมูลที่ต้องการ
หลังจากกรอกข้อมูลลงในฐานข้อมูลเรียบร้อย จะพบว่าในการใช้
งานจริง เราไม่ได้ใช้งานข้อมูลพร้อมกันทัง้ หมด ใช้แค่เพียง
บางส่วนเท่านัน้ ด้วยเหตุน้ี Access จึงได้เตรียมเครือ่ งมือและคาสัง่
สาหรับการดึงเอาข้อมูลเฉพาะทีต่ อ้ งการ ซึง่ ก็คอื Query (คิวรี)
• ขัน้ ตอนที่ 5 จัดทารายงาน
ในการใช้งานฐานข้อมูล หากต้องสรุปผล เราสามารถสรุปผลด้วย
การทารายงาน ข้อมูลทีจ่ ะนามาจัดทารายงานนัน้ สามารถดึงข้อมูล
ลงมาจากตาราง หรือนาข้อมูลมาจากคิวรีทไ่ี ด้กลันกรองข้
่ อมูลไว้
แล้วก็ได้
ขัน้ ตอนการสร้างฐานข้อมูลด้วย Access
ขัน้ ตอนการออกแบบฐานข้อมูล สามารถแบ่งเป็ น 6 ขัน้ ตอนดังนี้
Step 1: กาหนดวัตถุประสงค์ในการออกแบบฐานข้อมูล

Step 2: กาหนดตารางทีต่ อ้ งใช้เก็บข้อมูล

Step 3: กาหนดว่าในแต่ละตารางจะต้องมีฟิลด์อะไรบ้าง

Step 4: กาหนดคียห์ ลัก

Step 5: ทา Normalization

Step 6: กาหนดความสัมพันธ์ระหว่างตาราง
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ขัน้ ตอนแรกให้กาหนดวัตถุประสงค์ของฐานข้อมูลก่อน
วิธกี ารคือ “การซือ้ หนังสือแต่ละครัง้ มีอะไรเกีย่ วข้องบ้าง”
คนซือ้ สินค้าที่
คิดราคาสินค้า รับเงินมา ทอนเงิน
ต้องการ
จากนัน้ เริ่มออกแบบฐานข้อมูล
จากตัวอย่างให้พจิ ารณาว่า “เมือ่ มีลกู ค้ามาซือ้ สินค้า ผูข้ ายต้อง
สามารถเลือกรายการสินค้าจากเครือ่ งคอมพิวเตอร์ มีการแสดง
รายละเอียดของสินค้า มีการคานวณยอดเงินอัตโนมัติ คานวณเงิน
ทอน พิมพ์ใบเสร็จรับเงิน และสามารถสรุปยอดขายในแต่ละวัน
หรือในแต่ละสัปดาห์ได้
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางที่ใช้เก็บข้อมูล
เมือ่ ทราบวัตถุประสงค์ของระบบฐานข้อมูล ให้พจิ ารณาว่าเราจะ
เก็บข้อมูลอะไรบ้าง คือ การสร้างตารางเพือ่ รองรับข้อมูลทัง้ หมด
ลูกค้า
ตารางลูกค้า

การซือ้
ตารางซือ้ สินค้า ตารางรายละเอียดการซือ้

สินค้า
ตารางสินค้า
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
กาหนดฟิลด์ในตาราง
• ตารางลูกค้า เก็บข้อมูลเกีย่ วกับลูกค้าทัง้ หมด เช่น ชือ่ นามสกุล
รหัสลูกค้า ชื่อลูกค้า นามสกุลลูกค้า ที่อยู่ เบอร์โทรศัพท์

• ตารางสินค้า เก็บข้อมูลเกีย่ วกับสินค้า เช่น รหัสสินค้า ชือ่ สินค้า


ราคา รวมถึงส่วนลดของหนังสือแต่ละเล่ม โดยส่วนใหญ่แล้ว
หนังสือแต่ละเล่มจะมีสว่ นลดไม่เท่ากัน เช่น หนังสือเก่าทีใ่ กล้
หมดอายุแล้วต้องจูงใจด้วยการให้สว่ นลดทีม่ ากกว่าหนังสือใหม่
รหัสสินค้า ชื่อสินค้า ราคา ส่วนลด
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
• ตารางซือ้ สินค้า เก็บข้อมูลเกีย่ วกับการซือ้ ของแต่ละครัง้ เช่น
เลขทีใ่ บสังซื
่ อ้ ใครคือผูซ้ อ้ื สินค้า และซือ้ สินค้าเมือ่ ใด
รหัสการซื้อ รหัสลูกค้า วันที่ซื้อสินค้า

• ตารางรายละเอียดการซือ้ เก็บรายละเอียดของการซือ้ แต่ละครัง้


ว่ามีการซือ้ สินค้าอะไรบ้าง ซือ้ ไปในราคาเท่าใด (หลังจากหัก
ส่วนลดไปแล้ว) รวมทัง้ ได้ซอ้ื สินค้าไปอย่างละกีช่ น้ิ
รหัสรายละเอียดการซื้อ รหัสการซื้อ รหัสสินค้า ราคาหลังหักส่วนลด จานวนสินค้า
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
กาหนดคียห์ ลัก (Primary Key)
ในแต่ละตารางจะต้องมีฟิลด์ทเ่ี ก็บข้อมูลทีไ่ ม่ซ้ากัน เช่นพิจารณา
ฟิลด์แรกคือ รหัสลูกค้า ไม่ซ้าแน่นอน ส่วนฟิลด์ทส่ี องคือ ชือ่
ลูกค้าอาจจะซ้ากันได้ ฟิลด์ทส่ี ามคือนามสกุลลูกค้า ก็สามารถซ้า
กันได้ถา้ ลูกค้าเป็ นพีน่ ้องกัน ฟิลด์ทอ่ี ยูแ่ ละเบอร์โทรศัพท์กซ็ ้ากัน
ได้ ดังนัน้ ต้องใช้ฟิลด์รหัสลูกค้า เป็ น Primary Key
รหัสลูกค้า ชื่อลูกค้า นามสกุลลูกค้า ที่อยู่ เบอร์โทรศัพท์
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization
เป็ นกระบวนการพิจารณาปรับเปลีย่ นตาราง เพือ่ ให้มคี วาม
ถูกต้องและลดความซ้าซ้อนกันของข้อมูล หลีกเลีย่ งปญั หาทีอ่ า
จะเกิดขึน้ มาภายหลัง ในการออกแบบฐานข้อมูลการ
Normalization ถูกแบ่งออกเป็ น 5 ระดับ โดยเริม่ จาก 1NF,
2NF, 3NF, 4NF และ 5NF โดยในแต่ละระดับจะมีขอ้ กาหนดใน
การปรับเปลีย่ นตารางเพือ่ ให้ได้ตารางทีม่ คี วามถูกต้อง
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization ระดับที่ 1 (1NF=First Normal Form)
มีขอ้ กาหนดว่า ทุกๆ เซลล์ในตารางจะต้องเก็บค่าเพียงค่า
เดียวเท่านัน้ ยกตัวอย่างการ 1NF ตารางสังซื
่ อ้ ทีอ่ อกแบบดังนี้

รหัสการซื้อ รหัสลูกค้า วันที่ซื้อสินค้า รหัสสินค้า ราคาขาย จานวนสินค้า


001 สมชาย001 12 ส.ค.54 B001 135 บาท 1 ชิน้
T001 135 บาท 1 ชิน้
002 มานี002 14 ส.ค.54 M001 535 บาท 1 ชิน้
003 มานะ003 15 ส.ค.54 B001 135 บาท 1 ชิน้
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
จากตัวอย่างตารางการสังซื ่ อ้ มีขอ้ มูลในฟิลด์รหัสลูกค้าและวันทีซ่ อ้ื
สินค้าทีเ่ ก็บข้อมูลมากกว่าหนึ่งเซลล์ ซึง่ ไม่เป็ นตามกฎเกณฑ์
ของระดับที่ 1 ดังนัน้ จึงต้องปรับตารางดังนี้

รหัสการซื้อ รหัสลูกค้า วันที่ซื้อสินค้า รหัสสินค้า ราคาขาย จานวนสินค้า


001 สมชาย001 12 ส.ค.54 B001 135 บาท 1 ชิน้
001 สมชาย001 12 ส.ค.54 T001 135 บาท 1 ชิน้
002 มานี002 14 ส.ค.54 M001 535 บาท 1 ชิน้
003 มานะ003 15 ส.ค.54 B001 135 บาท 1 ชิน้
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization ระดับที่ 2
มีขอ้ กาหนดว่า จะต้องผ่าน 1NF และฟิลด์อื่นๆ ที่ไม่ใช่คีย์
หลัก (Primary Key) จะต้องขึน้ กับคียห์ ลักเพียงอย่างเดียว
เท่านัน้ และในกรณี ที่มีคียร์ ว่ ม (Composition Key) ฟิลด์
อื่นๆ ก็ต้องขึน้ อยู่กบั คียร์ ว่ มเหล่านัน้ ไม่ใช่บางส่วนของคีย์
ดังนัน้ ตารางการสังซื
่ อ้ จะถูกแบ่งออกเป็ น 2 ตาราง ได้แก่ ตาราง
สังซื
่ อ้ และตารางรายละเอียดการสังซื ่ อ้ ดังนี้

คียร์ ว่ มคือการนาฟิลด์ตงั ้ แต่ 2 ฟิลด์มาทาเป็ นคีย์ ตารางรายละเอียดการสังซื ่ อ้ ไม่สามารถเลือก


ฟิลด์ใดๆ มาเป็ นคียไ์ ด้เพราะซ้ากัน แต่นาฟิลด์รหัสใบสังซื ่ อ้ กับรหัสสินค้ามาทาเป็ นคียร์ ว่ ม ข้อมูล
จะไม่ซ้ากัน สามารถใช้เป็ นคียไ์ ด้ทนั ที
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization ระดับที่ 2
ตารางการสังซื
่ อ้ รหัสการซื้อ รหัสลูกค้า วันที่ซื้อสินค้า
001 สมชาย001 12 ส.ค.54
001 สมชาย001 12 ส.ค.54
002 มานี002 14 ส.ค.54
003 มานะ003 15 ส.ค.54
ตารางรายละเอียดการสังซื
่ อ้
รหัสการซื้อ รหัสสินค้า ราคาขาย จานวนสินค้า
001 B001 135 บาท 1 ชิน้
001 T001 135 บาท 1 ชิน้
002 M001 535 บาท 1 ชิน้
003 B001 135 บาท 1 ชิน้
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization ระดับที่ 3
มีขอ้ กาหนดว่า จะต้องผ่าน 2NF และฟิลด์อื่นๆที่ไม่ใช่คีย์
หลัก (Primary Key) จะไม่ขึน้ ต่อกันเอง ดังนัน้ ตารางสินค้า
ซึง่ มีการเก็บรหัสสินค้า ชือ่ สินค้า ราคาประเภทสินค้าและชือ่
ประเภท
รหัสสินค้า ชื่อสินค้า ราคาตามป้ าย รหัสประเภทสินค้า ประเภทสินค้า
B001 ซีดพี เ่ี บิรด์ 140 บาท FC001 ซีดี
T001 ซีดพี แ่ี ท่ง 140 บาท FC001 ซีดี
M001 ดีวดี ที ายาหรือยัง 600 บาท FC001 ดีวดี ี
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การทา Normalization ระดับที่ 3
จากตารางข้างต้นจะเห็นได้วา่ ฟิลด์ประเภทสินค้าขึน้ อยูก่ บั ฟิลด์
รหัสประเภทสินค้า ซึง่ ไม่ใช่คยี ห์ ลัก ดังนัน้ จึงต้องแยกตาราง
ออกมาเป็ น 2 ตารางคือ ตารางสินค้าและตารางประเภทสินค้า
ตารางสินค้า รหัสสินค้า ชื่อสินค้า ราคาตามป้ าย รหัสประเภทสินค้า
B001 ซีดพี เ่ี บิรด์ 140 บาท FC001
T001 ซีดพี แ่ี ท่ง 140 บาท FC001
M001 ดีวดี ที ายาหรือยัง 600 บาท FC002
ตารางประเภทสินค้า รหัสประเภทสินค้า ประเภทสินค้า
FC001 ซีดี
FC002 ดีวดี ี
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
การกาหนดความสัมพันธ์
▫ ความสัมพันธ์แบบ 1:1 (One-to-One)
▫ ความสัมพันธ์แบบ 1:N (One-to-Many)
▫ ความสัมพันธ์แบบ M:N (Many-to-Many)
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางสาหรับการขายหนังสือ ประกอบไปด้วย 4 ตารางดังนี้
• ตารางลูกค้า (CustomerTbl) เก็บข้อมูลเกีย่ วกับลูกค้า
• ตารางสินค้า (ProductTbl) เก็บข้อมูลเกีย่ วกับรายการสินค้าหรือ
ผลิตภัณฑ์ต่างๆ
• ตารางซือ้ สินค้า (TransactionTbl) เก็บข้อมูลเกีย่ วกับการซือ้
สินค้า เช่น ชือ่ เมือ่ ใด ใครเป็ นคนซือ้
• ตารางรายละเอียดการสังซื ่ อ้ (TransactionDatailTbl) เก็บข้อมูล
เกีย่ วกับรายการสินค้าทีซ่ อ้ื ในแต่ละครัง้ เช่น สินค้าทีล่ กู ค้าซือ้
จานวนสินค้าทีซ่ อ้ื ส่วนลด ราคาทีจ่ าหน่าย
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

1. Blank Database

2
3
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

3
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

1. กรอกชื่อเขตข้อมูล

3. กรอกคาอธิบาย
2. กาหนดชนิดข้อมูล

4. ขนาดเขตข้อมูล
การเพิม่ ความสามารถให้ตาราง
• Field name ใช้สาหรับกาหนดชื่อฟิลด์
• Data Type ใช้สาหรับกาหนดประเภทข้อมูลของ Field ประกอบด้วย
ชนิดข้อมูล คาอธิบาย
Text ข้อมูลตัวเลข ตัวอักษร หรือผสมกันระหว่างตัวเลขและตัวอักษรทีม่ ขี นาดยาวไม่เกิน 255 ตัวอักษร
เช่น ชือ่ นามสกุล ทีอ่ ยู่ รหัสสินค้า เป็ นต้น
Memo เป็ นข้อมูลตัวเลข ตัวอักษร หรือผสมกันระหว่างตัวเลขและตัวอักษร เช่น บันทึก
Number เป็ นข้อมูลตัวเลขทีส่ ามารถนาไปใช้ในการคานวณ เช่น ราคาสินค้า
Date/Time เป็ นข้อมูลวันเดือนปีและเวลา (สามารถนาไปคานวณช่วงเวลาได้)
Currency เป็ นข้อมูลตัวเลขโดยแสดงข้อมูลในแบบสกุลเงิน
AutoNumber เป็ นข้อมูลตัวเลขทีใ่ ห้รนั อัตโนมัติ เช่น ลาดับที่
Yes/No เป็ นข้อมูลตรรกะ ซึง่ มีคา่ ได้ 2 ค่าคือ “ใช่” และ “ไม่ใช่”
OLE Object เป็ นข้อมูลอื่นๆ โดยมากมักเป็ นไฟล์มลั ติมเี ดีย เช่น ภาพ เสียง วิดโี อ
Hyperlink เป็ นข้อมูลทีส่ ามารถลิงก์ไปยังข้อมูลอืน่ ๆ ได้
Lookup Wizard เป็ นข้อมูลทีเ่ ชือ่ มกับตารางหรือแบบสอบถามในส่วนอืน่
การเพิม่ ความสามารถให้ตาราง
• คุณสมบัตเิ พิม่ เติมทีต่ ้ องกำหนด
ให้ กบั ฟิ ลด์

กรณีใช้กบั “Text” กรณีใช้กบั


เป็ นการกาหนดจานวน ชนิดข้ อมูลย่ อย รำยละเอียด
Number
ตัวอักขระทีส่ ามารถ Byte เก็บตัวเลขที่มีค่าตั้งแต่ 0-255
เก็บได้สงู สุด Integer เก็บเลขจานวนเต็มที่มีค่าตั้งแต่ -32,768 ถึง +32,767
การกาหนด Long integer เก็บเลขจานวนเต็มที่มีค่าตั้งแต่ -2,147,483,648 ถึง +2,147,483,647
Single เก็บเลขทศนิยมที่มีค่าตั้งแต่ -3.4 x 1,038 ถึง -1.4 x 10-45 สาหรับ
Field size : ใช้เฉพาะกับ Text จานวนลบ และ 3.4 x 1038 ถึง 1.4 x 10-45 สาหรับจานวนบวก
Double เก็บเลขทศนิยมที่มีค่าตั้งแต่ -1.797 x 10308 ถึง -4.94 x 10324 สาหรับ
และ Number เท่านัน้ จานวนลบ และ 1.797 x 10308 ถึง 4.94 x 10324 สาหรับจานวนบวก
Decimal เก็บเลขที่มีค่าตั้งแต่ -1028 -1 ถึง 1028 – 1
Replication เก็บชนิดข้อมูลที่ใช้ในเรื่ อง Replication
ID
การเพิม่ ความสามารถให้ตาราง
การกาหนดรูปแบบการแสดงผล
• Format ใช้กาหนดรูปแบบการแสดงผลของฟิลด์ และสามารถ
กาหนดรูปแบบได้เอง นอกเหนือจากทีเ่ ลือกได้จาก Combo box
โดยใช้ขอ้ มูลในตารางดังนี้
การเพิม่ ความสามารถให้ตาราง
• Decimal Places กาหนดเพือ่ แสดงตาแหน่งจุดทศนิยม จะมีผล
กับเฉพาะข้อมูลชนิด Number, Currency
• Caption เป็ นข้อความทีจ่ ะให้แสดงบนหัวคอลัมน์ในมุมมอง Table
Datasheet แทนทีช่ อ่ื ฟิลด์
การกาหนดรูปแบบของค่าทีป่ ้ อนให้ฟิลด์
• Input Mask เป็ นคุณสมบัตทิ บ่ี อกว่า จะรับข้อมูลทีใ่ ช้ป้อนใน
รูปแบบใดบ้าง เช่น Zip code ทีเ่ ก็บรหัสไปรษณีย์ จะรับข้อมูลที่
เป็ นตัวเลข (0-9) และรับได้ 5 ตัวเท่านัน้
• Default Value เป็ นค่าเริม
่ ต้นของฟิลด์ ถ้ามีการเพิม่ เรคอร์ดค่านี้
จะเป็ นค่าแรกทีก่ าหนดให้กบั ฟิลด์น้ี
การเพิม่ ความสามารถให้ตาราง
• Allow Zero Length ถ้ากาหนดเป็ น Yes ค่าของฟิลด์น้จี ะ
สามารถเป็ นข้อความว่างได้
• New Value ใช้กบ ั ชนิดข้อมูล Auto number เท่านัน้ เพือ่
กาหนดว่าค่าใหม่ทจ่ี ดั ให้นนั ้ เป็ นค่าทีเ่ พิม่ แบบ Increment หรือ
เป็ นค่าสุม่ (Random)

Note : คุณสมบัตใิ น Validation Rule เป็ นคุณสมบัตทิ เ่ี ราต้องกาหนดเป็ น


นิพจน์ (Expression) ทีค่ า่ เป็ นจริง หรือเท็จอย่างใดอย่างหนึ่ง ซึง่ จะกล่าวถึง
รายละเอียด ของนิพจน์ ในส่วนของการออกแบบสอบถามคิวรีต่อไป
การเพิม่ ความสามารถให้ตาราง
การตรวจสอบความถูกต้องของข้อมูลที่ ป้อนให้ฟิลด์
• Validation Rule ใช้กาหนดกฎทีใ่ ช้ในการตรวจสอบความถูกต้องของฟิลด์น้ี
• Validation Text เป็ นข้อความทีจ่ ะให้แสดงเตือน เมือ่ ผูใ้ ช้ใส่ขอ้ มูลลงไปในฟิลด์
ไม่ถูกต้องตามทีก่ าหนด

กาหนดให้มสี นิ ค้าเพียง 4 ประเภท โดยใช้เลข 1,2,3 กาหนดให้ราคาสินค้าต้องมีคา่ มากกว่า 0 หากใส่


และ 4 เท่านัน้ หากใส่ขอ้ มูลเลข 5 จะแสดงข้อความ ตัวเลข < 0 จะแสดงข้อความ “ราคาสินค้าต้องมีคา่ >
เตือนว่า”รหัสสินค้าต้องมีคา่ ”1,2,3 และ 4” 0”
การเพิม่ ความสามารถให้ตาราง
• รำยละเอียดคุณสมบัตติ ่ ำง ๆ ทีส่ ำคัญของ
ตำรำงทีป่ รำกฏในหน้ ำต่ ำง Table properties ตัวอย่างการกาหนดคุณสมบัติ
มีดงั นี้ ให้กบั ตาราง
ชื่อคุณสมบัติ รายละเอียด
Description คาอธิบายเพิ่มเติมสาหรับ
ตาราง
Validation ใช้กาหนดกฎที่ใช้ในการ
Rule ตรวจสอบความถูกต้องของ
ตาราง
Validation เป็ นข้อความที่ให้แสดง
Text ุ สมบัติฟิลด์
เตือน เมื่อใส่คณ
ไม่ถกู ต้องตามที่กาหนด
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางสินค้า (บันทึกไฟล์เป็ น ProductTbl)
ชื่อเขตข้อมูล ชนิดข้อมูล ขนาดเขตข้อมูล รูปแบบ คาอธิบาย
(Field Name) (Data Type) (Field Size) (Format) (Description)
ProductID Text 25 รหัสสินค้า
ProductName Text 50 ชือ่ สินค้า
UnitPrice Number สกุลเงิน (Currency) ราคาสินค้า
Discount Number Integer เปอร์เซ็นต์
ส่วนลด
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางลูกค้า (บันทึกไฟล์เป็ น CustomerTbl)
ชื่อเขตข้อมูล ชนิดข้อมูล ขนาดเขตข้อมูล รูปแบบ คาอธิบาย
(Field Name) (Data Type) (Field Size) (Format) (Description)
CustomerID Text 13 รหัสประจาตัวลูกค้า
CustomerFirstName Text 50 ชือ่ ลูกค้า
CustomerLastName Text 50 นามสกุลลูกค้า
CustomerAddress Text 150 ทีอ่ ยูล่ กู ค้า
CustomerTel Text 50 เบอร์โทรศัพท์ลกู ค้า
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางซื้อสินค้า (บันทึกไฟล์เป็ น TransactionTbl)
ชื่อเขตข้อมูล ชนิดข้อมูล ขนาดเขต รูปแบบ ค่าเริ่มต้น คาอธิบาย
(Field Name) (Data Type) ข้อมูล (Format) (Default (Description)
(Field Size) Value)
TransactionID AutoNumber Long Integer รหัสการซือ้ สินค้า
CutomerID Text 15 รหัสลูกค้า
OrderDate Date/Time General Date Now() วันเวลาทีซ่ อ้ื
สินค้า
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ตารางรายละเอียดการซื้อ (บันทึกไฟล์เป็ น TransactionDetailTbl)
ชื่อเขตข้อมูล ชนิดข้อมูล ขนาดเขตข้อมูล รูปแบบ คาอธิบาย
(Field Name) (Data Type) (Field Size) (Format) (Description)
TransactionDetailID AutoNumber Long Integer รหัสรายละเอียดการ
ซือ้ สินค้า
TransactionID Number Long Integer รหัสการซือ้ สินค้า
ProductID Text 25 รหัสสินค้า
SalePrice Currency Currency ราคาจาหน่ายหลังหัก
ส่วนลด
SaleAmount Number Integer จานวนสินค้า
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
กรอกข้อมูลในตาราง
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
เลือกเปอร์เซ็นต์ส่วนลดจากรายการ
ในการกรอกข้อมูลทีม่ กั มีคา่ ซ้ากัน เช่น เปอร์เซ็นต์สว่ นลดหนังสือ
ส่วนใหญ่มคี า่ เป็ น 10 การกรอกตัวเลขเดิมทุกๆ ครัง้ คงน่าเบื่อ
ดังนัน้ เพือ่ อานวยความสะดวกควรสร้างรายการ (List) เพือ่
สามารถเรียกใช้ตวั เลขดังกล่าวได้เลย
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

3
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

2. กรอข้อมูล 5 จนถึง 50

4
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ไม่ต้องจารหัสลูกค้าโดยใช้ Lookup Wizard
สาหรับการกรอกข้อมูลลงในตาราง TransactionTbl เราต้องกรอก
รหัสลูกค้าลงในตาราง ซึง่ แน่นอนว่าไม่มใี ครจารหัสสินค้าได้
ทัง้ หมด วิธสี ะดวกคือ สังให้
่ สามารถเลือกรหัสและรายชือ่ จาก
ตารางได้เลย
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

4
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

7
6
8

9
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
10

11. ขยายคอลัมน์

12
13

14
ผลลัพธ์ทไ่ี ด้คอื จะมีการแสดงเฉพาะรหัสลูกค้า พร้อมทัง้ ชื่อและนามสกุล สาเหตุคอื ต้องใช้
รหัสลูกค้าเป็ นหลัก เพราะเวลากรอกมักเป็ นตัวเลข สะดวกกว่ากรอกชื่อนามสกุล และ
รองรับการใช้บาร์โค้ดจากบัตรสมาชิกของลูกค้าได้อกี ด้วย
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ไม่ต้องจารหัสสินค้าโดยใช้ Lookup Wizard
ในตาราง TransactionDatailTbl จะต้องมีการกรอกรหัสสินค้า ซึง่
ไม่มที างจะจารหัสสินค้าได้ ดังนัน้ ควรแสดงชือ่ สินค้า
ประกอบด้วย วิธนี ้จี ะช่วยให้สามารถเลือกรายการสินค้าจาก
รายการทีก่ าหนดไว้ทนั ที
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

3
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ

5
7

8
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
9

10. ขยายคอลัมน์

11
12

13
ผลลัพธ์ทไ่ี ด้คอื จะมีการแสดงเฉพาะรหัสลูกค้า พร้อมทัง้ ชื่อและนามสกุล สาเหตุคอื ต้องใช้
รหัสลูกค้าเป็ นหลัก เพราะเวลากรอกมักเป็ นตัวเลข สะดวกกว่ากรอกชื่อนามสกุล และ
รองรับการใช้บาร์โค้ดจากบัตรสมาชิกของลูกค้าได้อกี ด้วย
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ความสัมพันธ์ของแต่ละตาราง

1. ปิดตารางทีแ่ สดงอยูท่ งั ้ หมด


ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ความสัมพันธ์ของแต่ละตาราง
2. คลิกแท็บ Database Tools

3. คลิกทีป่ มุ่ Relationships


ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ความสัมพันธ์ของแต่ละตาราง

3. คลิกขวาเลือก Delete
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ความสัมพันธ์ของแต่ละตาราง 7. เมือ่ ลาก TransactionID มา
4. เมือ่ ลาก CustomerID มา วางทีต่ าราง
วางทีต่ าราง TransactionTbl TransactionDetailTbl
6

เลข 8 บังคับให้ม ี Referential Integrity เพือ่ กาหนดให้มคี วามสัมพันธ์ทม่ี กี าร


อ้างอิงกันและกัน 10
เลข 9 ลบระเบียนทีเ่ กีย่ วข้องทัง้ หมด เพือ่ กาหนดเงือ่ นไขว่าเมือ่ ใดทีล่ บข้อมูล 8
ในตารางสินค้ารายละเอียดการซือ้ สินค้าก็จะหายไปด้วย ซึง่ ตรงกับความเป็ น
จริงว่าเมือ่ มีการยกเลิกการซือ้ สินค้า รายการสินค้าในการซือ้ นัน้ จะต้องถูกล้าง
9
ไปจากรายการซือ้ เช่นกัน
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
ความสัมพันธ์ของแต่ละตาราง

13
11
12

13
ตัวอย่างฐานข้อมูลสาหรับร้านขายหนังสือ
สรุปความสัมพันธ์ของแต่ละตาราง
• ฟิลด์ CustomerID ของตาราง CustomerTbl เชือ่ มกับฟิลด์
CustomerID ของตาราง TransactionTbl ในแบบ One-To-Many
(ลูกค้าหนึ่งคนสามารถซือ้ สินค้าได้หลายครัง้ )
• ฟิลด์ TransactionID ของตาราง TransactionTbl เชือ่ มกับฟิลด์
TransactionID ของตาราง TransactionDetailTbl ในแบบ One-
To-Many (การซือ้ สินค้าแต่ละครัง้ สามารถซือ้ สินค้าได้หลายๆ ชิน้ )
• ฟิลด์ ProductID ของตาราง TransactionDetailTbl เชือ่ มกับฟิลด์
ProductID ของตาราง ProductTbl ในแบบ One-To-Many (ในการ
ซือ้ สินค้าแต่ละครัง้ สามารถเลือกสินค้าตัวเดิมได้)

You might also like