แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Tonwrp

หน้า: [1]
1
ขอบคุณอาจารย์สันติสุขมากๆครับที่คอยชี้แนะคนที่ไม่เคยทำอย่างผมมาก่อนขอบคุณจริงๆครับ
โพสต์นี้ได้รับคำขอบคุณจาก: สันติสุข

2
ลองนึกถึงใบเสร็จเวลาเราไปซื้อของในห้าง ที่หัวกระดาษเขาจะพิมพ์ว่าแคชเชียร์คือใคร และเราซึ่งเป็นลูกค้าเป็นใคร ส่วนกลางกระดาษก็จะแสดงรายละเอียดสินค้าว่าเราซื้ออะไรบ้าง ซึ่งรองรับได้หลายๆรายการ  ถ้าคุณต้องการลักษณะการเก็บแบบนี้ แปลว่านอกจากเทเบิล Loan ซึ่งเปรียบได้กับหัวกระดาษแล้ว ก็จะต้องมีเทเบิล LoanedItems ซึ่งเป็นรายละเอียดของที่ยืมเพิ่มเติมอีกครับ และอย่างน้อยก็จะมีฟิลด์ Loan_No (PK), Asset_ID(PK) ที่ย้ายมาจากเทเบิล Loan เอามาใส่ไว้ที่นี่แทน และจำนวนที่ยืมด้วยครับ และเราจะสร้างความสัมพันธ์ (Table Relationships) ระหว่างทั้ง 2 เทเบิลไว้ด้วย   (ส่วนนี้หาวิธีทำใน Youtube ด้วยคำว่า  microsoft access table relationships)

สำหรับการบันทึก ก็สร้างฟอร์มสำหรับเทเบิล Loan และ LoanedItems แล้วเราจะเอาฟอร์มของ LoanedItems มาใส่ในฟอร์มของ Loan อีกที (เราจะเรียกฟอร์มของ Loan ว่าเป็น main form และ LoanedItems ว่าเป็น sub form) เป็นการเชื่อม 2 ฟอร์มเข้าด้วยกันด้วย Loan_No ทีนี้ก็จะได้หน้าฟอร์มที่เหมือนมีหัวกระดาษและรายละเอียดรายการยืม/คืนอยู่ภายใน  (ส่วนนี้หาวิธีทำใน Youtube ด้วยคำว่า  microsoft access subform)

และเพื่อให้การแสดงดูเข้าใจมากขึ้น เราจะกำหนดคุณสมบัติต่างๆในแทป Lookup ของฟิลด์ Employee_ID, Customer_ID, Asset_ID ให้เชื่อมโยงไปยังเทเบิล Employees, Customers และ Asset เพื่อที่ว่าระบบจะดึงเอา Employees_Name, Customer_Name และ Asset Description มาแสดงแทนที่จะแสดงเป็น ID ซึ่งอาจไม่สื่อความหมายให้ผู้ใช้ได้เข้าใจอย่างชัดเจนสักเท่าไหร่ ดังนั้นเมื่อถึงเวลาสร้างคิวรี่ที่มีเทเบิล Loan และ LoanedItems เชื่อมระหว่างกัน และเลือกฟิลด์ Employee_ID, Customer_ID, Asset_ID มาแสดง   Access ก็จะดึงเอา _Name และ _Description ของค่าเหล่านี้มาแสดงให้อย่างอัตโนมัติเช่นกัน (ส่วนนี้หาวิธีทำใน Youtube ด้วยคำว่า microsoft access table lookup field) แต่ถ้าหากเราไม่ได้สร้าง Lookup เอาไว้ในฟิลด์ข้างบน ตอนสร้างคิวรี่ เราก็ต้องดึงเอาเทเบิล Employees, Customers และ Asset เข้ามาในคิวรี่ด้วย แล้วสร้างความสัมพันธ์ในคิวรี่เองครับ

ผมอยากทราบครับว่า Loan_No ที่เป็น Primary Key นั้นต้องอยู่ใน LoanedItems หรือว่า Loan ครับ เพราะอีก1ตัวที่เหลือก็จะเป็น FK ถูกไหมครับถ้าผมเข้าในไม่ผิดก็น่าจะเป็น Loan_No ที่อยู๋ใน Table Loan ใช่ไหมครับอาจารย์ แล้วก็หลังจากที่ผมสร้างฟอร์ม จาก Query แล้วเนี้ยมันมีปัญหาคือไม่สามารถเลือกค่าจาก Combobox ได้เกิดจากอะไรครับอาจารย์
โพสต์นี้ได้รับคำขอบคุณจาก: สันติสุข

หน้า: [1]