版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第7章數(shù)據(jù)庫網(wǎng)站開發(fā)
本章要點7.1新聞瀏覽
7.2新聞管理系統(tǒng)
7.3后臺管理系統(tǒng)7.4綜合實例習(xí)題7
7.1新聞瀏覽
7.1.1案例效果圖7-1新聞瀏覽
7.1新聞瀏覽7.1.2案例實現(xiàn)(見書)7.1.3知識拓展1.網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用概述當前的Web應(yīng)用中,不論是電子商務(wù)、新聞、論壇、博客,還是聊天室,所有的網(wǎng)站中幾乎沒有哪個網(wǎng)站不會用到數(shù)據(jù)庫的,網(wǎng)絡(luò)中的數(shù)據(jù)庫應(yīng)用設(shè)計是一個相當復(fù)雜的過程,這需要學(xué)習(xí)眾多的相關(guān)知識,包括創(chuàng)建/管理數(shù)據(jù)庫、數(shù)據(jù)查詢、數(shù)據(jù)接口、客戶界面等多個方面的內(nèi)容。圖7-1給出了一個能夠訪問Web數(shù)據(jù)庫的ASP網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序架構(gòu)。
7.1新聞瀏覽圖7-1ASP網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序架構(gòu)
7.1新聞瀏覽2.數(shù)據(jù)庫的基本概念數(shù)據(jù)庫技術(shù)是計算機技術(shù)的一個重要部分。它所研究的問題是如何科學(xué)地組織和存儲數(shù)據(jù),如何高效地獲取和處理數(shù)據(jù)。數(shù)據(jù)庫按其結(jié)構(gòu)劃分主要有層次型、網(wǎng)絡(luò)型和關(guān)系型三類。目前應(yīng)用最為廣泛的是關(guān)系型數(shù)據(jù)庫。
7.1新聞瀏覽圖7-2表、記錄與字段數(shù)據(jù)庫是數(shù)據(jù)表的集合,數(shù)據(jù)表由一系列記錄組成,記錄是數(shù)據(jù)表中數(shù)據(jù)操作的單位,比如排序、刪除等都是將一條記錄按一個整體來進行。
7.1新聞瀏覽3.在SQLServer2000中創(chuàng)建數(shù)據(jù)庫可以作為數(shù)據(jù)庫管理系統(tǒng)的工具有多種,常見的有MicrosoftSQLServer、MicrosoftAccess、DB2和Oracle等。其中,SQLServer、DB2和Oracle常用于大型企業(yè)服務(wù)器數(shù)據(jù)庫的開發(fā)管理,而MicrosoftAccess則常用于中小型企業(yè)的桌面數(shù)據(jù)庫開發(fā)。在一般的電子商務(wù)網(wǎng)站中MicroSoftSQLServer使用得比較多,下面,將學(xué)習(xí)如何在MicrosoftSQLServer2000中創(chuàng)建數(shù)據(jù)庫。在“開始”菜單中單擊“開始”→“所有程序”→“MicrosoftSQLServer”→“企業(yè)管理器”菜單命令,啟動MicroSoftSQLServer2000的“企業(yè)管理器”程序。在“企業(yè)管理器”左側(cè)窗口中展開“控制臺根目錄”,在“控制臺根目錄”下的“MicrosoftSQLServers”內(nèi)的“SQLServers”組“(local)(WindowsNT)”服務(wù)器中的“數(shù)據(jù)庫”文件夾上單擊鼠標右鍵,在彈出的菜單中選擇“新建數(shù)據(jù)庫”菜單命令。如圖7-3所示。
7.1新聞瀏覽圖7-3企業(yè)管理器
7.1新聞瀏覽單擊“新建數(shù)據(jù)庫”菜單命令后,將彈出一個“數(shù)據(jù)庫屬性”對話框。在該對話框的“名稱”框中輸入數(shù)據(jù)庫的名稱“aspteach”,如圖7-4左圖所示。
圖7-4新建數(shù)據(jù)庫
7.1新聞瀏覽
圖7-5新建表
7.1新聞瀏覽在彈出窗口中按圖7-6的內(nèi)容創(chuàng)建新表。其中,id為新聞序號,kind為新聞類型(取值為msg表示通知,news表示普通新聞),title為新聞標題,content為新聞內(nèi)容,addtime為更新時間,admin為增加/修改新聞的管理員名稱。圖7-6設(shè)置表的字段
7.1新聞瀏覽然后單擊窗口左上角的“保存”按鈕,此進會彈出一個“選擇名稱”對話框,在“輸入表名”框中輸入“news”后單擊“確定”按鈕保存表,然后單擊右上角的按鈕關(guān)閉表設(shè)計窗口(注意,是窗口內(nèi)較小的那個按鈕),回到“企業(yè)管理器”。圖7-7選擇“返回所有行”命令
7.1新聞瀏覽圖7-8輸入新聞記錄
7.1新聞瀏覽4.配置ODBC
打開“開始”菜單,單擊“開始”菜單“程序”中“管理工具”下的“數(shù)據(jù)源(ODBC)”菜單命令,打開“ODBC數(shù)據(jù)源管理器”。如圖7-9左圖所示。
圖7-9ODBC數(shù)據(jù)源管理器
7.1新聞瀏覽在“ODBC數(shù)據(jù)源管理器”中,打開“系統(tǒng)DSN”選項卡,如圖7-9右圖所示。
圖7-10選擇驅(qū)動程序
7.1新聞瀏覽在列表框中選擇“SQLServer”選項(如果是其他類型數(shù)據(jù),請選擇相應(yīng)選項,例如,對于Access數(shù)據(jù)庫則需要選擇“DrivedoMicrosoftAccess(*.mdb)”選項)。單擊“完成”按鈕,將彈出如圖7-11左圖所示的“創(chuàng)建到SQLServer的新數(shù)據(jù)源”對話框。
圖7-11創(chuàng)建新數(shù)據(jù)源
7.1新聞瀏覽在“名稱”框內(nèi)輸入所要創(chuàng)建的數(shù)據(jù)源名稱,在服務(wù)器列表中可以選擇所要連接的SQLServer服務(wù)器。本例中,將數(shù)據(jù)源名稱設(shè)為“aspteach”,服務(wù)器選擇“(local)”。如圖7-11右圖所示。這里的“(local)”表示本機服務(wù)器,也可以連接到網(wǎng)絡(luò)中的其他SQLServer服務(wù)器。
圖7-12選擇登錄方式和默認數(shù)據(jù)庫
7.1新聞瀏覽
圖7-13ODBCMicrosoftSQLServer安裝
7.1新聞瀏覽單擊“SQLServerODBC數(shù)據(jù)源測試”對話框中的“確定”按鈕,回到“ODBCMicrosoftSQLServer安裝”對話框,再單擊“確定”按鈕,回到“ODBC數(shù)據(jù)源管理器”??梢钥吹叫屡渲玫臄?shù)據(jù)源“ASPdb”已經(jīng)在列表框中,如圖7-14所示。圖7-14完成配置后的ODBC數(shù)據(jù)源管理器
7.1新聞瀏覽上面的步驟中,完成了對一個SQLServer2000數(shù)據(jù)源的配置。如果使用的數(shù)據(jù)庫不是SQLServer2000,而是其它類型的數(shù)據(jù)庫,例如,Access2000的MDB數(shù)據(jù)庫,那么,只需要在“創(chuàng)建新數(shù)據(jù)源”對話框中選擇“DriverdoMicrosoftAccess(*.mdb)選項”,如圖7-15所示。再按提示操作即可。圖7-15選擇Access驅(qū)動程序
7.1新聞瀏覽5.ADO基礎(chǔ)數(shù)據(jù)庫創(chuàng)建配置完成以后,接下來將學(xué)習(xí)通過ASP去訪問數(shù)據(jù)。ASP對數(shù)據(jù)庫的操作,主要是通過ActiveX數(shù)據(jù)對象(ADO,ActiveXDataObject)來進行的,ADO是幫助用戶與數(shù)據(jù)庫進行交互的組件。下面將學(xué)習(xí)通過ADO從數(shù)據(jù)庫中獲取和傳送數(shù)據(jù),以及獲取到數(shù)據(jù)后的數(shù)據(jù)處理方法。
7.1新聞瀏覽圖7-16常用ADO對象間的聯(lián)系
7.1新聞瀏覽6.ASP網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序的設(shè)計流程
ASP網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用程序的設(shè)計可以歸納為以下幾步:(見書)下面的內(nèi)容將以本節(jié)的案例實現(xiàn)為例,就這些流程步驟進行簡單的學(xué)習(xí)。在前面的學(xué)習(xí)中,已經(jīng)完成了數(shù)據(jù)庫和數(shù)據(jù)源DSN的創(chuàng)建,DSN數(shù)據(jù)源名稱為aspteach,接下來將通過ADO對象創(chuàng)建數(shù)據(jù)庫連接,并操作數(shù)據(jù)庫。
7.2新聞管理系統(tǒng)
7.2.1案例效果圖7-17新聞管理
7.2新聞管理系統(tǒng)7.2.2案例實現(xiàn)(見書)7.2.3知識拓展1.SQL簡介
SQL(StructuredQueryLanguage,結(jié)構(gòu)化查詢語言)是一種數(shù)據(jù)查詢和編程語言,是操作數(shù)據(jù)庫的工業(yè)標準語言。SQL語言是基于IBM早期數(shù)據(jù)庫產(chǎn)品SystemR發(fā)展起來的。于1986年經(jīng)美國國家標準協(xié)會(ANSl)確認為國家標準,1990年經(jīng)國際標準化組織(ISO)確認為國際標準。作為一種特殊用途的語言,SQL特別設(shè)計用來生成和維護關(guān)系數(shù)據(jù)庫的數(shù)據(jù)。
SQL語言是一個結(jié)構(gòu)化的關(guān)系型數(shù)據(jù)庫查詢語言,主要用來存取數(shù)據(jù)庫的內(nèi)容,提供使用者方便、簡單的操作方法的同時,也兼具了強大的功能,千萬別以為SQL語言的所有功能只有查詢(Query)而己,事實上,從建立新的數(shù)據(jù)表(Table),到修改或是刪除數(shù)據(jù)庫中的記錄(Record),SQL語言對于數(shù)據(jù)庫的操作可以說是無所不能。
7.2新聞管理系統(tǒng)
SQL語言包括了對數(shù)據(jù)庫的設(shè)計、查詢、維護、控制、保護等全方位的功能。在SQL語言中,只需要指定要做什么而不是怎么做,不需要告訴SQL如何訪問數(shù)據(jù)庫,只要告訴SQL需要數(shù)據(jù)庫做什么。利用SQL可以指定想要檢索的記錄以及按什么順序檢索??梢栽谠O(shè)計或運行時對數(shù)據(jù)控件使用SQL語句。一條SQL語句可以替代許多條數(shù)據(jù)庫命令。從而使得數(shù)據(jù)的查詢功能更加強大、靈活和快速。
SQL語言已經(jīng)成為許多關(guān)系型數(shù)據(jù)庫(如,MSSQLServer、Oracle、DB2)的標難查詢語言了,當需要操作數(shù)據(jù)庫時,就可以使用SQL語言,但值得興奮的是學(xué)習(xí)SQL語言并沒有想象中的那么困難,SQL語言和其它的程序語言(如,C/C++或者Java)最大的不同之處在于SQL是一個非常易于學(xué)習(xí)和使用的語言,很快就可以學(xué)會SQL語言最常使用的命令,并且開始尋找一些數(shù)據(jù)和維護自己的數(shù)據(jù)庫。
7.2新聞管理系統(tǒng)2.Connection對象(1)Connection對象概述
Connection對象代表打開的、與數(shù)據(jù)源的連接。Connection對象代表與數(shù)據(jù)源進行的唯一會話。如果是客戶端/服務(wù)器數(shù)據(jù)庫系統(tǒng),該對象可以等價于到服務(wù)器的實際網(wǎng)絡(luò)連接。取決于數(shù)據(jù)提供者所支持的功能,Connection對象的某些集合、方法或?qū)傩杂锌赡軣o效。(見書)可以創(chuàng)建獨立于先前定義的其他任何對象的Connection對象。此外,還可以象執(zhí)行Connection對象的本地方法一樣執(zhí)行命令或存儲過程。
7.2新聞管理系統(tǒng)下面的例子是本節(jié)中新聞管理系統(tǒng)的另幾個頁面。(見書)圖7-19增加新聞
7.2新聞管理系統(tǒng)程序中,先檢查是否有提交的新聞內(nèi)容,如果沒有提交,則顯示用于如圖7-19所示的增加新聞表單頁面;如果有新聞內(nèi)容,先通過下面的語句查詢到表的最后一行記錄,sql="selecttop1*fromnewsorderbyiddesc"
再通過下面的語句檢查記錄集是否為空。ifrs.eofandthen
如果沒有找到合適的記錄,則rs.eof
和rs.bof均為真,即記錄指針同時指向記錄集的第1條記錄之前和最后一條記錄之后,只有記錄集為空時發(fā)生這種情況。如果記錄集為空則賦id為1,如果記錄集不為空,rs.eof
和rs.bof不同時為真,再通過下面的語句獲取該記錄的id,并將id值加1后作為新增記錄的id,這保證了記錄id的連續(xù)性。id=rs("id")+1
然后,再通過rs.addnew方法在記錄集中增加一個新記錄行,通過下面的語句對新記錄行的字段進行賦值后再將記錄集的修改更新到數(shù)據(jù)庫。(見書)
7.2新聞管理系統(tǒng)頁面打開時,將提取URL中傳遞過來的id值,如果沒有這個參數(shù),則返回到newsmanage.asp頁面;如果有id,則執(zhí)行下面的查詢語句,提取符合的記錄,將記錄中的和新聞標題和內(nèi)容賦給表單元素顯示在窗口中。sql="select*fromnewswhereid="& id
如果用戶取消修改,單擊“取消”按鈕時,執(zhí)行下面的語句返回到newsmanage.asp頁面。onclick="parent.location.href='newsmanage.asp'"
這行語句在用戶單擊按鈕(click)時,通過鏈接“parent.location.href=”跳轉(zhuǎn)到‘newsmanage.asp’指定的頁面。當用戶完成修改,單擊“提交”按鈕時,將通過過程btnsubmit_onclick對表單內(nèi)容進行檢查,然后提交到newsupdate.asp文件進行處理。
newsupdate.asp文件用于保存用戶的修改結(jié)果,其內(nèi)容如下:(見書)
7.2新聞管理系統(tǒng)圖7-20修改新聞
7.2新聞管理系統(tǒng)上面的程序通過提交過來的參數(shù),查找要修改的記錄,再對該記錄進行更新(update)操作。程序中,會看到下面的這行語句被注釋了。'rs.update"admin",session("admin")
語句中的session("admin")是在管理員登錄時記錄的,因為進行新聞維護需要有管理員權(quán)限,因此,在新聞管理頁面之前還有一個管理員的登錄頁面,在本案例中被省略,將在后面的【案例35】中將創(chuàng)建該頁面。由于沒有session("admin")值,所以這里暫時將其注釋。這種通過注釋語句以執(zhí)行程序中的一部的方法在程序調(diào)試中非常有用。如果在新聞管理頁面中單擊了“刪除”鏈接,將提交帶有id參數(shù)的URL,跳轉(zhuǎn)到刪除新聞頁面。刪除新聞頁面newsmodi.asp內(nèi)容如下:(見書)上面的程序中,首先查找符合id的記錄,找到后通過下面的語句將其刪除,并更新數(shù)據(jù)庫。(見書)
7.3后臺管理系統(tǒng)
7.3.1案例效果
圖7-21后臺管理系統(tǒng)
7.3后臺管理系統(tǒng)7.3.2案例實現(xiàn)(見書)7.3.3案例拓展1.Command對象簡介
Command對象定義了將對數(shù)據(jù)源執(zhí)行的指定命令。使用Command對象,可以查詢數(shù)據(jù)庫并返回Recordset
對象中的記錄,以便執(zhí)行大量操作或處理數(shù)據(jù)庫結(jié)構(gòu)。
Command對象的創(chuàng)建方式如下:<%Setcmd=Server.CreateObject(“ADODB.Command”)%>
Command對象是對數(shù)據(jù)存儲執(zhí)行命令的對象。與Connection對象不同,Connection對象在處理命令的功能上受到一定的限制,而Command對象是特別為處理命令的各方面問題而創(chuàng)建的。實際上,當從Connection對象中運行一條命令時,已經(jīng)隱含地創(chuàng)建了一個Command對象。有時其他對象允許向Command對象傳入?yún)?shù),但在Connection對象中不能指定參數(shù)的任何細節(jié)。
7.3后臺管理系統(tǒng)如果不想使用Command對象執(zhí)行查詢,請將查詢字符串傳送給Connection對象的Execute方法或Recordset對象的Open方法。但是,當需要使命令文本具有持久性并重新執(zhí)行它,或使用查詢參數(shù)時,則必須使用Command對象??梢允褂肅ommand對象的集合、方法、屬性進行各種數(shù)據(jù)操作,常用方式如下:(見書)2.Command對象常用方法(1)CreateParameter方法
CreateParameter方法用于創(chuàng)建Command對象要使用的新參數(shù)。使用格式如下:CreateParameter([Name],[type],[Direction],[Size],[Value])
其中,Name是新參數(shù)的名稱。Type是該參數(shù)的數(shù)據(jù)類型(表7-24列出了常用的數(shù)據(jù)類型),Direction確定參數(shù)是否為輸入?yún)?shù)/輸出參數(shù)(表7-25列出了可使用的Direction值),Size是參數(shù)的最大長度,以字節(jié)或字符為單位,Value是參數(shù)的值。(見書)
7.3后臺管理系統(tǒng)(2)Execute方法
Execute方法用于執(zhí)行在CommandText
屬性中指定的查詢、SQL語句或存儲過程。使用格
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年臨滄c1客運資格證考試
- 拆遷要求市場補償申請書
- 吉首大學(xué)《競技武術(shù)套路3》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉首大學(xué)《地理信息系統(tǒng)應(yīng)用》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉林藝術(shù)學(xué)院《影片制作》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉林藝術(shù)學(xué)院《聲樂基礎(chǔ)訓(xùn)練Ⅱ》2021-2022學(xué)年第一學(xué)期期末試卷
- 門店充電寶簽約協(xié)議書范本模板
- 吉林藝術(shù)學(xué)院《表演藝術(shù)公共文化服務(wù)》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉林師范大學(xué)《招聘與甄選》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024-2030年中國木制品行業(yè)市場深度發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 2024年新人教版部編本四年級上數(shù)學(xué)教材深度解讀
- 《新時代公民道德建設(shè)實施綱要》、《新時代愛國主義教育實施綱要》知識競賽試題庫55題(含答案)
- 《追求遠大理想堅定崇高信念》課件
- DL∕T 5210.4-2018 電力建設(shè)施工質(zhì)量驗收規(guī)程 第4部分:熱工儀表及控制裝置
- 2024-2025學(xué)年牛津版小學(xué)六年級英語上冊期中檢查試題及答案
- 酒店自助入住系統(tǒng)安裝協(xié)議
- 集體榮譽感主題教育班會
- 金融調(diào)解中心可行性報告
- 劇院物業(yè)管理服務(wù)標準
- 《5以內(nèi)的減法》幼兒園數(shù)學(xué)課件
評論
0/150
提交評論