ระบบฐานข้อมูล ใน Microsoft Access ครั

Download Report

Transcript ระบบฐานข้อมูล ใน Microsoft Access ครั

ระบบฐานข้อมู ล ใน
Microsoft Access
แบบสอบถาม (Query)
่
่ ในการ
เป็ นเครืองมื
อ (Object) ทีใช้
ทางานในรู ปแบบต่างๆ กับข้อมู ลในตาราง
เช่น การคัดเลือกข้อมู ลจากตาราง, การ
่
สร ้างตาราง, การปร ับเปลียนค่
าของข้อมู ล
ในตาราง และการลบข้อมู ลจากตาราง
ประโยชน์ของ Query
่
่อนไขที่
1. แสดงข้อมู ลทีตรงกับเงื
กาหนด
2. กาหนดรู ปแบบการแสดงผลของ
ตาราง
่
3. แสดงข้อมู ลในลาดับทีแตกต่
าง
ไปจากตาราง
4. แสดงข้อมู ลจากหลายๆ ตาราง
่ ยวกัน
ในทีเดี
่
5. ปร ับเปลียนข้
อมู ลในตารางตาม
ประเภทของ Query
1. Select Query ใช้ในการเลือกข้อมู ลจาก
ตารางหนึ่ง หรือมากกว่า ตามเงื่อนไขที่
้ นพืนฐานในการสร
้
กาหนด รวมทังเป็
้าง
่
Query ประเภทอืนๆ
2. Crosstab-Query ใช้สร ้างตารางสรุปการ
แจกแจงข้อมู ลในตาราง
3. Parameter Query ใช้ค ัดเลือกข้อมู ลจาก
ตารางโดยใช้ Query เดิม และให้แสดงผล
่
่
ลัพธ ์เปลียนไปตามข้
อมู ลทีระบุ
Query ในกลุ่มของ Action
Query
4.1 Make Table Query ใช้สร ้างตารางใหม่
่ ัดเลือกได้จาก Query
จากข้อมู ลทีค
4.2 Append Query ใช้ในการนาข้อมู ลที่
่
คัดเลือกได้จาก Query เพิมเป็
นระเบียนใหม่
่ าหนด
ต่อท้ายในตารางทีก
4.3 Update Query ใช้ปร ับปรุงกลุ่มของ
่ าหนด
ข้อมู ลให้มค
ี า
่ ตามทีก
4.4 Delete Query ใช้ลบข้อมู ลในตาราง
่ าหนด
ตามเงื่อนไขทีก
มุมมองของ Query
1. Design View มุมมองออกแบบใช้สาหร ับ
สร ้าง Query และระบุเงื่อนไขในการเลือก
ข้อมู ล
2. Datasheet View มุมมองแผ่นข้อมู ล ใช้
่ าหนด
แสดงข้อมู ลตามเงื่อนไขทีก
่
3. มุมมอง SQL มีหน้าทีเหมื
อน Design
View แต่จะแสดงในรู ปของภาษา SQL
(Structured Query Language)
การสร ้าง Query
1. Query Wizard ใช้ระบบชานาญการของ
Access ช่วยในการสร ้าง
2. Query Design ต้องกาหนดเงื่อนไขต่างๆ
่ าหนด
เองโดยไม่ใช้ Query Wizard ซึงก
รายละเอียดได้มากกว่า
การสร ้าง Query ด้วย
Wizard
เราสามารถเรียก Wizard ในการสร ้าง Query โดยทา
้
ตามขันตอนด
งั นี ้
1. เลือกแท็บ
Query
2. Click mouse
3. ปรากฏไดอะล็อกซ ์
New Query
Wizard 4 ประเภ
จะกล่าวถึง
การสร ้าง Query ด้วย Simple Query
Wizard
่ โครงสร ้างตารางดังรู ป
ตัวอย่างสร ้างจากตาราง TblProducts ทีมี
ตาราง TblProducts
ProductID (PK)
CategoryID
ProductName
UnitPrice
VATFlag
UnitInStock
่
้
้ านวนสินค้า
จะสอบถามว่าราคาสินค้าเฉลียของสิ
นค้าทังหมด
รวมทังจ
่
เป็ นเท่าไร ซึงแสดงความหมายได้
ด ังรู ป
่
(48+20+10)/3
= 26
ราคาสินค้าเฉลี
ย=
จานวนสินค้า = 3
1. Click mouse
2.1 เลือก Sample Qu
2.2 Click mouse
3.1 เลือกตาราง TblProducts
3.2 เลือกฟิ ลด ์ UnitPrice
3.3 Click mouse
4.1 เลือก Summary4.2 Click mouse
4.3 เลือก Avg สาหร ับฟิ ลด ์ UnitP
่ วเลือกนี ด้
้ วย
4.4 เช็คทีตั
4.5 Click mouse
5.1 ใส่ชอคิ
ื่ วรีทสร
ี่ ้างลงไป
4.6 Click mouse
52 Click mou
่
้ บจ
6. ผลลัพธ ์ของคิวรีทสร
ี่ ้าง จะคานวณราคาสินค้าเฉลียพร
้อมทังนั
แสดงการใช้ Sample Query Wizard สร ้างคิวรีหาผลลัพธ ์
จากหลายๆ ตาราง ดังรู ป
1
ตาราง TblCategories
N
N
ตาราง
TblProducts
M TblCustomers
ตาราง
CategoryID(PK)
CategorylName
CategoryDescription
CategoryPicture
ProductID (PK)
CategoryID
ProductName
UnitPrice
VATFlag
UnitInStock
CustomerID(PK)
CustomerName
CustomerAddress
ZipCode
Telephone
HomePageName
หมายเหตุ การสร ้างคิวรีจากตาราง
้ เราจะต้องกาหนด
หลายๆ ตารางนัน
ความสัมพันธ ์ระหว่างตารางด้วย
้ เราไม่สามารถสร ้างคิวรีได้
ไม่เช่นนัน
้ั
และการสร ้างคิวรีนนเราสามารถสร
้าง
จากคิวรีดว้ ยกันก้ได้ ไม่จาเป็ นต้อง
สร ้างจากตารางเพียงอย่างเดียว
1. Click mouse
2.1 เลือก Sample Query W
2.2 Click mouse
3.1 เลือกฟิ ลด ์ CategoryName, ProductID และ
CustomerName จากตาราง TblCategories,
TblProduct และ TblCustomer ตามลาดับ
3.2 Click mouse
่
้
4.1 .ให้เลือก Detail เพือแสดงฟิ
ลด ์ทุกฟิ ลด ์ของเรคอร ์ดทังหมด
5.1 ใส่ชอของคิ
ื่
วรีลงไป
4.2 Click mouse
5.2 Click mouse
6. ผลลัพธ ์ของคิวรีทสร
ี่ ้าง จะเป็ นการด
CategorName, ProductID และ Cu
ตาราง TblCategories, TblProduct
มาแสดงผลตามลาดับ
การสร ้างคิวรีดว้ ย Crosstab Query
Wizard
้
่ งซื
่ อส
้ า
จานวนสินค้าทังหมดที
สั
ด ังรู ป
้
สินค้าชนิ ดนัน
Crosstab Query แสดงจา
่ กค้าสัง่
สินค้าแต่ละชนิ ดทีลู
1.Click mouse
3.1 เลือกคิวรีทสร
ี่ ้างจากตัวอ
2.1 เลือก Crosstab Query 2.2
Wizard
Click mouse
3.2 Click mouse
4.1 เลือกฟิ ลด ์ CustomerName เป็ นหัวแถว
5.1 เลือกฟิ ลด ์ Categor
เป็ นหัวคอลัมน์
4.2 Click mouse
5.2 Click mouse
6.2 เลือก Count
6.1 เลือก ProductID
7.1 ใส่ชอคิ
ื่ วรีทสร
ี่ ้าง
Click
6.3 Click mouse เช็ด ถ้าต้อ6.4
งการให้
มก
ี mouse
ารนับ
จานวนสินค้ารวม สาหร ับลู กค้าแต่ละราย
8. ผลลัพธ ์ของคิวรีทสร
ี่ ้าง จะแสดงข้อมู ลว่า
่ อสิ
้ นค้าแต่ละชนิ ดเป็ น
ลู กค้าแต่ละรายสังซื
7.2 Click mo
จานวนเท่าไร
การสร ้างคิวรีดว้ ย Find Duplicates Query
Wizard
่ ้างคิวรี โดยการนาเรคอร ์ด
จะเป็ นวิซาร ์ดทีสร
่ คา
่
้ น
ทีมี
่ ฟิ ลด ์ทีเราเลื
อกซาก
ั มาแสดงในคิวรี
ผลลัพธ ์ ดังรู ป
นามาเฉพาะค่าฟิ ลด ์
้
CustomerID เท่านัน
่ โครงสร ้างของ
ตวั อย่าง โดยใช้ตาราง TblOrder ทีมี
ตาราง ดงั รู ป ตาราง TblOrders
้
OrderID (PK)
CutomerID
OrderDate
ShippedDate
้
คิวรีจะตรวจสอบค่าฟิ ลด ์นี ว่าซากัน
่ คา
้ ากันม
้
แล้วนาเรคอร ์ดทีมี
่ ฟิ ลด ์นี ซ
ในคิวรีผลลัพธ ์
1. Click mouse
2.1 เลือก Find Duplica
Query Wizard
2.2 Click mouse
้ นเป็ น TblO
3.1 เลือกตารางตังต้
่
4.1 เลือกฟิ ลด ์ทีจะตร
้
ว่า ซากันหรื
อไม่เป็ น
CustomerID
3.2 Click mouse
4.2 Click mouse
่
5.1 เลือกฟิ ลด ์ทีจะแสดงผลด้
วยเป็ น
OrderDate และ ShippedDate
6.1 ใส่ชอคิ
ื่ วรีทสร
ี่ ้าง
5.2 Click mouse
6.2 Click mo
่
7. ผลลัพธ ์ของคิวรีทสร
ี ้าง จะเป็ นการหาว่า
่ งซื
่ อสิ
้ นค้ามากกว่า 1 ครง้ั
มีลูกค้ารายใดทีสั
การสร ้างคิวรีดว้ ย Find Unmatched Query
Wizard
่
จะเป็ นวิซาร ์ดทีจะสร
้างคิวรีจาก 2 ตาราง (หรือคิวรี)
้
โดยการเลือกฟิ ลด ์หนึ่งในตารางทังสอง
และถ้าเรคอร ์ดใด
่ คา
้
้ั น แต่ไม่พบค่าฟิ ลด ์นี ในตาราง
้
ทีมี
่ ฟิ ลด ์นี ในตารางต
งต้
้ นวทีลบ
้ นพธ ์ของคิวตารางตั
ต ัวลบ ก็จตารางตั
ะเป็ นผลลั
รีนีทั
งต้
1
N
้ ดงั รู ป
เราสามารถแสดงการท
างานของคิ
วรีนีได้
ตาราง TblCustomers ตาราง
TblOrders
CustomerID (PK)
OrderID
CustomerName
CustomerID
CustomerAddress
OrderDate
ZipCode
ShippedDate
Telephone
่
้
ฟิ ลด ์ทีจะตรวจสอบว่
าซากัน
จะไม่อยู ่ในคิวรีผลลัพธ ์
1. Click mouse
2.1 เลือก Find Unmatched
Wizard
2.2 Click mouse
้ น TblCustomers
3.1 เลือกตารางตัวตังเป็
3.2 Click mouse
4.1 เลือกตารางตัวลบเป็ น TblOrders
4.2 Click mouse
่ ในการตรวจสอบ
5.1 เลือกฟิ ลด ์ CustomerID ทีใช้
้
้ มใี นตารางตัวลบจะ
ว่าถ้าาฟิ ลด ์นี ในตารางตัวตั
งไม่
เป็ นผลล้พธ ์ของคิวรี
5.2 Click mous
่
6.1 เลือกฟิ ลด ์ทีจะให้
แสดงผลด้วย
6.2 Click mouse
้ อคิ
่ วรีท7.2
Click mo
7.1 ตังชื
สร
ี่ ้าง
่ ได้สงซื
่ ั อสิ
้ นค้าบ้าง
8. ผลลัพธ ์ของคิวรีทได้
ี่ จะเป็ นคิวรีทบอกว่
ี่
ามีลูกค้ารายใดทีไม่