ปัญหาของผมคือ ไม่ได้ใช้ ODBC ครับ เพราะสมัยก่อนจะช้ามาก โปรแกรมที่ผมใช้เป็น Visual Foxpro 9 ซึ่งตอนนี้ทาง MicroSoft แช่แข็งไว้เป็นที่เรียบร้อยแล้ว
แล้วเขียนต่อกับฐานข้อมูลของ Visual Foxpro เอง แล้วผมก็ใช้ SQL แบบยิงตรงแบบนี้ครับ
select ขึ้นมา เก็บไว้ใน Cursor ตามที่วงแดงไว้
แล้วก็เอา Cursor ไปใส่ลงใน Grid ในหน้าจออีกที
ปัญหาก็คือ ไวยากรณ์ที่วงไว้ มันเป็น ไวยากรณ์เฉพาะกับ Foxpro ถ้าเป็น MySql มันจะไม่ใช้แบบนี้
ที่นี้ถ้าผมจะแก้ ตรงที่วงแดงไว้ ให้เป็นสากลเพื่อใช้กับตัวอื่นๆได้
ผมควรจะเขียนให้เชื่อมต่อกับ "ล่าม" อะไร ที่เป็นตัวกลางในการติดต่อกับ DATABASE เจ้าอื่นดีครับ
พูดง่ายๆคือ ผมยังไม่ทราบว่า การที่จะ Connect กับ Database ได้หลากหลายเจ้านั้น ต้องใช้อะไรเป็นตัวกลางดีครับ
นั่งค้นกูเกิ้ลสักพักแล้ว ไม่พบข้อมูลที่เป็นประโยชน์เลยครับ และเรื่องนี้มีปัญหากันแยะตั้งหลายปีย้อนหลังตามเว็บบอร์ดที่เจอในกูเกิ้ลด้วยครับ, ส่วนเรื่องที่จะเชื่อมฐานข้อมูลต่างยุค/ต่างยี่ห้อกันโดยไม่ใช้ ODBC นั้นยากส์ครับ เพราะ ODBC เกิดมาเพื่อการนี้โดยเฉพาะ... แล้วสาเหตุแบบนี้แหละครับ ที่ทำให้ผู้คนพากันทิ้ง Tool เดิมที่เราคุ้น แล้วไปหา Software Tools ใหม่ที่ปัญหาน้อยลงครับ...
เรื่องแบบนี้ต้องทดลองไปเรื่อยครับ, สมัยก่อนเวลานายสมชายหมดท่าจริงๆ ก็จะใช้ MsAccess เวอร์ชั่นที่เราคุ้นฯ แล้วเปิด Stored Procedure เอาไว้ให้เชื่อมกับฐานข้อมูลที่เราเชื่อมตรงๆไม่ได้(เช่น MySql) แล้วจากนั้นก็เอา VFP เชื่อมเข้ากับ MsAccess อีกต่อนึงครับ... ซึ่งแบบนี้ก็จะยิ่งช้าเข้าไปใหญ่ เพราะต้องผ่านตัวกลาง 2 ชั้นคือ MsAccess แล้ว ODBC อีกชั้นหนึ่ง...
ในกรณีที่เราไม่มีวิธีต่อเชื่อมกับฐานข้อมูลเลย ตัวเลือกมันก็น้อยลงต้องยอมให้ทำงานช้าฯ แล้วไปเพิ่มสเปคฮาร์ดแวร์เอาครับ...