一、request
request.cookies("cookie") 得到cookies cookies 一般用於儲存使用者資訊 用於驗證 一般用於使用者驗證之類的 session也有同樣的型別 區別是session是存在伺服器上 cookies是存在使用者硬碟上 一般可以省略點方法 直接用request("引數名") 他會依次用from querystring cookies去取值 request 差不多就這些了
二、response
response.write 向瀏覽器輸出
response.redirect 重轉向
response.end 停止向瀏覽器輸出
response.cookies 向客戶端寫cookies
response.cookies("cookiename") = "test"
responsp.cookies("cookiename").domain="china228.com" 這樣寫的話 在所有的china228.com的網域名稱下用request.cookies("cookiename")都能得到
三、session
session("sessionname") = "" 把資訊儲存到session裡面
if session("sessionname") <> "" then 判斷session是否存在 一般用於驗證 session("sessionname") = "" 清空session
session.abandon 清空所有session
session.timeout = 100 設定session過期時間 單位為秒
session是存在伺服器上 cookies是存在使用者硬碟上 session重啟了程序池就沒有了 cookies我們就不能控制了 除非寫個程式 強制清空
七、adodb.recordset 返回乙個記錄集 先也是註冊物件 set rs = server.createobject("adodb.recordset") 這個rs是可以自己定義的 不一定一定要用rs 或者conn 因為這些是com元件(也就是用deiphl c++寫的dll,一些asp本身不能實現的功能 ) 不是asp的內建物件 ,所以要註冊物件
然後也是用open方法開啟記錄集 rs.open "select * from tablename",conn,1,3 rs.open sql語句,conn物件,1,3 (1,3引數一會講)sql語句 一般是一條查詢語句 conn物件就是剛才上面connection開啟的資料庫物件
1 開啟資料庫的游標型別
3 這個引數這裡 如果改為1的話 就不能對庫進行操作,不能更新和刪除(不能使用rs.addnew,rs.update,rs.delete) 改為2 以獨佔的形式開啟(當有乙個使用者在修改庫的時候,就會鎖定庫,保持資料的一致性)
3 可以對庫進去任何操作,包括刪除 修改 更新 新增
這裡一般我會用兩種 在列表頁的時候 因為不用操作庫,唯讀查詢就行了 rs.open sql,conn,1,1 在新增修改資料的時候 用rs.open sql,conn,1,3 rs.bof 是否為第一條資料 是 返回 true 反之 返回false rs.fof 是否為最後 一條資料 是 返回 true 反之 返回false 那就可以用這個來判斷資料庫裡有沒有記錄 if rs.eof and rs.bof then 就是說當前游標 不在第一條也不在最後一條 就說明沒有記錄 if rs.eof then 這樣說明有記錄 那麼我們就用個迴圈把資料輸出 rs和conn一樣理解,是變數
set rs = server.createobject("adodb.recordset")
rs.open sql,conn,1,1
if not rs.eof then 如果不在記錄集的未端,說明有記錄
do while not rs.eof 直到該記錄集的最後 跳出迴圈
response.write rs("欄位名")
rs.movenext 游標向下移動
loop
end if
rs.close //登出物件
set rs = nothing //釋放資源
因為asp是弱型別的 定量物件時不用定義型別
如果是c# 就是
int i; string str; asp 就 dim i,str 還有asp定義變數不能賦初始值
c# int i = 1;
asp dim i i = 1
下面講一下指標移動(就上面的游標,應該是指標,游標是c語言裡面的,asp沒有)
rs.movenext 向下移動一條
rs.moveprevious 向上移動一條
rs.movefirst 移動到第一條
rs.movelast 移動到最後一條
rs.absoluteposition = n 移動記錄指標到第n行
常用的就rs.movenext
講asp分頁的幾個方法屬性
rs.pagesize = n 每頁顯示n條資料
rs.absolutepage = n 將記錄指標移動第n頁的第一條資料
rs.recordcount 記錄集的總記錄數
rs.pagecount 記錄集的總頁數
set rs = server.createobject("adodb.recordset")
rs.open sql,conn,1,1
pagesize = 20
rs.pagesize = pagesize '每頁顯示20條
curpage = request.querystring("page") '得到當前頁數
if curpage = "" or isnumeric(curpage) or (curpage-rs.pagecount) > 0 then
'如果curpage等於空 或者 不是數值型別 或者 curpage大於總數
curpage = 1
'那麼curpage等於1
end if
rs.absolutepage = curpage '設定當前記錄集頁面
i = 1
if not rs.eof then 如果不在記錄集的未端,說明有記錄
do while not rs.eof and i < pagesize 如果已經是資料集的最後一條記錄 或者 i已經大於 rs.pagesize 就退出
response.write rs("欄位名")
i = i + 1 每迴圈一次 i + 1
rs.movenext 指標向下移動
loop
end if
%>
<%if curpage=1 then%>
首頁<%else%>
首頁<%end if%>
<%end if%>
<%end if%>
<%if rs.pagecount
尾頁<%else%>
">尾頁
<%end if%>
<%
rs.close //登出物件
set rs = nothing //釋放資源
%>
rs.addnew 這是新增一條記錄 開啟的資料集必須為1,3
set rs = server.createobject("adodb.recordset")
sql = "select * from tealename"
rs.open sql,conn,1,3
rs.addnew() 新增記錄到記錄集未端
rs("欄位名1") = 值1
rs("欄位名2") = 值2
rs("欄位名3") = 值3
rs.update() 將修改更新到資料庫內
rs.close
set rs = nothing
%>
rs.update 更新資料
set rs = server.createobject("adodb.recordset")
sql = "select * from tealename where id = 1" '修改id為1的資料
rs.open sql,conn,1,3
rs("欲更新的欄位名1") = 更新後的值1
rs.update() 將修改更新到資料庫內
rs.close
set rs = nothing
rs.delete 刪除
set rs = server.createobject("adodb.recordset")
sql = "select * from tealename where id = 1" '刪除id為1的資料
rs.open sql,conn,1,3
rs.delete() '刪除當前記錄,但指標不會向下移動,所有如果要刪除多條資料的時候 要用到迴圈
rs.close
set rs = nothing
兩大資料庫操作物件 屬性 講教完畢
關於ASP連線資料庫和資料操作
在asp中,主要通過ado active data objects 方式實現連線訪問資料庫。主要相關三種物件 connection recordset command和fields。connection 負責開啟或連線資料。recordset 負責訪問資料表。command 負責對資料庫執行行動查詢...
資料庫和資料庫物件
系統資料庫是指安裝完mysql伺服器後,會附帶的一些資料庫,系統資料庫會記錄一些必需的資訊,使用者不能直接修改這些系統資料庫。各個系統資料庫的作用如下 information schema 主要儲存系統中的一些資料庫物件資訊,如使用者表資訊 列資訊 許可權資訊 字符集資訊和分割槽資訊等。perfor...
ASP 資料庫操作語句
1.連線資料庫 2.插入資料 3.更新資料 4.刪除資料 4.刪除資料 刪除資料 set rsdelete server.createobject adodb.connection rsdelete.open mm conn string 注意,輸入為數字不能加單引號 sql delete from...