在紫金橋組態(tài)軟件中,連接mysql數(shù)據(jù)庫的方式一般有兩種:
一 用報表關(guān)系數(shù)據(jù)源點
1 在點組態(tài)中創(chuàng)建“報表關(guān)系數(shù)據(jù)源點”

2 在聯(lián)接字符串后面點擊 ,并選擇“使用DNS數(shù)據(jù)庫源連接”

3 彈出路徑選擇對話框,點擊 新建

4 找到“mysql odbc 5.1 Driver”,并“下一步”

5點擊瀏覽,選擇路徑保存。并點擊下一步。
6 點擊完成。

7 選擇剛才新建的數(shù)據(jù)源。點擊確定。

8 本地mysql的話,只需要選擇database。如果是遠程數(shù)據(jù)庫,輸入遠程ip。點擊test按鈕。


9 在報表中點擊“關(guān)系數(shù)據(jù)庫連接設(shè)置”

,然后點擊

選擇關(guān)系數(shù)據(jù)源點

10 選擇事先建立好的關(guān)系數(shù)據(jù)源點mysql

11 回到關(guān)系庫連接設(shè)置,并“確認”
這樣就可使用報表對象的Sql函數(shù)來訪問數(shù)據(jù)庫了,如:
#report.SqlSelectCmd(csCmd);//其中csCmd為SQL命令的字符串。
二 用SQL連接函數(shù)
SQLConnect( ConnectID, SourceDesc)
ConnectID整型,數(shù)據(jù)源標識,為返回值,該值將用于其它后續(xù)SQL函數(shù)。
SourceDesc字符串,數(shù)據(jù)源描述。數(shù)據(jù)源描述可以通過腳本中工具條 按鈕“SQL連接“按鈕得到。
使用示例形如:SQLConnect(ConnectID,"DSN=abc;DBQ=D:\0\abc.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;");
如何獲取SourceDesc即數(shù)據(jù)源描述字符串?
步驟:
1 點擊腳本工具條

2 選擇之前建的mysql.dsn后,選擇“確定”

3 本地mysql的話,只需要選擇database。如果是遠程數(shù)據(jù)庫,輸入遠程ip。點擊test按鈕。


4在腳本編輯區(qū)中就出現(xiàn)該mysql數(shù)據(jù)的聯(lián)接字符串:

注意:如果要使用中文字符串,必須指定字符編碼為gbk。而且odbc連接的字符編碼、數(shù)據(jù)庫的字符編碼、表的字符串字段的字符編碼都要設(shè)置為gbk。
總結(jié):組態(tài)連接mysql數(shù)據(jù)庫,使用的是DSN,而access,sql server,oracle數(shù)據(jù)庫有自己專門的驅(qū)動連接。但是他們同樣也可以使用DSN連接。所以,如果有新的類型的數(shù)據(jù)庫要連接,可以嘗試DSN連接。