- 資訊首頁(yè) > 開(kāi)發(fā)技術(shù) > web開(kāi)發(fā) > ASP >
- asp連接SQL和Access數據代碼(asp里的隨機函數)
asp連接sql
第一種寫(xiě)法:
代碼如下:
MM_conn_STRING = "Driver={SQL Server};server=(local);uid=sa;pwd=;database=infs;"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING
SET RS=SERVER.CreateObject("ADOBD.recordset")
SQL="SELECT * FROM TABLE ORDER BY ID DESC"
RS.open SQL,CONN,3,3
常用的函數代碼:
代碼如下:
DataServer = "jb51" '數據庫服務(wù)器IP
DataUser = "jb51" '訪(fǎng)問(wèn)數據庫用戶(hù)名
DataBaseName = "jb51" '數據庫名稱(chēng)
DataBasePsw = "www.jb51.net" '訪(fǎng)問(wèn)數據庫密碼
Set conn = Server.CreateObject("ADODB.Connection")
ConnStr="driver={SQL Server};server="&dataserver&";UID="&datauser&";PWD="&databasepsw&";Database="&databasename
conn.open ConnStr
If Err Then Err.Clear:Set conn = Nothing:Response.Write "數據庫連接出錯,請檢查Conn.asp文件中的數據庫參數設置。":Response.End
使用ASP連接MS SQL數據庫,標準的連接,常用的多的是下面這種連接字符串:
代碼如下:
CONN.OPEN "Provider=SQLOLEDB.1;"&_
"Password='"&pass_word&"';"&_
"Persist Security Info=true;"&_
"User ID='"&User_ID&"';"&_
"Initial Catalog='"&db&"';"&_
"Data Source='"&Data_Source&"';"&_
"CONNect Timeout="&cntimeout&""
描述:
Provider=SQLOLEDB.1;數據庫提供者,后面的 1 是表示版本信息,如果沒(méi)有就會(huì )完全使用當前最新版功能
User ID=SQL帳號,數據庫的帳號
Password=SQL帳號密碼,數據庫的帳號密碼
Initial Catalog=數據庫名字(只有名字,而ACCESS的是具體帶路徑的數據文件)
Data Source=數據源,SQL服務(wù)器名或其IP,通常用IP
上五個(gè)參數缺一不可
關(guān)于Data Source:
如果 IIS 和 SQL 同一臺服務(wù)器,則 使用安裝 IIS的 IP 或 主機名HostName 或 (local)
例如:
//Data Source=(Local) '' IIS 與 SQL 一起則第一選擇它!
//Data Source=212.100.1.12
//Data Source=LSS
如果 SQLserver 是在另外的機器上,比如你連接到我機器上的的 SQLserver ,就用我機器的 IP
//Data Source=208.190.21.112 '我的SQL server IP
CONNect Timeout=連接超時(shí),是整數,缺省是30秒,可以不用
Persist Security Info= true or false 可以不用
理解SQL和ACCESS的區別:
ACCESS是文件型的數據庫,一個(gè)數據庫就是一個(gè)具體的 MDB文件,所以ACCESS的連接需要給出具體的數據庫路徑 Data Source='c:\www\mdb\aaa.mdb'
而Server.mappath(aaa.mdb)即是將aaa.mdb 映射為 c:\www\mdb\aaa.mdb
SQLserver是S/C 客戶(hù)端/服務(wù)器方式,與ACCESS完全不一樣,所以訪(fǎng)問(wèn)SQL 2000的數據庫需要建立客戶(hù)端和服務(wù)器端的連接,注意這個(gè)客戶(hù)端是針對 SQL數據庫服務(wù)器來(lái)說(shuō)的
服務(wù)器端的腳本 對 SQLserver 來(lái)說(shuō)也是“客戶(hù)端應用程序”。
SQL的數據庫物理上也是一個(gè).MDF數據文件,但這與MDB是天壤之別的,SQL的MDF 可以說(shuō)是一個(gè)數據庫的集合,里面包括了很多個(gè)數據庫(里面的每個(gè)數據庫有一個(gè)名字,每個(gè)數據庫有相應的擁有者SchMa),而ACCESS的MDB是一個(gè)文件就是一個(gè)數據庫。
故訪(fǎng)問(wèn)SQL 數據庫要指定其服務(wù)器IP 數據庫帳號密碼 數據庫名(當然無(wú)路徑可言)
而訪(fǎng)問(wèn) ACCESS 只要訪(fǎng)問(wèn) ACCESS的文件就行了。
現在要做的是,進(jìn)入企業(yè)管理器,建立一個(gè)數據庫(比如為AAA),在數據庫中,建立添加數據庫用戶(hù)和密碼,然后就可以用上面的連接字符串來(lái)連接了!
//第二種寫(xiě)法:(DSN連接)
MM_conn_STRING="DSN=BBS;UID=SA;PWD=12345"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING
SET RS=SERVER.CreateObject("ADOBD.recordset")
SQL="SELECT * FROM TABLE ORDER BY ID DESC"
RS.open SQL,CONN,3,3 // 3,3是修改、刪除、增加開(kāi)關(guān)!
//第三種寫(xiě)法:
MM_conn_STRING_own = "Driver={SQL Server};server=(local);uid=sa;pwd=11111;database=infs;"
Set conn = Server.Createobject("ADODB.Connection")
conn.open MM_conn_STRING_own
//第四種 - 這種方法用在A(yíng)CCESS中
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("asp.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn
我們常用的sqlserver與access都可以用的函數
代碼如下:
<%
Const DataBaseType=1
If DataBaseType=0 then
DBPath="/data/news.mdb" //mdb數據庫路徑
Else
'如果是SQL數據庫,請認真修改好以下數據庫選項
DataServer = "jb51" '數據庫服務(wù)器IP
DataUser = "jb51" '訪(fǎng)問(wèn)數據庫用戶(hù)名
DataBaseName = "jb51" '數據庫名稱(chēng)
DataBasePsw = "www.jb51.net" '訪(fǎng)問(wèn)數據庫密碼
End if
On Error Resume Next
If DataBaseType = 1 Then
ConnStr="driver={SQL Server};server="&dataserver&";UID="&datauser&";PWD="&databasepsw&";Database="&databasename
Else
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(DBPath)
End If
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnStr
If Err Then Err.Clear:Set conn = Nothing:Response.Write "數據庫連接出錯,請檢查Conn.asp文件中的數據庫參數設置。":Response.End
%>
連接MSSQL代碼(附加判斷代碼):
代碼如下:
<%
dim cn
set cn=server.createobject("adodb.connection")
cn.connectionstring="driver={SQL server};server=taihang;datebase=taihang;uid=sa;pwd=hacker"
cn.open
If cn.state=1 Then
response.write"數據庫連接對象已打開(kāi)"
Else
response.write"數據庫連接對象未打開(kāi)"
end If
cn.close
Set cn=nothing
%>
連接Access常用方法:
代碼如下:
Dim conn,strDataPath,connStr
set conn=server.createobject("ADODB.connection") '//定義數據庫連接對象
strDataPath=server.MapPath("example.mdb") '//數據庫路徑字符串
connStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDataPath '//數據庫連接
conn.open connStr
也可以用:
代碼如下:
Dim conn,strDataPath,connStr
set conn=server.createobject("ADODB.connection") '//定義數據庫連接對象
strDataPath=server.MapPath("example.mdb") '//數據庫路徑字符串
connStr="driver={Microsoft Access Driver (*.mdb)};dbq=" & strDataPath '//數據庫連接
conn.Open connStr
注解:
因為我們想打開(kāi)的是Access(.mdb)數據庫,所以我們要透過(guò)Access的ODBC驅動(dòng)程序{Microsoft Access Driver (*.mdb)}來(lái)存取數據庫,dbp參數則是用來(lái)指定想打開(kāi)的數據庫文件,因為它必須是完整路徑名稱(chēng),所以我們上一語(yǔ)句用了Server.MapPath 函數 。
上面常用方法中一般為簡(jiǎn)潔起見(jiàn)也可一用下面一句
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath ("/") & "xxx.mdb"
水寒意見(jiàn)>>
一般直接使用 Microsoft.Jet.OLEDB.4.0 一層接口:
adoConnection.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath ("/") & "xxx.mdb"
避免使用 Microsoft OLEDB Provider for ODBC Drivers + Microsoft Access Driver (*.mdb)(Access 的 ODBC Driver)兩層接口:
adoConnection.open "PROVIDER=MSDASQL.1;Driver=Microsoft Access Driver(*.mdb);DBQ=" & Server.MapPath ("/") & xxx.mdb"
ACCESS數據庫連接代碼(一)
代碼如下:
<%
Set con = Server.CreateObject("ADODB.Connection")
con.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("數據庫文件路徑")
%>
ACCESS數據庫連接代碼(二)
代碼如下:
<%
dim conn,cqie
conn="provider=microsoft.jet.oledb.4.0;data source=" & server.MapPath("數據庫文件路徑")
set cqie=server.createobject("adodb.connection")
cqie.open conn
%>
asp里的簡(jiǎn)單隨機函數
代碼如下:
<%
dim a,b,c
a=1310:b=9215
randomize
c=int((b-a+1)*rnd+a)
%>
取出上次登陸時(shí)間記錄本次登陸時(shí)間
代碼如下:
<%
session("onetime")=rs("上次登陸時(shí)間")
session.timeout=30
rs("上次登陸時(shí)間")=now()
%>
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站