發一個ASP的ADODB類代碼
2024-05-04 11:01:07
供稿:網友
反正我現在用這個做了很多站,自己覺得還是滿有用的,所以拿出來和大家分享一下。支持三種數據庫連接: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是否打開,執行后將自動關閉數據庫鏈接。
示例:
set db = new adodb_class
if db.select_table("select * from news order by id desc") then
page = request("page")
Select_page(page,20)'每頁20條
for i=1 to 20
response.write db.rs("title")'類內置rs,不可變
db.rs.movenext
if db.rs.eof then exit for
next
end if
db.rsPage = 總頁數,db.nowPage= 經過處理后當前頁,db.rsCounts數總記錄數量。
if db.update_table("delete from news where ispass=1") then'update同樣
response.write "共刪除"&db.updated&"行"
end if
call db.insert_table("insert into news (title,content) values ('"&title&"','"&content&"')","news","id")
response.write "最后添加ID為"&db.Insertd
在頁面最尾可輸出db.readCounts 為查詢數據庫次數。
--------------------------------------------
本類好處就是你不必擔心忘記關閉數據庫鏈接,不用頻繁set rs = server.recordset("adodb.recordset"),也不用set rs = nothing
缺點就是翻頁用的傳統方式。rs.absolutepage = rs.pagesize
----------------------------------------------------------
<%
'/******kshop******/
' adodb_class.asp 數據庫操作類
' Version 1.0
' Copyright [email]simple_1982@hotmail.com[/email]
' E-mail [email]xsg2005@163.com[/email]