Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ ระบบฐานข้อมูล
Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ การเขียนโปรแกรม
Access : เป็นได้ทั้งตัวเก็บฐานข้อมูล และตัวจัดการฐานข้อมูล
Thai Access : บอร์ดเสริมการเรียนรู้ Access ด้วยภาษาไทย

น้อมรำลึกในพระมหากรุณาธิคุณอันหาที่สุดมิได้ พระบาทสมเด็จพระปรมินทรมหาภูมิพลอดุลยเดชฯ พระผู้เสด็จสู่สวรรคาลัย

Back to Board : Thai Access Webboard New Topic    Reply
adding data to multiple tables using form

Topic by Message Posted : on : 11/1/2560 20:39:08
Pasit Sritragul  ผมอยากทราบว่า ถ้าผมจะสร้าง form อันเดียว เพื่อ ใส่ข้อมูลในหลายๆตารางทำยังไงครับ เช่นตอนแรกผมมี 3 ตารางชื่อ product price place ผมสร้าง ขนม A ผ่านform แต่อยากให้มันเข้าไปอยู่ใน ตาราง product และ ตาราง price ทำยังไงครับ

ตอบผมด้วยนะครับ ขอบคุณครับ

1 Reply in this Topic. Dispaly 1 pages and you are on page number 1

Reply by Message on : 13/1/2560 14:15:41
สันติสุข
(R22882)
กรณีผูกฟิลด์ต่างๆบนฟอร์มกับเทเบิลเดียว (เรียกว่า Bound Form) เมื่อฟอร์มบันทึกข้อมูล จะกระตุ้นให้เกิด BeforeUpdate (เกิดก่อนการอัพเดตข้อมูลบนฟอร์มลงเทเบิล) กับ AfterUpdate event (เกิดหลังการอัพเดตข้อมูลบนฟอร์มลงเทเบิล) ดังนั้นเราก็สามารถใส่โค้ดใน procedure ของ event เหล่านี้เพื่อบันทึกข้อมูลลงเทเบิลที่เหลือได้ครับ โค้ดที่ใช้ ถ้าอย่างง่ายๆก็ใช้ DoCmd.RunSQL "คำสั่ง SQL INSERT statement" ลองดูใน http://thai-access.com/topic_post.asp?CategoryID=1&TopicID=323

อย่างไรก็ตาม ไม่ว่าเราจะวางโค้ดไว้ที่ส่วนไหน ก็ยังอาจเกิดปัญหาได้ เพราะทรานแซกชั่นของโค้ดเราและทรานแซกชั่นที่เกิดจากการอัพเดตของฟอร์มที่ทำโดยอัตโนมัติด้วยตัวมันเองนั้น เราไม่สามารถควบคุมให้เป็นทรานแซกชั่นเดียวกันได้ ถ้าทรานแซกชั่นที่เกิดทีหลัง fail ขึ้นมา เราไม่สามารถ roll back ทรานแซกชั่นที่เกิดก่อนได้ ข้อมูลก็จะไม่สมบูรณ์ครับ แต่ถ้าเราไม่ผูกฟิลด์บนฟอร์มเข้ากับเทเบิล (เรียกว่า Unbound Form) ก็จะไม่เกิดปัญหานี้ครับ แต่มันก็จะไม่มี BeforeUpdate และ AfterUpdate event เกิดขึ้น ดังนั้นเราก็มักสร้างปุ่มเพื่อฝังโค้ดข้างบน โค้ดบรรทัดนึงก็สำหรับบันทึกลงเทเบิลนึงครับ
Back to Top

Reply

 *Indicates required fields
Format:
Bold Under Line Italic Add Hyperlink Add Email Link Italic List Indent Add Image Emoticons Insert code Mode:
Message:*
Your Name*:
Normal word*: Please input : ไทยแอ็คเซส
+++ webboard source: ASPThai.Net Webboard 6.0 webbord +++++++ admin : yeadram +++