在ASP中連接MySQL數(shù)據(jù)庫,最好的通過ODBC方法
更新時(shí)間:2006年11月04日 00:00:00 作者:
折騰了一陣,總算把ASP和MySQL連接完成了,有感,特寫此文與大家一同分享。
查了很多資料,ASP和MySQL連接目前有兩種辦法:一個(gè)是使用組件,比較有名是MySQLX,可惜要99美元。二就是使用MyODBC 來連接,下面我們 就來看看第二種方式。
試驗(yàn)的平臺:
MySQL 4.0 For RadHat Linux (也可以使用for windows) Windows 2003 standard Edition Windows XP English
一、安裝MyODBC
1.訪問網(wǎng)站 www.mysql.com 并下載 MyODBC ,我們使用的是3.51版本。
2.安裝MyODBC到Windows中
運(yùn)行下載回來的MyODBC-3.51.06.exe(文件名因版本而異)
二、建立ODBC連接
進(jìn)入:控制面板-》ODBC數(shù)據(jù)源
這時(shí)候,我們已經(jīng)可以看到在用戶DSN中已經(jīng)存在一項(xiàng):myodbc3-test,注意右邊的Driver{mysql odbc 3.51 driver}這個(gè)參數(shù)一會要一字不漏的作 為ASP和數(shù)據(jù)庫連接的連接字(Conection String)。
添加一個(gè)“系統(tǒng)DSN”
選擇對話框中“系統(tǒng)DSN”欄,按下右邊的“添加”按鈕。這時(shí)候會讓你選擇一個(gè)數(shù)據(jù)源。選擇 MySQL ODBC 3.51 Driver。按“結(jié)束”。
這時(shí)候,會彈出一個(gè)配置對話框:
Data Source Name 數(shù)據(jù)源名字:在程序中使用的DSN的標(biāo)識符,可以隨便命名。
Host/Server Name (or IP)主機(jī)/服務(wù)器 名字 (或者IP 地址),如果是本機(jī)就填入localhost
Database Name 數(shù)據(jù)庫名:你要在程序中使用的庫名。
User 用戶:登錄MySQL 使用的用戶名,特別注意,root用戶由于安全問題只能在本機(jī)登錄,當(dāng)然啦,用戶可以通過修改user表來去掉這個(gè)功能。
Password 密鑰:登錄的密碼
Port 端口:使用默認(rèn)值,最好不要改,除非你有把握。
全部設(shè)置好了以后,按下“測試數(shù)據(jù)源”會看到屏幕顯示連接成功。
配置就全部搞定了!
三、ASP和數(shù)據(jù)庫的連接
下面是我測試過的,連接MySQL的源代碼,連接的庫名為mm,表名為my,表中有兩個(gè)字段 name 和 sex。
查了很多資料,ASP和MySQL連接目前有兩種辦法:一個(gè)是使用組件,比較有名是MySQLX,可惜要99美元。二就是使用MyODBC 來連接,下面我們 就來看看第二種方式。
試驗(yàn)的平臺:
MySQL 4.0 For RadHat Linux (也可以使用for windows) Windows 2003 standard Edition Windows XP English
一、安裝MyODBC
1.訪問網(wǎng)站 www.mysql.com 并下載 MyODBC ,我們使用的是3.51版本。
2.安裝MyODBC到Windows中
運(yùn)行下載回來的MyODBC-3.51.06.exe(文件名因版本而異)
二、建立ODBC連接
進(jìn)入:控制面板-》ODBC數(shù)據(jù)源
這時(shí)候,我們已經(jīng)可以看到在用戶DSN中已經(jīng)存在一項(xiàng):myodbc3-test,注意右邊的Driver{mysql odbc 3.51 driver}這個(gè)參數(shù)一會要一字不漏的作 為ASP和數(shù)據(jù)庫連接的連接字(Conection String)。
添加一個(gè)“系統(tǒng)DSN”
選擇對話框中“系統(tǒng)DSN”欄,按下右邊的“添加”按鈕。這時(shí)候會讓你選擇一個(gè)數(shù)據(jù)源。選擇 MySQL ODBC 3.51 Driver。按“結(jié)束”。
這時(shí)候,會彈出一個(gè)配置對話框:
Data Source Name 數(shù)據(jù)源名字:在程序中使用的DSN的標(biāo)識符,可以隨便命名。
Host/Server Name (or IP)主機(jī)/服務(wù)器 名字 (或者IP 地址),如果是本機(jī)就填入localhost
Database Name 數(shù)據(jù)庫名:你要在程序中使用的庫名。
User 用戶:登錄MySQL 使用的用戶名,特別注意,root用戶由于安全問題只能在本機(jī)登錄,當(dāng)然啦,用戶可以通過修改user表來去掉這個(gè)功能。
Password 密鑰:登錄的密碼
Port 端口:使用默認(rèn)值,最好不要改,除非你有把握。
全部設(shè)置好了以后,按下“測試數(shù)據(jù)源”會看到屏幕顯示連接成功。
配置就全部搞定了!
三、ASP和數(shù)據(jù)庫的連接
下面是我測試過的,連接MySQL的源代碼,連接的庫名為mm,表名為my,表中有兩個(gè)字段 name 和 sex。
復(fù)制代碼 代碼如下:
<html>
<head>
<title>MySQL連接測試</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
strconnection="dsn=系統(tǒng)DSN的名字;driver={MYSQL ODBC 3.51 driver};server=服務(wù)器IP地址;uid=連接數(shù)據(jù)庫的用戶名;pwd=密碼;database=數(shù)據(jù)庫名"
'lybykw test for 2006年08月21日 星期一 8:49:44
'連接字符串,dsn就是我們設(shè)置的數(shù)據(jù)源標(biāo)識符注意driver我們剛才在設(shè)置系統(tǒng)DSN的時(shí)候提過。
set conn = server.createobject("adodb.connection")
conn.open strconnection
sql = "select * from test" 'SQL查詢語句
set rs = conn.execute(sql)
if not rs.bof then
%>
<table width=600 border=1>
<tr>
<td width=""><b>name</b></td>
<td width=""><b>sex</b></td>
</tr>
<%
do while not rs.eof
%>
<tr>
<td><%=rs("name")%></td> <!-- name字段 -->
<td><%=rs("sex")%></td> <!-- sex字段 -->
</tr>
<%
rs.movenext
loop
%>
</table>
<%
rs.close
else
response.write("對不起,沒有找到數(shù)據(jù)。")
end if
set rs = nothing
conn.close
set conn = nothing
%>
</body>
</html>
<head>
<title>MySQL連接測試</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<%
strconnection="dsn=系統(tǒng)DSN的名字;driver={MYSQL ODBC 3.51 driver};server=服務(wù)器IP地址;uid=連接數(shù)據(jù)庫的用戶名;pwd=密碼;database=數(shù)據(jù)庫名"
'lybykw test for 2006年08月21日 星期一 8:49:44
'連接字符串,dsn就是我們設(shè)置的數(shù)據(jù)源標(biāo)識符注意driver我們剛才在設(shè)置系統(tǒng)DSN的時(shí)候提過。
set conn = server.createobject("adodb.connection")
conn.open strconnection
sql = "select * from test" 'SQL查詢語句
set rs = conn.execute(sql)
if not rs.bof then
%>
<table width=600 border=1>
<tr>
<td width=""><b>name</b></td>
<td width=""><b>sex</b></td>
</tr>
<%
do while not rs.eof
%>
<tr>
<td><%=rs("name")%></td> <!-- name字段 -->
<td><%=rs("sex")%></td> <!-- sex字段 -->
</tr>
<%
rs.movenext
loop
%>
</table>
<%
rs.close
else
response.write("對不起,沒有找到數(shù)據(jù)。")
end if
set rs = nothing
conn.close
set conn = nothing
%>
</body>
</html>
相關(guān)文章
.Net 自定義轉(zhuǎn)換器JsonConverter的使用詳解
這篇文章主要介紹了.Net 自定義轉(zhuǎn)換器JsonConverter的使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04asp漢字中文圖片驗(yàn)證碼的實(shí)現(xiàn)代碼
asp漢字中文圖片驗(yàn)證碼的實(shí)現(xiàn)代碼...2007-11-11關(guān)于無限分級(ASP+數(shù)據(jù)庫+JS)的實(shí)現(xiàn)代碼
關(guān)于無限分級(ASP+數(shù)據(jù)庫+JS)的實(shí)現(xiàn)代碼...2007-05-05實(shí)例分析之用ASP編程實(shí)現(xiàn)網(wǎng)絡(luò)內(nèi)容快速查找的代碼
實(shí)例分析之用ASP編程實(shí)現(xiàn)網(wǎng)絡(luò)內(nèi)容快速查找的代碼...2007-03-03通過MSXML2自動獲取QQ個(gè)人頭像及在線情況(給初學(xué)者)
通過MSXML2自動獲取QQ個(gè)人頭像及在線情況(給初學(xué)者)...2007-03-03asp下實(shí)現(xiàn)批量插入數(shù)據(jù)的方法
asp下實(shí)現(xiàn)批量插入數(shù)據(jù)的方法...2007-08-08asp程序執(zhí)行數(shù)據(jù)庫的效率提升建議
很多網(wǎng)友非常不喜歡用ASP來編程,他們總是抱怨說ASP程序太慢,效率太低。更希望用PHP,JSP等來寫程序。其實(shí)不能從 "認(rèn)為" 這個(gè)角度來看問題 ,而應(yīng)該從實(shí)際中看問題,ASP真的很慢的嗎,那么微軟的站為何用ASP也不慢呢2020-09-09