以前到網(wǎng)上查資料,關(guān)于C++連接mysql數(shù)據(jù)庫,所以就會用c api來操作mysql,隨后想想,只會用c api有點不太滿足,于是這幾天一直找用ado連接mysql的方法.用ado連接mysql的數(shù)據(jù)庫的資料沒找到,反而找到連接sql server的,通過ole db方式成功連接,然后修改一下連接字符,用odbc的方式又成功了,想想,在odbc中配置的sql server數(shù)據(jù)源連接方式與mysql數(shù)據(jù)源一樣,是否只在變換一下數(shù)據(jù)源就連接到她的數(shù)據(jù)庫中去呢.結(jié)果只修改數(shù)據(jù)源也把mysql連接成功了.
原來發(fā)現(xiàn),odbc與ole db的方法只是連接字符中provider與dsn之間的區(qū)別.而且在dsn中只要寫好dsn就可以.用戶名和密碼等在dsn中已配置好.
下一步就是如何來操作這些存儲過程了.因為我的SQL語句都寫在數(shù)據(jù)庫上.呵,完全是為了安全嗎?
PS:今天(2009-01-22)終于把C++調(diào)用存儲過程中的返回數(shù)據(jù)集搞好了.問題出在聯(lián)接數(shù)據(jù)時,最后一個參數(shù)沒有設(shè)置成CLIENT_MULTI_STATEMENT。
幾個月前沒有顯示中文是因為沒有加“mysql_query(&mysql,"set names gb2312"),現(xiàn)在把兩個問題都解決了。