反正我現在用這個做了很多站,自己覺得還是滿有用的,所以拿出來和大家分享一下。支持三種數據庫連接:MSSQL2000,MSSQL2005,ACCESS
三種方法:
select_table(sql)
表查詢,返回TRUE或FALSE
當SQL語句出錯,或空記錄時返回FALSE,否則TRUE
update_table(SQL)
表更新,包括update,delete
成功執行返回TRUE,否則返回FALSE,updated為執行後影響記錄行數。
insert_table(sql,table,id_column)
table為表名,id_column為表中自動編號,自增字段。
當成功執行返回TRUE,否則返回FALSE,指定TABLE,ID_column後,將返回最後添加記錄所產生的自增ID。
select_table()相關方法Select_page(page,psize)
分頁處理,page為當前頁,psize為每頁記錄行數。
所有操作時,自動檢測數據庫鏈接和RS是否打開,執行後將自動關閉數據庫鏈接。
示例:
setdb=newadodb_class
ifdb.select_table("select*fromnewsorderbyiddesc")then
page=request("page")
Select_page(page,20)'每頁20條
fori=1to20
response.writedb.rs("title")'類內置rs,不可變
db.rs.movenext
ifdb.rs.eofthenexitfor
next
endif
db.rsPage=總頁數,db.nowPage=經過處理後當前頁,db.rsCounts數總記錄數量。
ifdb.update_table("deletefromnewswhereispass=1")then'update同樣
response.write"共刪除"&db.updated&"行"
endif
calldb.insert_table("insertintonews(title,content)values('"&title&"','"&content&"')","news","id")
response.write"最後添加ID為"&db.Insertd
在頁面最尾可輸出db.readCounts為查詢數據庫次數。
--------------------------------------------
本類好處就是你不必擔心忘記關閉數據庫鏈接,不用頻繁setrs=server.recordset("adodb.recordset"),也不用setrs=nothing
缺點就是翻頁用的傳統方式。 rs.absolutepage=rs.pagesize
----------------------------------------------------------
<%
'/******kshop******/
'adodb_class.asp數據庫操作類
'Version1.0
'Copyright[email][email protected][/email]
'E-mail[email][email protected][/email]