สวัสดีครับ หลังจากที่ทราบวิธีการติดต่อกับ ODBC โดยใช้ DSN กันแล้ว คราวนี้เราก็มาต่อกันในเรื่องของ Database Profile กัน
Database Profile ก็คือ การกำหนดรูปแบบในการติดต่อกับ ดาต้าเบส โดยจะใช้งานร่วมกับ ODBC หรือ Native driver ก็ได้ รายละเอียดที่เรากำหนดใน database profile นี้จะถูกบันทึกลงในไฟล์ชื่อ PB.INI ซึ่งทาง PB จะนำเอารายละเอียดที่ถูกบันทึกใว้มาใช้ประโยชน์ในด้านต่างๆ
การกำหนดค่าของ database profile นั้นมีมากพอสมควรแต่เราจะมาศึกษาในส่วนที่จำเป็นก่อนก็แล้วกัน สำหรับหน้าตาก็เป็นดังรูปด้านล่างนี้
ไฟล์ภาพ/ข้อมูล ---> ถูกแสดงอยู่
Profile Name ก็คือชื่อของ profile ที่เราต้องการ
Data Source ก็คือชื่อของ database ที่เราต้องการติดต่อด้วย
User ID กับ Password ก็คือชื่อและรหัสผ่านในการติดต่อกับ ดาต้าเบส
ต่อมาให้คลิกที่ Preview tab เราจะเห็นค่าต่างๆที่เรากำหนดเอาใว้แล้วเราสามารถที่จะ copy ตรงส่วนนี้ไปใว้ใน สคริปต์ในส่วนของ open application เพื่อทำการติดต่อกับ ดาต้าเบส ได้เลย
ไฟล์ภาพ/ข้อมูล ---> ถูกแสดงอยู่
// Profile School
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Connectstring='DSN=School'"
connect using Sqlca;
If Sqlca.Sqlcode 0 then
Messagebox("ติดต่อกับ ดาต้าเบสไม่ได้",Sqlca.SqlErrText)
Return
End if
จากสคริปต์ด้านบนนี้เราจะวางเอาใว้ที่ Open event ของ Application เพื่อทำการติดต่อกับ ดาต้าเบส แต่วิธีดังกล่าวจะไม่ยืดหยุ่นเท่าทีควรทางที่ดีเราควรจะทำการกำหนดค่าต่างๆลงในไฟล์ INI ก่อน เพื่อสะดวกต่อการแก้ไขค่าต่างๆ
string startupfile
startupfile = "c:governsc.ini"
sqlca.DBMS = ProfileString (startupfile, "database", "dbms", "")
sqlca.database = ProfileString (startupfile, "database", "database", "")
sqlca.userid = ProfileString (startupfile, "database", "userid", "")
sqlca.dbpass = ProfileString (startupfile, "database", "dbpass", "")
sqlca.logid = ProfileString (startupfile, "database", "logid", "")
sqlca.logpass = ProfileString (startupfile, "database", "LogPassWord", "")
sqlca.servername = ProfileString (startupfile, "database", "servername", "")
sqlca.dbparm = ProfileString (startupfile, "database", "dbparm", "")
connect;
if sqlca.sqlcode 0 then
MessageBox ("ติดต่อกับ ฐานข้อมูลไม่ได้", sqlca.sqlerrtext)
return
end if
จากสคริปต์ด้านบนนี้จะเป็นอีกตัวอย่างในการติดต่อกับ ดาต้าเบส ซึ่งจะมีการอ่านค่าต่างๆมาจากไฟล์ startup.ini ซึ่งเมื่อมีการแก้ไขค่าต่างๆเราก็แค่เข้าไปแก้ในไฟล์ startup.ini
จาก www.soopsawat.com


