【正文】
RSQL= “DETELE FROM STU_KEY WHRER SNO=‘00121001’”SET =CONNCMD.COMMANDTEXT= STRSQLCMD.EXCUTEIF =0 THEN(“刪除記錄成功”)ELSE () 39。錯誤被手工處理后要記得清除err對象的內(nèi)容 ()END IF%要添加記錄,那么程序中要用到類似于學(xué)號為00121001的學(xué)生記錄INSERT INTO 表名(字段1,字段2,,字段n)VALUES(值1,值2,值n)的SQL語句。關(guān)鍵程序代碼如下:% CMD=(“”)’創(chuàng)建命令集COMMAND對象STRSQL= “INSERT INTO STU_KEY(SNO,XM,PWD)VALUES(‘00121001’,‘周興’,‘123’)”SET =CONNCMD.COMMANDTEXT= STRSQLCMD.EXCUTEIF =0 THEN(“記錄添加成功!”)ELSE () 39。錯誤被手工處理后要記得清除err對象的內(nèi)容 ()END IF%要修改學(xué)號為00121001的學(xué)生記錄,那么程序中要用到類似于UPDATE 數(shù)據(jù)表 SET 新值 WHERE 條件的SQL語句,關(guān)鍵程序代碼如下:% CMD=(“”)’創(chuàng)建命令集COMMAND對象STRSQL= “UPDATE STU_KEY SET SNO=‘00121001’,XM=‘馬超’,PWD=‘123’”amp?!癢HERE SNO=’00121001’”SET =CONNCMD.COMMANDTEXT= STRSQLCMD.EXCUTEIF =0 THEN(“記錄修改成功!”)ELSE () 39。錯誤被手工處理后要記得清除err對象的內(nèi)容 ()END IF%通過以上對數(shù)據(jù)庫查詢、插入、刪除、修改的程序代碼介紹,不難發(fā)現(xiàn)SQL語言表達簡潔,功能強大而且執(zhí)行效率高,是操作數(shù)據(jù)庫的絕佳方法。(5)關(guān)閉數(shù)據(jù)庫 當(dāng)完成了數(shù)據(jù)庫操作后,應(yīng)關(guān)閉數(shù)據(jù)庫。方法如下:% SET RS=NOTHING SET CONN=NOTHING%第七章:系統(tǒng)安全黑客攻擊互聯(lián)網(wǎng)網(wǎng)站,還有惡意黑客竊取網(wǎng)上的軍事機密和數(shù)據(jù)庫中的商用數(shù)據(jù)的事件層出不窮,所以現(xiàn)在網(wǎng)絡(luò)數(shù)據(jù)庫的安全必須給予高度重視。本系統(tǒng)從一開始就考慮了這個問題,從三個方面來提高數(shù)據(jù)庫的安全性:(1)從結(jié)構(gòu)上,所有用戶的操作都是B/S三層結(jié)構(gòu),即用戶不能直接訪問數(shù)據(jù)層,必須通過應(yīng)用層才能得到所需的數(shù)據(jù),這樣等于在傳統(tǒng)C/S模式的兩層結(jié)構(gòu)上加了一個安全層。(2)現(xiàn)在有很多網(wǎng)絡(luò)黑客可以從網(wǎng)上直接調(diào)用密碼驗證后的文件,從而繞過口令驗證和安全檢查,而本系統(tǒng)為解決這個問題,在每一個文件里都加了一個安全參數(shù)的認(rèn)證,如果有一個頁面被用戶直接調(diào)用而沒有經(jīng)過身份驗證,該頁面會自動重定向到登入頁面,還有對于已經(jīng)通過系統(tǒng)身份驗證的不同類型的用戶,用SESSION(“name”),SESSION(“flag”)等變量參數(shù)進行跟蹤來加強系統(tǒng)安全性。這樣,畢業(yè)生、用人單位都不能超越權(quán)限訪問管理員相應(yīng)的管理頁面或者干脆不提供相應(yīng)的頁面連接。以管理員入口為例,實現(xiàn)的關(guān)鍵程序代碼如下: % if session(name)= or session(flag)1 then % a href= class=Alink管理員/a % else % a href=admin/ target=_blank class=Alink管理員/a % end if %這樣,非管理員類型的用戶都被拒之門外了,即使知道了文件所在站點的路徑,也還是于事無補。在服務(wù)器端,安全性檢驗代碼如下:% ‘只允許本系統(tǒng)的管理員用戶可以進入 if ( session(“name”)=”” or session(“flag”)1) then % () end if% 這段代碼簡潔高效,對其它各種大小系統(tǒng)也有非常重要的意義。(3)為了保護核心數(shù)據(jù)庫,采用了數(shù)據(jù)庫加密的方法,這樣即使有人找到了數(shù)據(jù)庫文件 ,也因為缺少正確的口令無法將其打開。雖然目前ASP的站點很多都存在可以看見源代碼的問題,如果ASP程序員將數(shù)據(jù)庫的連接用戶名和密碼直接寫在ASP里 ,那么一旦源碼被發(fā)現(xiàn),如果數(shù)據(jù)庫允許遠程訪問而且沒有設(shè)防的話就相當(dāng)危險了。如何解決這個問題呢 ?可以將ASP文件存放的目錄設(shè)置為不可讀 (ASP仍能執(zhí)行 ),這樣HTML、CSS等文件就不能放在這個目錄下,否則它們將不能被瀏覽?;蛘甙惭b微軟提供的補丁程序,注意針對不同的系統(tǒng)有不同的補丁[3]。第八章:存在的問題和前景展望至此, 基于ASP技術(shù)的畢業(yè)生信息管理系統(tǒng)的設(shè)計開發(fā)工作已基本完成。本系統(tǒng)界面友好,美觀,具有很好的動態(tài)性和交互性。相信它會給學(xué)校的畢業(yè)生信息管理工作以及學(xué)生的擇業(yè)、交流,用人單位與畢業(yè)生之間的雙向選擇提供一個方便快捷的網(wǎng)絡(luò)平臺。由于時間所限,本人認(rèn)為系統(tǒng)的安全性日后還有待于加強;在論壇管理和班級聊天室等擴展模塊方面也可作進一步的深化和完善。參考文獻[1]周星,魏應(yīng)彬,《動態(tài)網(wǎng)頁與WEB數(shù)據(jù)庫》,北京大學(xué)出版社, 2001[2] 俞波,周皓峰,一種基于WEB的學(xué)生信息管理系統(tǒng), 計算機與現(xiàn)代化,2000年第2期, 55-60[3] 王華,ASP開發(fā)信息服務(wù)系統(tǒng)示例, 太原科技,2003年 第4期 ,52 [4] 李世杰《Active Server Pages 網(wǎng)頁設(shè)計手冊》,清華大學(xué)出版社,[5] 閆華文,《SQL Server 2000 與ASP Web 數(shù)據(jù)庫編程技術(shù)》,北京大學(xué)出版社,[6] 陳會安,《JavaScript 網(wǎng)頁制作徹底研究》,人民郵電出版社,[7] 康博,《Web應(yīng)用程序開發(fā)新技術(shù)》,人民郵電出版社,[8] Brian Francis, etal,《Professional Active Server Pages 》,Published by WROX,2002[9] Bob Reselman,《Active Server Pages by Example》,Published by Que,Jun 1, 2000[10]《Tutorial Home Page》, 200215