安徽新华电脑专修学院_安徽电脑培训_安徽电脑培训学校_合肥电脑培训

當前位置:首頁 > 網站舊欄目 > 學習園地 > 名師教程 > 利用ASP連接各種數據庫

利用ASP連接各種數據庫
2006-03-11 11:24:35  作者:木子摘錄  來源:

ASP連接DBFDBCMDBExcelSQL Server型數據庫的方法:
一、ASP的對象存取數據庫方法
 
ASP中,用來存取數據庫的對象統稱ADOActive Data Objects),主要含有三種對象:ConnectionRecordset Command
Connection
:負責打開或連接數據
Recordset
:負責存取數據表
Command
:負責對數據庫執行行動查詢命令

二、連接各數據庫的驅動程序
 
連接各數據庫可以使用驅動程序,也可以使用數據源,不過我建議大家使用驅動程序,因為使用驅動程序非常方便、簡單,而使用數據源比較麻煩。

驅動程序          適用數據庫類型
Microsoft.Jet.OLEDB.4.0
     Mdb
Microsoft Access Driver
     Access
Microsoft dBase Driver
      Dbase
Microsoft Excel Driver
      Excel
Microsoft Visual FoxPro Driver  Dbc
SQLOLEDB.1
          SQL srver7.0
  
而我們在一般情況下使用Access的數據庫比較多,在這里我建議大家連接Access數據庫使用下面的方法:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " &

server.mappath("../db/bbs.mdb")

其中../db/bbs.mdb是你的數據庫存放的相對路徑!如果你的數據庫和ASP文件在同一目錄下,你只要這樣寫就可以了:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("bbs.mdb")
有許多初學者在遇到數據庫連接時總是會出問題,然而使用上面的驅動程序只要你的數據庫路徑選對了就不會出問題了

 

ASP連接數據庫的5種方法

 

第一種 - 這種方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn

第二種-這種方法用在SQL SERVER中多
strconn = "Driver={SQL Server};Description=sqldemo;SERVER=127.0.0.1;" _
&"UID=LoginID;Password=;DATABASE=Database_Name"
set conn = server.createobject("adodb.connection")
conn.open strconn

第三種
strconn="Driver={Microsoft Access Driver(*.mdb)};" _
&"DBQ=F:\Inetpub\wwwroot\somedir\db1.mdb;DefaultDir=" _
&"f:\Inetpub\wwwroot\somedir;uid=LoginID;" _
&"pwd=Password;DriverId=25;FIL=MSAccess;" 
set conn = server.createobject("adodb.connection")
conn.open strconn

第四種運用系統數據源
The following uses a Data Source Name: Example
set conn = server.createobject("adodb.connection")
conn.open "Example"

第五種運用ODBC數據源,前提是你必須在控制面板的ODBC中設置數據源
set rs = server.createobject("adodb.recordset")
rs.open "tblname", "DSNName", 3, 3  
第一種 - 這種方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn

 

ASP如何使用MYSQL數據庫

 

mysql數據庫以它短小、方便、速度快、免費等優點成為很多網站目前首選
數據庫,但一般都是用php+mysql相結合來開發各種動態頁面,其實asp也可以
使用mysql數據庫開發動態頁面,小弟我也是剛剛學會,不敢獨享,所以特寫了
這篇文章供大伙參考。
我的環境是windows2000+iis5.0+mysql-3.23.32-win+php4
mysql-3.23.32-win
(這個是最新版的)
myodbc-2.50.36-dll
(這個是最重要的,mysql odbc的驅動程序,可以在www.mysql.com下載)
第一步:安裝mysql odbd的驅動程序,將下載的myodbd-2.50.46-dll文件復制到windows\system目錄下(windows2000winnt/system32)
然后建立一新文件,擴展名為reg(就是注冊表文件),將以下內容復制到該文件中。
regedit4

[hkey_local_machine\software\odbc\odbcinst.ini\myodbc driver] 
"usagecount"=dword:00000002 
"driver"="c:\\windows\\system\\myodbc.dll" 
"setup"="c:\\windows\\system\\myodbc.dll" 
"sqllevel"="1" 
"fileusage"="0" 
"driverodbcver"="02.50" 
"connectfunctions"="yyy" 
"apilevel"="1" 
"cptimeout"="120" 
[hkey_local_machine\software\odbc\odbcinst.ini\odbc drivers] 
"myodbc driver"="installed" 

保存后雙擊該文件,將上面代碼注冊到windows注冊表中。
如果安裝在windows2000,driversetup主鍵的值要做相應改變,這里我想就不用多說了。
如果成功,在控制面板/odbd數據源的驅動程序里將看到myodbd driver這一項!

第二步:建立asp文件鏈接數據庫。
這里有兩種方法,一種是在odbc數據源中建立一個系統dsn。后來我發現不建立也可以在asp中使用mysql,方法在下文將講道。
打開控制面板/odbd數據源,選擇系統dsn,然后添加一個新的dsn,驅動程序選擇myodbd driver,會出現一個對話框供輸入mysql
相關信息。

windows dsn name: 
所要建立dsn的名稱
mysql host (name or ip):mysql
服務器的名稱或者是ip地址,通常填localhost
mysql database name:
需要使用數據庫的名稱,數據庫在mysql管理程序中建立。這里我們使用一個例子。數據庫名:
hc188
里面有數據表:user 數據表有兩個字段分別是:usernamepassword,隨便插入幾個數據。

user:
鏈接數據庫的用戶名,我填的是root超級用戶
password:
鏈接數據庫用戶密碼,如果沒有,可以不填
port(if not 3306)
mysql在服務器的端口,如果不填默認為3306
sql command on connect:
使用sql命令鏈接數據庫,這項可以不填

填寫完畢后選擇ok保存。

下面鏈接數據庫的asp代碼!


strconnection = "dsn=hc188;driver={myodbd driver};server=localhost;uid=root;pwd=;database=hc188" 
set adodataconn = server.createobject("adodb.connection") 
adodataconn.open strconnection

strquery = "select * from user" 
set rs = adodataconn.execute(strquery) 
if not rs.bof then 
%
 
table
 
tr

tdbusername/b></td
td><bpassword/b></td
/tr 

do while not rs.eof 
%
 
tr

td><%=rs("username")%></td
td><%=rs("password")%></td
/tr 

rs.movenext 
loop 
%
 
/table
 

else 
response.write("sorry, no data found.") 
end if 

rs.close 
adodataconn.close 
set adodataconn = nothing 
set rsemaildata = nothing 
%

第二種方法:我在使用中想過如果不建立系統dsn,是否也可以使用mysql數據庫呢?結果是可以的。
方法很簡單,把上面asp代碼第二行代碼改為:
strconnection="defaultdir=;driver={myodbc driver};database=hc188"

我奇怪的發現,這種方法連用戶名和密碼都不需要就可以使用。是不是mysql的一個bug呢?

以上代碼全部經測試通過!

 

ASP 編程中 20 個非常有用的例子

 

1.如何用Asp判斷你的網站的虛擬物理路徑
答:使用Mappath方法
< p align="center" >< font size="4" face="Arial" >< b >
The Physical path to this virtual website is:
< /b >< /font >
< font color="#FF0000" size="6" face="Arial" >
< %= Server.MapPath("\")% >
< /font >< /p >
2.
我如何知道使用者所用的瀏覽器?
答:使用the Request object方法
strBrowser=Request.ServerVariables("HTTP_USER_AGENT")
If Instr(strBrowser,"MSIE") < > 0 Then
  Response.redirect("ForMSIEOnly.htm")
Else
  Response.redirect("ForAll.htm")
End If

3.
如何計算每天的平均反復訪問人數
答:解決方法
< % startdate=DateDiff("d",Now,"01/01/1990")
if strdate< 0 then startdate=startdate*-1
avgvpd=Int((usercnt)/startdate) % >
顯示結果
< % response.write(avgvpd) % >
that is it.this page have been viewed since November 10,1998

4.
如何顯示隨機圖象
< % dim p,ppic,dpic
ppic=12
randomize
p=Int((ppic*rnd)+1)
dpic="graphix/randompics/"&p&".gif"
% >
顯示
< img src="< %=dpic% >" >

5.
如何回到先前的頁面
答:< a href="< %=request.serverVariables("Http_REFERER")% >" >preivous page< /a >
或用圖片如:< img src="arrowback.gif" alt="< %=request.serverVariables("HTTP_REFERER")% >" >

6.
如何確定對方的IP地址
答:< %=Request.serverVariables("REMOTE_ADDR)% >

7.
如何鏈結到一副圖片上
答:< % @Languages=vbscript % >
< % response.expires=0
strimagename="graphix/errors/erroriamge.gif"
response.redirect(strimagename)
% >

8.
強迫輸入密碼對話框
答:把這句話放載頁面的開頭
< % response.status="401 not Authorized"
response.end
% >

9.
如何傳遞變量從一頁到另一頁
答:用 HIDDEN 類型來傳遞變量
< % form method="post" action="mynextpage.asp" >
< % for each item in request.form % >
< input namee="< %=item% >" type="HIDDEN"
value="< %=server.HTMLEncode(Request.form(item)) % >" >
< % next % >
< /form >

10.
為何我在 asp 程序內使用 msgbox,程序出錯說沒有權限
答:由于 asp 是服務器運行的,如果可以在服務器顯示一個對話框,那么你只好等有人按了確定之后,你的程序才能繼續執行,而一般服務器不會有人守著,所以微軟不得不禁止這個函數,并胡亂告訴你 (:) 呵呵) 沒有權限。但是ASP和客戶端腳本結合倒可以顯示一個對話框,as follows:
< % yourVar="
測試對話框"% >
< % script language='javascript' >
alert("< %=yourvar% >")
< /script >

11.
有沒有辦法保護自己的源代碼,不給人看到
答:可以去下載一個微軟的Windows Script Encoder,它可以對asp的腳本和客戶端javascript/vbscript腳本進行加密。。。不過客戶端加密后,只有ie5才能執行,服務器端腳本加密后,只有服務器上安裝有script engine 5(裝一個ie5就有了)才能執行。

12.
怎樣才能將 query string 從一個 asp 文件傳送到另一個?
答:前者文件加入下句:Response.Redirect("second.asp?" & Request.ServerVariables("QUERY_STRING"))

13.global.asa
文件總是不起作用?
答:只有web目錄設置為web application, global.asa才有效,并且一個web application的根目錄下 global.asa才有效。IIS4可以使用Internet Service Manager設置application setting 怎樣才能使得htm文件如同asp文件一樣可以執行腳本代碼?

14.
怎樣才能使得htm文件如同asp文件一樣可以執行腳本代碼?
答:Internet Sevices Manager - > 選擇default web site - >右鼠鍵- >菜單屬性-〉主目錄- > 應用程序設置(Application Setting- > 點擊按鈕 "配置"- > app mapping - >點擊按鈕"Add" - > executable browse選擇 \WINNT\SYSTEM32\INETSRV\ASP.DLL EXTENSION 輸入 htm method exclusions 輸入PUT.DELETE 全部確定即可。但是值得注意的是這樣對htm也要由asp.dll處理,效率將降低。

15.
如何注冊組件
答:有兩種方法。
第一種方法:手工注冊 DLL 這種方法從安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢

相關熱詞搜索:名師講堂
主站蜘蛛池模板: 截止阀,电动,气动,手动,化工截止阀-上海申弘阀门有限公司 | 郑州宏大纺机有限公司| 天象文仪办公家具,25年一站式配齐经验厂家-办公家具官网 | 冷却特性测试仪_ 刀柄热胀仪_加油小车价格_皮带张力仪_上海川奇机电设备有限公司 | 芜湖藦卡机器人科技有限公司 | 食用油灌装机-油类食用油灌装设备-液体灌装机_青州市惠联灌装机械 | 外墙涂料_真石漆_真石漆批发_河南宝润达真石漆厂家 | 组合包装箱,折叠包装箱,烟台木箱,烟台包装箱-烟台顺达包装有限责任公司 | 清河县隆鑫密封件有限公司,汽车用密封条,配电箱柜、集装箱密封胶条,建筑门窗、家具用密封条,无毒环保医用密封条,船舶、农机用密封条,异型产品 | 河卵石制砂机|鹅卵石制砂机-移动制砂机-制砂设备-郑州秦星机械设备有限公司 | 天津津腾,微孔滤膜,隔膜真空泵,针式过滤器-艾科仪器 | 葫芦岛装修公司,兴城装修家装公司,葫芦岛鑫昕装饰 | 上海家博会_2025上海家博会时间表_5月31-6月2日_上海家博会门票_免费领取入口 | 净化塔_喷淋塔_脱硫塔_河北宝飞华创玻璃钢制造有限公司-河北宝飞华创玻璃钢制造有限公司 | 压瓦机|C型钢机|彩钢设备|C/Z互换檩条机-河北玉发压瓦机 | 石家庄团建公司|石家庄拓展训练|石家庄拓展培训|石家庄公司团建|石家庄拓展公司-石家庄启聚团建公司 | 斜管填料_斜板填料_纤维球_果壳活性炭_立体网状填料_纤维球厂家-巩义市德科净水材料有限公司 | 宿迁市华泰交通设施有限公司,上海第四代路名牌,天津仿罗马柱路名牌,标准路名牌,路名牌灯箱,公交站台,户外广告灯箱, 交通标志牌,社区阅报栏 | 开拓者喷雾设备有限公司专业生产喷嘴,喷雾设备,清洗,喷涂,降温,除尘,润滑等喷雾系统的方案解决商 | 临沂网站建设,临沂网站制作,临沂网络公司,临沂小程序开发,临沂网站设计,沂水网站建设,沂南网站建设,蒙阴网站建设,平邑网站建设,费县网站建设,兰陵网站建设,郯城网站建设,临沭网站建设,莒南网站建设,兰山网络公司 | 斜管填料_斜板填料_纤维球_果壳活性炭_立体网状填料_纤维球厂家-巩义市德科净水材料有限公司 | 浙江三龙通用机械有限公司 圆丝机,拉丝机,复合机 | 青岛网站建设_网站制作_品牌设计_网站设计_圭谷设计 | 曙海培训-仿真培训Linux培训html5培单片机培训PCB培训python培训PLC培训C语言培训android培训物联网培训无线电培训欧姆龙培训工业机器人培训5G培训Hadoop培训CFD培训项目外包开发咨询 | 塑料振动筛-防腐蚀振动筛-聚丙烯振动筛-塑料振动筛厂家河南迈能机械设备有限公司 | 徐州护栏,围栏,锌铁丝网围栏安全设施专家徐州铜山区威峰金属护栏厂 | 生物除臭塔_生物除臭箱_玻璃钢吸收塔_玻璃钢集气罩_-安丘恒业玻璃钢有限公司 | 耐压测试仪(检测电气设备绝缘性能)百科 | 合肥发斯特精密塑模有限公司专业精密磨具,注塑模具,精密注塑机械零件(加工制造|生产|销售|厂家) 浩通集团 国际货运 物贸一体化 中非经贸 | 上海祝融起重机械有限公司-德国耶鲁手拉葫芦|耶鲁手拉葫芦|耶鲁手扳葫芦|耶鲁电动葫芦经销代理 | 全棉帆布厂家_加工帆布_涤棉帆布价格_染色帆布定制_广州美丽华皮革帆布-广州美丽华皮革帆布 | 勺子互联-b2b电子商务平台,免费产品发布 | 兰州环氧地坪,兰州防火涂料-甘肃皓天环氧地坪工程 | 潍坊亿宏重工机械有限公司,破碎机,高性能立磨机,颚式破碎机,锤式破碎机反击式破碎机,重锤式破碎机,高性能反击式破碎机,圆锥式破碎机,给料机系列,链板给料机系列,简易给料机系列,振动给料机 | 履带式移动破碎站-移动筛分站-移动碎石机-破碎机_山东奥凯诺矿机 | 液压升降机_导轨式电动液压升降平台_别墅电梯生产厂家-海南重康升降机 | 矿用精确定位系统,井下4G无线通讯系统,工作面集控系统,皮带保护系统-山东新云鹏电气有限公司 | 气体检测仪_气体传感器_可燃气体检测仪-精讯畅通电子科技 | 质量技术监督12365防伪追溯平台-www.12365china.net | 宿迁网站建设-宿迁做网站-宿迁网站制作-宿迁网络公司-宿迁网页设计-宿迁软件开发-宿迁新动力软件开发有限公司 | 限矩型液力偶合器_调速型液力偶合器_摩擦型耦合器生产厂家-河南省华升矿机有限公司 |