台灣最大程式設計社群網站
線上人數
1393
 
會員總數:246203
討論主題:189776
歡迎您免費加入會員
討論區列表 >> ASP >> 請問MySQL ODBC 版本更新
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
請問MySQL ODBC 版本更新
價值 : 30 QP  點閱數:2415 回應數:8
樓主

repair168
初學者
432 293
1132 250
發送站內信

大家好:

其他部門有台電腦灌有MySQL,我們部門打算寫網頁去撈取,過去連結自身部門的MySQL我的語法如下;

conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties= DRIVER={MySQL ODBC 3.51 Driver};DESC=;DATABASE=SPEC;SERVER=Peter-PC;UID=root;PASSWORD=PeterWay;PORT=;OPTION=;STMT=;"

可是我用My SQL Control Center測試正常,但寫了網頁測試與其他部門資料庫連結,結果出現連結異常,我上網查異常訊息是說遠端資料庫不接受MySQL ODBC3.51,必須更新到4.0以上,
我今天也下載到MySQL ODBC V5.2

因為必須到公司才能做測試,
Q1:請問我是到公司先做ODBC更新,在把網頁中Extended Properties= DRIVER={MySQL ODBC 3.51 Driver};3.51改成5.26就可以嗎?還是寫法格式不同?
Q2:我電腦可以同時存在ODBC3.51和5.26版本嗎?我舊的網頁需要跟著改嗎?

THX

本篇文章發表於2014-03-23 12:00
1樓
作者回應

repair168
檢舉此回應
各位好:

我使用官網的ODBC v5.2.6版本怎麼灌都不行,後來上網找到V.5.2.5,安裝就很順利完成,ODBC也設定測試正常了

現在的問題是,ASP裡面與資料庫連結要怎麼改?我過去V3.51版本寫法如下:
==================================================================
Set conn = Server.CreateObject("ADODB.Connection")


conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties= "DRIVER={MySQL ODBC 3.51 Driver};DESC=;DATABASE=SPECDATA;SERVER=Peter;" & "UID=admin;PASSWORD=admin;PORT=3306;OPTION=;STMT=;"
=====================================================================

我試過直接將3.51改為5.2和5.2.5,不過都出現以下錯誤

[Microsoft][ODBC 驅動程式管理員] 找不到資料來源名稱且未指定預設的驅動程式


請問該如何做修改(另外我連結的資料庫只允許我"讀取"不能修改)

謝謝
本篇文章回覆於2014-03-24 04:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

repair168
檢舉此回應
大家好:

我測試過後,3.51 Driver應該是改成DRIVER={MySQL ODBC 5.2 Unicode Driver}(即照ODBC上面的驅動程式敘述),修改後如下:
==================================================================
Set conn = Server.CreateObject("ADODB.Connection")
conn.CursorLocation = 3 '因資料庫唯讀,新增此行

conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties= "DRIVER={MySQL ODBC 5.2 Unicode Driver};DESC=;DATABASE=SPECDATA;SERVER=Peter;" & "UID=admin;PASSWORD=admin;PORT=3306;OPTION=;STMT=;"
=====================================================================

不過修改後的錯誤如下:
[MySQL][ODBC 5.2(w) Driver]Access denied for user 'root'@'James-PC' (using password: YES)

請問是那裡的問題?(似乎是與唯讀有關)

謝謝~
本篇文章回覆於2014-03-24 06:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

repair168
檢舉此回應
大家好:

我測試過後,3.51 Driver應該是改成DRIVER={MySQL ODBC 5.2 Unicode Driver}(即照ODBC上面的驅動程式敘述),修改後如下:
==================================================================
Set conn = Server.CreateObject("ADODB.Connection")
conn.CursorLocation = 3 '因資料庫唯讀,新增此行

conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Extended Properties= "DRIVER={MySQL ODBC 5.2 Unicode Driver};DESC=;DATABASE=SPECDATA;SERVER=Peter;" & "UID=admin;PASSWORD=admin;PORT=3306;OPTION=;STMT=;"
=====================================================================

不過修改後的錯誤如下:
[MySQL][ODBC 5.2(w) Driver]Access denied for user 'root'@'James-PC' (using password: YES)

請問是那裡的問題?(似乎是與唯讀有關)

謝謝~
本篇文章回覆於2014-03-24 06:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

老頑童
捐贈 VP 給 老頑童 檢舉此回應
連接字串前半段寫的是User ID=root
而後面卻又用UID=admin
而訊息是root被拒絕存取,代表root帳號有問題
請先確定到底是用root?還是admin?
本篇文章回覆於2014-03-24 09:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

repair168
檢舉此回應
其實對方有給我一組帳號密碼,只能讀取資料庫

我只是想避免資訊外露,PO文改寫了admin

============================================
conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=dept;Extended Properties= "DRIVER={MySQL ODBC 5.2 Unicode Driver};DESC=;DATABASE=SPECDATA;SERVER=Peter;" & "UID=dept;PASSWORD=dept$;PORT=3306;OPTION=;STMT=;"
====================================================

所以若對方給我的帳號密碼是dept/dept$

我的User ID和UID應該都是dept$ ?

因為之前都是連自己部門資料庫,沒搞得很清楚

thx
本篇文章回覆於2014-03-24 13:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

repair168
檢舉此回應
其實對方有給我一組帳號密碼,只能讀取資料庫

我只是想避免資訊外露,PO文改寫了admin

============================================
conn.open " Provider=MSDASQL.1;Persist Security Info=False;User ID=dept;Extended Properties= "DRIVER={MySQL ODBC 5.2 Unicode Driver};DESC=;DATABASE=SPECDATA;SERVER=Peter;" & "UID=dept;PASSWORD=dept$;PORT=3306;OPTION=;STMT=;"
====================================================

所以若對方給我的帳號密碼是dept/dept$

我的User ID和UID應該都是dept$ ?

因為之前都是連自己部門資料庫,沒搞得很清楚

thx
本篇文章回覆於2014-03-24 14:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
最有價值解答

老頑童
捐贈 VP 給 老頑童 檢舉此回應
建議參考ConnectionStrings網站提供的寫法
http://www.connectionstrings.com/mysql-connector-odbc-5-2/
本篇文章回覆於2014-03-24 14:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

repair168
檢舉此回應
感謝~照此資料操作即可
本篇文章回覆於2014-03-24 16:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.