asp串連SQL和Access資料代碼(asp裡的隨機函數)

來源:互聯網
上載者:User

asp串連sql
第一種寫法: 複製代碼 代碼如下: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" '資料庫伺服器IP
DataUser = "jb51" '訪問資料庫使用者名稱
DataBaseName = "jb51" '資料庫名稱
DataBasePsw = "www.jb51.net" '訪問資料庫密碼
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 是表示版本資訊,如果沒有就會完全使用當前最新版功能
User ID=SQL帳號,資料庫的帳號
Password=SQL帳號密碼,資料庫的帳號密碼
Initial Catalog=資料庫名字(只有名字,而ACCESS的是具體帶路徑的資料檔案)
Data Source=資料來源,SQL伺服器名或其IP,通常用IP
上五個參數缺一不可

關於Data Source:

如果 IIS 和 SQL 同一台伺服器,則 使用安裝 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=連線逾時,是整數,預設是30秒,可以不用
Persist Security Info= true or false 可以不用

理解SQL和ACCESS的區別:

ACCESS是檔案型的資料庫,一個資料庫就是一個具體的 MDB檔案,所以ACCESS的串連需要給出具體的資料庫路徑 Data Source='c:\www\mdb\aaa.mdb'
  而Server.mappath(aaa.mdb)即是將aaa.mdb 映射為 c:\www\mdb\aaa.mdb
SQLserver是S/C 用戶端/伺服器方式,與ACCESS完全不一樣,所以訪問SQL 2000的資料庫需要建立用戶端和伺服器端的串連,注意這個用戶端是針對 SQL資料庫伺服器來說的
伺服器端的指令碼 對 SQLserver 來說也是“用戶端應用程式”。
  SQL的資料庫物理上也是一個.MDF資料檔案,但這與MDB是天壤之別的,SQL的MDF 可以說是一個資料庫的集合,裡麵包括了很多個資料庫(裡面的每個資料庫有一個名字,每個資料庫有相應的擁有者SchMa),而ACCESS的MDB是一個檔案就是一個資料庫。
故訪問SQL 資料庫要指定其伺服器IP 資料庫帳號密碼 資料庫名(當然無路徑可言)
  而訪問 ACCESS 只要訪問 ACCESS的檔案就行了。
  現在要做的是,進入企業管理器,建立一個資料庫(比如為AAA),在資料庫中,建立添加資料庫使用者和密碼,然後就可以用上面的連接字串來串連了!

//第二種寫法:(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是修改、刪除、增加開關!

//第三種寫法:

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

//第四種 - 這種方法用在ACCESS中
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" '資料庫伺服器IP
DataUser = "jb51" '訪問資料庫使用者名稱
DataBaseName = "jb51" '資料庫名稱
DataBasePsw = "www.jb51.net" '訪問資料庫密碼
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"資料庫連接對象已開啟"
Else
response.write"資料庫連接對象未開啟"
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

註解:
  因為我們想開啟的是Access(.mdb)資料庫,所以我們要透過Access的ODBC驅動程式{Microsoft Access Driver (*.mdb)}來存取資料庫,dbp參數則是用來指定想開啟的資料庫檔案,因為它必須是完整路徑名稱,所以我們上一語句用了Server.MapPath 函數 。

  上面常用方法中一般為簡潔起見也可一用下面一句
  conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath ("/") & "xxx.mdb"

水寒意見>>
一般直接使用 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裡的簡單隨機函數 複製代碼 代碼如下:<%
dim a,b,c
a=1310:b=9215
randomize
c=int((b-a+1)*rnd+a)
%>

取出上次登陸時間記錄本次登陸時間 複製代碼 代碼如下:<%
session("onetime")=rs("上次登陸時間")
session.timeout=30
rs("上次登陸時間")=now()
%>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.