พอดีไปเจอโจทย์ใหม่ คือต้องเชื่อมฐานข้อมูลจาก MySQL มาที่งานเก่าที่เป็น SQL Server โดยตัว Front End เป็น MS-Access
งมอยู่พักใหญ่ ในที่สุดก็สามารถทำได้
หลักการมีดังนี้ครับ
- ขั้นตอนที่ 1 ต้องลง Driver ของ MySQL ที่เครื่องก่อน ณ. วันที่โพสนี้มี 2 เวอร์ชั่น คือ v.3.1.5 , 8.0 แนะนำเป็นเวอร์ชั่น 3.1.5
- ขั้นตอนที่ 2 สร้าง User ที่สามารถเข้าถึงฐานข้อมูลให้เรียบเรียบก่อนพร้อมทดสอบ และอย่าเปลี่ยนสิทธิ์ของ User ที่ว่านี้ให้เป็น Full ด้วยเครื่องหมาย %
- ขั้นตอนที่ 3 สร้าง ODBC เพื่อ Connect ไปยัง MySQL Server
- ขั้นตอนที่ 4 ทำการ Link Table เข้ามาในไฟล์ Front End ที่กำลังใช้งานอยู่
- ขั้นตอนที่ 5 ในหน้าเขียนโค๊ด VBA ให้ติ๊กเลือก Tools --> Reference --> Microsoft DAO 3.6 Object libray
เมื่อต้องการจะจัดการกับข้อมูลใน Table สามารถใช้รูปแบบดังนี้
Dim rst1, rst2, rst3, rst4, rst5, rst6, rst7, rst8 As DAO.Recordset
Dim dbs As Database
Set dbs = CurrentDb()
Set rst1 = dbs.OpenRecordset("SELECT * from Table1")
'Add
rst1.addnew
rst1!Filed1 = "Test"
rst1.update
'Edit
rst1.edit
rst1!Filed1 = "Test"
rst1.update
'Del
rst1.Delete
rst1.close
Set rst1 = nothing
ขอขอบคุณความรู้เกี่ยวกับ MS-Access จาก อ. สุภาพ ไชยา