[教學]ASP連接Mysql資料庫

文章引用修改自http://www.xishuiw.com/info/2009-2/2009-2-22-16232.htm

我一開始以為ASP使用資料庫不是連接SQL Server就是Access
(當然我知道可以連接Excel或是csv ….等等之類的,但效率都頗差)

現在教你方法

1.   安裝MySql,應該也都不用自己慢慢裝,還要設定甚麼的
網路上整合包很多,連Appserv或是XAMPP都這麼發達,隨便去裝一個就有了

 

2.  然後到Mysql官網下載MySQL Connector/ODBC 目前版本為5.1
http://dev.mysql.com/downloads/connector/odbc/5.1.html

安裝完,電腦當然沒啥改變,到控制台 > 系統管理工具 > 資料來源 (ODBC) > 驅動程式

來看看有沒有成功安裝 (捲軸往下拉,應該會有Mysql ODBC 5.1 Driver)

3.  建立資料庫,還有資料表,倒入資料(我之後再發文)

3. 使用ASP語法

 

先建立connection物件,內文有中文字的部分要自行修改

connstr=”driver={mysql odbc 5.1 driver};database=資料庫名;server=localhost;uid=使用者名稱;password=密碼;Stmt=Set Names ‘UTF-8′”
set conn = server.createobject(“adodb.connection”)
conn.open connstr

然後是建立Recordset物件

set rs=server.createobject(“adodb.recordset”)
sql=”select * from 資料表名”
rs.open sql,conn,1,2

或者這樣建立Recordset物件

set rs = conn.execute(“select * from 資料表名”)

剩下的用法就跟之前叫Access的用法都一樣了

 

跑不出來時,有幾個重點

1. 請確認是否MySQL Connector/ODBC有安裝成功

2. 資料庫登入的帳號/密碼/主機/資料庫

3. SQL語法有些會與Access的不同,像是資料表名就不用中括號 [ ] 包
等等…請見其用法

4. 看網路上的文章,MySQL Connector 3.51版不支援UTF-8請更新版本

5. 若出現亂碼,請注意資料庫的編碼  和  連線時設定的編碼  與  網頁顯示的編碼  是否都吻合?

 

 

有問題再提出來吧

 

上午 01:00 2009/7/11
目前發現,Mysql不支援ASP本身的分頁功能
(應該定位式資料存取也不支援,看來還是要用Mysql提供的limit語法了…)

rs.AbsolutePage = Page

————————————

像是資料表名就不用中括號 [ ] 包
Emeditor有批次的解決辦法記得勾Regular Expressions
搜尋     \[(.*?)\]
取代     \1\E

在〈[教學]ASP連接Mysql資料庫〉中有 1 則留言

  1. rs.absolutepage 處會產生 Recordset 不支援書籤的錯誤,資料庫開啟前先加入以下語法就 OK
    rs.CursorLocation = 3
    版主回覆:(05/26/2011 01:55:40 PM)
    謝謝大大提供此方法
    我有空試試看

留言功能已關閉。