とにかく、私はこれを今使用して多くのWebサイトを作成しましたが、それでも非常に便利だと思うので、あなたと共有します。 MSSQL2000、MSSQL2005、アクセスの3種類のデータベース接続をサポートしています
3つの方法:
select_table(sql)
テーブルクエリ、trueまたはfalseを返します
sqlステートメントエラー、または空のレコードの場合にfalseを返し、それ以外の場合はtrue
update_table(sql)
更新を含むテーブルアップデート、削除
実行が成功した場合はtrueを返し、それ以外の場合は更新された場合にfalseを返し、実行後に影響を受ける行の数を返します。
insert_table(sql、table、id_column)
テーブルはテーブル名、ID_Columnはテーブルの自動番号であり、フィールドはそれ自体で増加します。
実行が成功したときにtrueを返し、それ以外の場合はfalseを返し、表を指定し、id_columnを指定します。最後に追加されたレコードによって生成された自動インクリメントIDが返されます。
select_table()関連メソッドselect_page(page、psize)
ページ化処理、ページは現在のページであり、Psizeはページごとに記録された行の数です。
すべての操作中に、データベースリンクとRSが開いているかどうかを自動的に検出し、実行後にデータベースリンクは自動的に閉じられます。
例:
setdb = newAdodb_class
ifdb.select_table( "select*fromnewsorderbyiddesc")then
page = request( "page")
select_page(ページ、20)'20ページあたりのアイテム
fori = 1to20
Response.WritedB.RS( "Title") 'クラスはRsに組み込まれており、不変です
db.Rs.Movenext
IFDB.RS.EOFTHENEXITFOR
次
endif
db.rspage =ページの総数、db.nowpage =処理後の現在のページ、db.rscountsはレコードの総数をカウントします。
ifdb.update_table( "deletefromnewswhereispass = 1")から同じ
respons.write "delete"&db.updated& "row"を合計します
endif
calldb.insert_table( "insertintonews(title、content)values( '"&title& "'、 '"&content& "')、" news "、" id ")
respons.write "最後にIDをas"&db.insertdを追加しました
ページの最後に、データベースがクエリになっている回数としてDB.ReadCountsを出力できます。
---------------------------------------------------
このクラスの利点は、データベースリンクを閉じるのを忘れることを心配する必要がないこと、setrs = server.recordset( "adodb.recordset")頻繁に、setrs = nothingの必要はないことです。
欠点は、ページをめくる従来の方法です。 rs.absolutepage = rs.Pagesize
-----------------------------------------------------------------------------------------------------------------------
<%
'/****** kshop *******/
'adodb_class.aspデータベース操作クラス
'バージョン1.0
'Copyright [email] [email protected] [/email]
'電子メール[メール] [email protected] [/email]