論壇所有的數(shù)據(jù)都是保存到一個數(shù)據(jù)庫中,這就導致數(shù)據(jù)很大,對于有些限制文件大小的站點來說,很容易過限制!我下面所講的方法是以拆分數(shù)據(jù)庫的方法來達到降低數(shù)據(jù)庫文件大小的方法!
一般的論壇分成多個版塊的,比如新聞版塊、PC版塊等。那么我們就可以從這里入手。每個版塊的記錄就做為一個獨立的數(shù)據(jù)庫,一個數(shù)據(jù)庫里面只放保存記錄的這張表,這樣對于一個Access數(shù)據(jù)庫來說,就可以存放很多的記錄了。而用另一個獨立的數(shù)據(jù)庫來存放論壇管理、權(quán)限、會員資料等。
在打開記錄顯示出來時,讓系統(tǒng)自動指定打開哪一個數(shù)據(jù)庫,這樣就能夠保證論壇的安全和穩(wěn)定!比如現(xiàn)在有10個版塊,那么分別新建10個數(shù)據(jù)庫,這10個數(shù)據(jù)庫分別存放10張結(jié)構(gòu)相同的表。我們將10個存放記錄的數(shù)據(jù)庫分別命名為AA1~AA10.mdb!將存放論壇資料的數(shù)據(jù)庫命名為bbs.mdb。比如要打開個版塊的內(nèi)容,那么就讓程序自動賦值1給一個變量id,那么顯示記錄的那個文件,接收到id這個變量,就來打開個數(shù)據(jù)庫中的數(shù)據(jù)表。
顯示整個論壇列表時的方法:
首先在bbs.mdb這個數(shù)據(jù)庫中記錄這個論壇的版塊數(shù)和版塊的編號,這樣便于操作!讀取這個表中記錄版塊數(shù)的字段,將這些字段都顯示,在顯示的時候,加上一個鏈點帶有id的值(這個ID值就是用來指向到具體名字的數(shù)據(jù)庫),這樣就能夠獲得打開哪一個數(shù)據(jù)庫的值了。我們在每一個連接到顯示具體版塊的鏈點時,給一個具體id的值,直接就可以顯示這個版塊的內(nèi)容,就不需要再修改顯示具體版塊文件的代碼了。
引用數(shù)據(jù)源,我們將數(shù)據(jù)源放在conn.asp和connlist.asp文件中,conn.asp是用來打開bbs.mdb這個存放數(shù)據(jù)庫操作數(shù)據(jù)的數(shù)據(jù)源,connlist.asp則是用來打開存放版塊記錄AA1~AA10.mdb的值。
conn.asp代碼如下:
connlist.asp代碼如下:
顯示具體版塊的內(nèi)容的代碼中,在前在加上:
這一句話就可以直接打開具體的版塊內(nèi)容了!