數(shù)據(jù)庫實驗報告.doc_第1頁
數(shù)據(jù)庫實驗報告.doc_第2頁
數(shù)據(jù)庫實驗報告.doc_第3頁
數(shù)據(jù)庫實驗報告.doc_第4頁
數(shù)據(jù)庫實驗報告.doc_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

實驗一 SQL Server基本使用與數(shù)據(jù)定義一實驗?zāi)康?掌握“企業(yè)管理器”及查詢的定義方法使用方法;2熟悉數(shù)據(jù)庫建模及E/R圖的畫法;3掌握SQL Server 中數(shù)據(jù)庫、及數(shù)據(jù)表的建立與管理方法;4掌握數(shù)據(jù)的導(dǎo)入/導(dǎo)出及數(shù)據(jù)庫備份/還原方法。二實驗內(nèi)容一、SQL Server 基本使用1啟動SQL SERVER。從SQL Server 2005程序組中啟動“SQL Server”,彈出如下對話框。按提示執(zhí)行以下三項操作:l 選擇服務(wù)器l 選擇身份驗證模式(SQL Server身份驗證,指定登錄名和密碼)在“服務(wù)器”列表框中,選擇服務(wù)器類型,選擇輸入相應(yīng)的服務(wù)器名稱,選擇身份驗證模式。如圖1-1:點(diǎn)擊連接。圖1-12對象資源管理器連接完成后,進(jìn)入對象資源管理器界面,如圖1-2圖1-23、在對象資源管理器的使用 點(diǎn)開服務(wù)器名稱,打開樹狀結(jié)構(gòu),可以看見服務(wù)器上的數(shù)據(jù)庫對象和其他對象。4創(chuàng)建查詢SQL Server提供了許多工具,可以用于管理服務(wù)器和客戶機(jī)、開發(fā)數(shù)據(jù)庫和應(yīng)用程序。查詢它可以通過圖形界面執(zhí)行SQL語句。創(chuàng)建查詢后在其中可以交互式地輸入和執(zhí)行各種SQL語句,并且可以在一個窗口中同時查看SQL語句和其結(jié)果集;可以在同時執(zhí)行多個SQL語句,也可以執(zhí)行腳本文件中的部分語句; 打開方法:創(chuàng)建SQL查詢分。如下圖1-3所示,可在工具欄中選擇要操作的數(shù)據(jù)庫(如master),并在查詢窗口中輸入相應(yīng)的SQL語句(select * from sysfiles),點(diǎn)擊工具條的綠色小三角運(yùn)行你輸入的SQL語句。此時在查詢窗口的下部會顯示執(zhí)行結(jié)果。圖1-3查詢結(jié)果的顯示方式,可通過查詢菜單設(shè)置:文本顯示結(jié)果、以表格顯示結(jié)果或結(jié)果保存為文件。5查看數(shù)據(jù)庫及瀏覽表中記錄查看已建立的數(shù)據(jù)庫在對象資源管理器中,單擊服務(wù)器左側(cè)的+號,選擇“數(shù)據(jù)庫”選項,可以看到在數(shù)據(jù)庫服務(wù)器中已建立的數(shù)據(jù)庫。 瀏覽表中記錄 選擇某數(shù)據(jù)庫并選擇數(shù)據(jù)庫中的“表”選項 。選擇要瀏覽的表,按右鍵并選擇:打開表/返回所有行 ,即可瀏覽表中記錄。二、數(shù)據(jù)庫的建立與管理1數(shù)據(jù)庫建模依據(jù)數(shù)據(jù)庫設(shè)計總體需求及原始數(shù)據(jù),在實驗前完成數(shù)據(jù)庫的建模工作(寫出預(yù)習(xí)報告)。具體要求如下:(1)設(shè)計訂單作為聯(lián)系的E/R圖。(2)設(shè)計訂單作為實體的E/R圖。(3)標(biāo)出E/R圖中各實體的鍵碼。(4)將訂單作為實體的E/R圖轉(zhuǎn)換為關(guān)系模型。3使用圖形界面創(chuàng)建數(shù)據(jù)庫和表 使用圖形界面(對象資源管理器)并依據(jù)內(nèi)容1中的關(guān)系模型創(chuàng)建數(shù)據(jù)庫和表。創(chuàng)建數(shù)據(jù)庫右擊“數(shù)據(jù)庫”選項,點(diǎn)擊“新建數(shù)據(jù)庫”,在彈出對話框中輸入你要創(chuàng)建的數(shù)據(jù)庫名(例如mybatabase)后直接按確定鍵。這時系統(tǒng)就會創(chuàng)建一個名為mydatabse的數(shù)據(jù)庫。 創(chuàng)建表 在數(shù)據(jù)庫中。右擊“表”選項。 選擇“新建表” ,輸入:列名、數(shù)據(jù)類型、長度等,并存盤。4使用查詢分析創(chuàng)建表. 點(diǎn)擊創(chuàng)建查詢;. 在出現(xiàn)的“查詢窗口”中選擇你要操作的數(shù)據(jù)庫,然后就可以在下面的編輯框中輸入SQL語句建立相關(guān)表。. 點(diǎn)擊工具條的綠色小三角(或按F5)就可以運(yùn)行你輸入的SQL語句。5數(shù)據(jù)庫的備份與還原數(shù)據(jù)庫的備份: 運(yùn)行企業(yè)管理器,右擊你所要備份的數(shù)據(jù)庫,選擇“任務(wù)”中的“備份數(shù)據(jù)庫”。 輸入備份數(shù)據(jù)庫的名稱,點(diǎn)擊“添加”后輸入備份數(shù)據(jù)庫存放的目錄和文件名。按確定按鈕,備份完成。數(shù)據(jù)庫的還原:一旦數(shù)據(jù)庫遭到破壞,可用備份的數(shù)據(jù)庫進(jìn)行恢復(fù)。 運(yùn)行企業(yè)管理器,右擊“數(shù)據(jù)庫”,在“任務(wù)”中選“還原數(shù)據(jù)庫”。 在“常規(guī)”頁中輸入恢復(fù)的數(shù)據(jù)庫名,選擇“從設(shè)備” 還原,點(diǎn)擊“選擇設(shè)備”后,再點(diǎn)擊“添加”按鈕選擇你所要恢復(fù)的數(shù)據(jù)庫備份文件名。點(diǎn)擊確定按鈕完成恢復(fù)。 如果原有數(shù)據(jù)庫被刪除,恢復(fù)異常。則可先建立一個同名數(shù)據(jù)庫,再在數(shù)據(jù)庫上進(jìn)行強(qiáng)制還原即可。實驗二、數(shù)據(jù)更新與簡單查詢一實驗?zāi)康模?掌握向表中進(jìn)行數(shù)據(jù)更新的方法。2. 掌握視圖的創(chuàng)建與刪除方法。3掌握視圖的查詢與更新方法。二實驗內(nèi)容 與 相關(guān)代碼:1插入數(shù)據(jù)。在產(chǎn)品表格中插入一種新產(chǎn)品。 0077、瓷器,單位(件)、8000、3、1002、10000.00insert into 產(chǎn)品values(0077,瓷器,單位(件),8000,3,1002,10000,00,NULL);在訂單表中插入新訂單。 666、2003-06-06、300 666、2007-06-01、9990.00insert into 訂單values(666,2003-06-06,300);insert into 訂單values(777,2007-06-01,9990.00);在代理商表中插入新代理商。 05、海信、中山路9號、541000、200000.00、60insert into 代理商values(05,海信,中山路9號,541000,200000.00,60);2修改數(shù)據(jù)。 更新所有代理商的提成比例為20%。update 代理商set 提成比例 = 20; 為產(chǎn)品表格增加一個新字段-缺貨量。alter table 產(chǎn)品add 缺貨量 int; 將編號為0011的產(chǎn)品單價更新為1000。update 產(chǎn)品set 價格 = 1000where 產(chǎn)品編號 =0011;3刪除數(shù)據(jù)。 刪除編號為700的客戶。deletefrom 客戶where 客戶編號 = 700; 刪除編號為05的代理商。deletefrom 代理商where 代理商編號 = 05;4建立與刪除索引的方法。在各表中,分別按代理商編號、客戶編號、產(chǎn)品編號及訂單編號建立索引。create index dailiindex on 代理商(代理商編號);create index dailiindex on 客戶(客戶編號);create index dailiindex on 產(chǎn)品(產(chǎn)品編號);create index dailiindex on 訂單(訂單編號);5單表查詢。 從產(chǎn)品表中查詢現(xiàn)有產(chǎn)品的庫存量。select 庫存量from 產(chǎn)品; 從客戶表中查詢“王五”的地址及代理商編號。select 地址,代理商編號from 客戶where 姓名 = 王五; 從代理商表中查詢代理商“惠普”的提成金額。select 提成金額from 代理商where 姓名 = 惠普; 從訂貨項目表中查詢編號為“444”的訂單所訂購的商品編號及數(shù)量。select 產(chǎn)品編號,訂購數(shù)量from 訂貨項目where 產(chǎn)品編號 = 444; 分別求代理商和客戶的總數(shù)。select count(*)from 代理商;select count(*)from 客戶; 從訂貨項目表中,查詢編號為0033的產(chǎn)品定貨總數(shù)量。select sum(訂購數(shù)量)from 訂貨項目where 產(chǎn)品編號 = 0033;三實驗總結(jié):1.插入數(shù)據(jù)的INSERT INTO語法如下:INSERTINTO (字段1,字段2, .)VALUES (值1,值2, .);2.修改數(shù)據(jù)的UPDATE SET語法如下:UPDATESET = , = WHERE ;3.刪除數(shù)據(jù)的DELETE語法如下:DELETEFROMWHERE ;4. 建立與刪除索引的方法如下:CREATE UNIQUE CLUSTER INDEX ON (,);5.單表查詢的方法如下:SELECT FROM WHERE ;參考教材P112-126完成更多操作實驗三 SQL復(fù)雜查詢與視圖一實驗?zāi)康模?掌握SQL語言中SELECT語句的多種查詢方式。2掌握對表建立與刪除索引的方法。3掌握聚焦函數(shù)的使用方法。4掌握集合查詢方法。二實驗內(nèi)容 與 相關(guān)代碼:2多表查詢 查詢編號為300的客戶通過的代理商的姓名和地址。select 代理商.姓名,代理商.地址from 代理商,客戶where 客戶編號=300 AND 代理商.代理商編號= 客戶.代理商編號; 查詢產(chǎn)品編號為0033、訂貨數(shù)量大于100的客戶編號及其姓名。方法一:select 客戶.客戶編號,客戶.姓名from 客戶where 客戶編號IN (select 客戶編號from 訂單where 訂單編號IN(select 訂單編號from 訂貨項目where 訂購數(shù)量 100 and 產(chǎn)品編號=0033);方法二:select 客戶.客戶編號,姓名from 客戶,訂單,訂貨項目where 客戶.客戶編號=訂單.客戶編號AND 訂單.訂單編號=訂貨項目.訂單編號AND 訂購數(shù)量100 AND 產(chǎn)品編號=0033; 查詢每個客戶的訂單,顯示客戶編號、客戶名、訂單編號及訂貨日期。select 客戶.客戶編號,姓名,訂單編號,訂貨日期from 客戶,訂單where 客戶.客戶編號= 訂單.客戶編號order by 客戶編號ASC; /按 客戶編號 升序(ASC)降序(DESC)排序 查詢所有2000年以后訂貨項目。select *from 訂單where 訂貨日期 2000; 查詢提成金額為100000以上(含100000)的代理商所對應(yīng)的客戶。select 客戶.*from 代理商,客戶where 提成金額100000 AND 代理商.代理商編號= 客戶.代理商編號;3、嵌套查詢 分別用帶有IN謂詞的子查詢和帶比較運(yùn)算符的子查詢實現(xiàn)以下操作 查詢與“劉晨”在同一個系學(xué)習(xí)的學(xué)生。select *from studentwhere Sdept IN(select Sdeptfrom studentwhere Sname = 劉晨); 查詢選修了課程名為“操作系統(tǒng)”的學(xué)生。select *from studentwhere Sno IN(select Snofrom scwhere Cno IN (select Cnofrom coursewhere Cname=操作系統(tǒng));4建立視圖 建立含有訂單號及擁有該訂單的客戶編號和代理商號三個字段的視圖。create VIEW 訂單視圖asselect 訂單.訂單編號,客戶.客戶編號,代理商.代理商編號from 訂單,客戶,代理商where 訂單.客戶編號= 客戶.客戶編號AND 客戶.代理商編號= 代理商.代理商編號; 立一個含有產(chǎn)品編號、產(chǎn)品庫存量及產(chǎn)品在訂量三個字段的視圖。create VIEW 產(chǎn)品視圖asselect 訂貨項目.產(chǎn)品編號,訂貨項目.訂購數(shù)量,產(chǎn)品.庫存量from 訂貨項目,產(chǎn)品where 訂貨項目.產(chǎn)品編號= 產(chǎn)品.產(chǎn)品編號; 建立一個含有客戶編號、客戶所訂的產(chǎn)品、該產(chǎn)品的訂購價及該產(chǎn)品的描述四個字段的視圖。create VIEW 訂購視圖asselect 客戶.客戶編號,訂貨項目.訂購單價,產(chǎn)品.信息描述from 客戶,訂單,訂貨項目,產(chǎn)品where 客戶.客戶編號= 訂單.客戶編號AND 訂單.訂單編號= 訂貨項目.訂單編號AND 訂貨項目.產(chǎn)品編號= 產(chǎn)品.產(chǎn)品編號;建立一個含計算機(jī)科學(xué)系的學(xué)生及年齡不大于19歲的學(xué)生的視圖。create VIEW CS19學(xué)生試圖asselect *from studentwhere Sdept=CS AND Sage19; 建立一個既選修了課程1又選修了課程2的學(xué)生視圖。create VIEW 選修1AND2課程學(xué)生視圖asselect *from studentwhere Sno IN(select Snofrom scwhere Cno=1intersectselect Snofrom scwhere Cno=2);5在視圖基礎(chǔ)上的查詢 查詢所有訂單的客戶和代理商。select 客戶編號,代理商編號from 訂單視圖; 查詢編號為400的客戶所訂的產(chǎn)品以及該產(chǎn)品的單價。select 訂購單價from 訂購視圖where 客戶編號=300; 查詢選修課程1的所有學(xué)生。select Snamefrom studentwhere exists(select *from scwhere Sno=student.Sno AND Cno =1);實驗四 數(shù)據(jù)庫的安全一實驗?zāi)康?掌握SQL Server 中數(shù)據(jù)庫安全性管理的策略與方法。二實驗內(nèi)容數(shù)據(jù)庫的安全主要包括幾個方面的內(nèi)容:安全模式,SQL Server服務(wù)器安全, SQL Server登錄帳號, 角色, SQL Server用戶和許可等內(nèi)容. 安全模式包括如下內(nèi)容:(1) 安全規(guī)劃:(2) 選擇安全的形式:指選擇用戶登錄的登錄認(rèn)證方式.1認(rèn)證模式 認(rèn)證是指當(dāng)用戶訪問數(shù)據(jù)庫系統(tǒng)時,系統(tǒng)對該用戶的帳戶和口令的確認(rèn)過程。SQL Server可以識別兩種類型的登錄認(rèn)證機(jī)制。 SQL Server認(rèn)證機(jī)制 Windows NT認(rèn)證機(jī)制當(dāng)使用SQL Server認(rèn)證機(jī)制時,SQL Server系統(tǒng)管理員定義SQL Server的登錄帳戶和口令。當(dāng)用戶連接SQL Server時,必須提供登錄帳戶和口令。當(dāng)使用Windows NT認(rèn)證機(jī)制時,由Windows NT帳戶控制用戶對SQL Server系統(tǒng)的訪問。這時用戶不必提供SQL Server的登錄帳戶和口令就能連接到系統(tǒng)上,但是,在該用戶連接之前,SQL Server系統(tǒng)管理員必須將Windows NT帳戶定義為SQL Server的有效登錄帳戶(請參考Windows NT帳戶管理方法)。用戶可以使用SQL Server企業(yè)管理器來設(shè)置服務(wù)器的認(rèn)證模式。設(shè)置方法參見實驗一。2登錄管理 登錄帳戶是基于SQL Server服務(wù)器使用的用戶名,可控制用戶對數(shù)據(jù)庫服務(wù)器的訪問。在SQL Server中有一個特殊的登錄帳戶:sa,是系統(tǒng)管理員的簡稱,它在SQL Server系統(tǒng)和所有數(shù)據(jù)庫中有全部的權(quán)限,不能被刪除。設(shè)置sa帳號密碼: 單擊相應(yīng)服務(wù)器屬下的 “Login”;右單擊右窗格的用戶名,選擇 “屬性”.增加登錄帳戶的兩種方法:一是:從Windows NT組和用戶中創(chuàng)建登錄帳戶和創(chuàng)建新的SQL Server登錄帳戶(參考Windows NT帳戶管理方法)。二是:使用SQL Server企業(yè)管理器創(chuàng)建登錄帳戶,方法如下:在SQL Server企業(yè)管理器選擇一服務(wù)器,選擇“安全性”文件夾,在“安全性”文件夾中,右擊“登錄”,選擇“新建登錄”,則出現(xiàn)如下窗口:在常規(guī)選項卡中輸入登錄名和口令;在服務(wù)器角色選項卡中選擇相應(yīng)服務(wù)器角色復(fù)選框;在數(shù)據(jù)庫訪問選項卡中選擇要訪問的數(shù)據(jù)庫及指定該帳戶所屬的數(shù)據(jù)庫角色。最后按確定即可。用剛建立的登錄帳戶登錄服務(wù)器:先右擊服務(wù)器,選擇斷開,再右擊服務(wù)器,選擇連接。按提示輸入帳戶名和口令即可登錄。如果選擇連接時不提示輸入帳戶/口令,可選擇強(qiáng)制用戶登錄時驗證帳戶和口令(參見5.) (3)配置安全角色 角色:SQL Server2000服務(wù)器操作和數(shù)據(jù)庫訪問許可的管理單位,角色可以把各個用戶匯集成一個單元,以便進(jìn)行許可管理。SQL Server提供了用于通常管理工作的預(yù)定義服務(wù)器角色、和數(shù)據(jù)庫角色,以簡化對某一個用戶授予一些管理許可的工作??稍诮⒌卿泿魰r設(shè)置。系統(tǒng)管理員給適當(dāng)用戶分配相應(yīng)的角色是SQL Server服務(wù)器和數(shù)據(jù)庫安全的關(guān)鍵之一.SQL Server2000服務(wù)器系統(tǒng)管理員或數(shù)據(jù)庫所有者在設(shè)置數(shù)據(jù)庫訪問許可時,應(yīng)先創(chuàng)建新的角色并將訪問許可集中授予角色,然后再將需要擁有這一許可權(quán)限的用戶加入到角色中, 加入到角色中的所有用戶自動具有角色所擁有的訪問許可權(quán)限.常用固定服務(wù)角色如下角色許可系統(tǒng)管理員(system administrator)執(zhí)行任意活動數(shù)據(jù)庫創(chuàng)建者(database creator)創(chuàng)建和修改數(shù)據(jù)庫磁盤管理員(disk administrator)管理磁盤文件進(jìn)程管理員(process administrator)管理系統(tǒng)進(jìn)程安全管理員(security administrator)管理和審核服務(wù)器登錄服務(wù)器管理員(server administrator)配置服務(wù)器端設(shè)置安裝管理員(setup administrator)安裝復(fù)制 固定的數(shù)據(jù)庫角色及許可常用固定數(shù)據(jù)庫角色及其許可角色許可Public維護(hù)全部默認(rèn)的許可Db_owner執(zhí)行任何數(shù)據(jù)庫角色的操作Db_accessadmin增加或者刪除數(shù)據(jù)庫用戶、組和角色Db_ddladmin增加、修改或者刪除數(shù)據(jù)庫對象Db_securityadmin執(zhí)行語句和對象許可Db_backupoperator備份和恢復(fù)數(shù)據(jù)庫Db_datareader讀取任意表中的數(shù)據(jù)Db_datawriter增加、修改或者刪除全部表中的數(shù)據(jù)Db_denydatareader不能讀取任一個表中的數(shù)據(jù)Db_denydatawriter不能修改任一個表中的數(shù)據(jù)創(chuàng)建角色方法:用戶只能創(chuàng)建數(shù)據(jù)庫角色,只在其所在的數(shù)據(jù)庫中有效,對其他數(shù)據(jù)庫無效. 右單擊 “角色”授權(quán):授予用戶,用戶組以及角色某種或某些許可權(quán)限,權(quán)限:一種對數(shù)據(jù)庫對象的操作權(quán)力。用戶登錄到SQLServer服務(wù)器后,其所充當(dāng)?shù)慕巧陀脩舻脑S可,就決定了它們對數(shù)據(jù)庫對象所能執(zhí)行的操作。創(chuàng)建應(yīng)用程序角色:標(biāo)準(zhǔn)角色可在SQLServer某些方面Enterprise Manager窗口中操作數(shù)據(jù)庫,也可以通過應(yīng)用程序使用數(shù)據(jù)庫; 應(yīng)用程序角色:僅可以通過應(yīng)用程序訪問數(shù)據(jù)庫的角色;創(chuàng)建應(yīng)用角色后,授權(quán)方法跟標(biāo)準(zhǔn)角色授權(quán)方法一樣。添加角色到固有角色,角色就具有相應(yīng)固有角色所具有的授權(quán)。方法:右鍵單擊需將角色添加到其屬下的固有角色?!皩傩浴?按“add”.創(chuàng)建SQL Server用戶方法:右鍵單擊需將創(chuàng)建角色的數(shù)據(jù)庫屬下的的 “user”. SQL Server用戶只能用于訪問數(shù)據(jù)庫,不能用于登錄4許可管理 許可的種類:對象許可,數(shù)據(jù)庫許可和固有角色的隱含許可在SQL SERVER 系統(tǒng)中,把權(quán)利定義為許可,通過實行許可管理,維護(hù)數(shù)據(jù)的有序流動??稍谟脩魴?quán)限中設(shè)定。設(shè)置對象許可的方法:右鍵單擊需設(shè)置許可的對象(以數(shù)據(jù)表為例)-“屬性”-permissions設(shè)置語句許可的方法:右鍵單擊需設(shè)置語句許可的數(shù)據(jù)庫名-“屬性”-單擊“permissions”選項卡授權(quán)5強(qiáng)制用戶登錄時驗證用戶名及口令右擊服務(wù)器,選擇“編輯SQL Server注冊屬性”,如下圖所示:選擇“總是提示輸入登錄名和密碼”,再重新登錄即可。實驗完成規(guī)劃實施某部門SQL Server安全策略具體要求 和 相關(guān)操作 如下:1. 部門總監(jiān)(1人):作為系統(tǒng)管理人員,允許任何操作。a) 用戶名:vadminb) 服務(wù)器角色:sysadminc) 數(shù)據(jù)庫角色:無d) 權(quán)限:無2. 服務(wù)器登錄安全管理員(1人):可設(shè)置和管理用戶登錄帳號,授權(quán)訪問訂單數(shù)據(jù)庫。a) 用戶名:vsafemanagerb) 服務(wù)器角色:securityadminc) 數(shù)據(jù)庫角色:無d) 權(quán)限:無3. 數(shù)據(jù)庫維護(hù)人員(1人):可對訂單數(shù)據(jù)庫進(jìn)行任何操作,沒有登錄管理操作權(quán)限。a) 用戶名:vmaintainerb) 服務(wù)器角色:無c) 數(shù)據(jù)庫角色:db_ownerd) 權(quán)限:無4. 數(shù)據(jù)錄入人員(2人):可進(jìn)行數(shù)據(jù)錄入,不能創(chuàng)建與修改表結(jié)構(gòu)及其它授權(quán)等操作。a) 用戶名:vdata_in01,vdata_in02b) 服務(wù)器角色:無c) 數(shù)據(jù)庫角色:db_datawriterd) 權(quán)限:無5. 訂單管理人員(2人):能對訂單數(shù)據(jù)庫中的訂單表和項目表進(jìn)行更新,其它表僅能查詢。a) 用戶名:vorder01,vorder02b) 服務(wù)器角色:無c) 數(shù)據(jù)庫角色:db_datareaderd) 權(quán)限:對訂單表和項目表設(shè)置插入(INSERT)、更新(UPDATE)權(quán)限6. 客戶管理人員(2人):能對訂單數(shù)據(jù)庫中的代理商表和客戶表進(jìn)行更新,其它表僅能查詢。a) 用戶名:vcustomer01, vcustomer02b) 服務(wù)器角色:無c) 數(shù)據(jù)庫角色:db_datareaderd) 權(quán)限:對代理商表和客戶表設(shè)置更新(UPDATE)權(quán)限注意:以上人員的登錄帳號和密碼統(tǒng)一規(guī)劃設(shè)置。綜合設(shè)計I開放數(shù)據(jù)庫互連(ODBC)是Microsoft引進(jìn)的一種早期數(shù)據(jù)庫接口技術(shù)。它實際上是我們要在本章后面加以討論的ADO的前身。Microsoft引進(jìn)這種技術(shù)的一個主要原因是,以非語言專用的方式,提供給程序員一種訪問數(shù)據(jù)庫內(nèi)容的簡單方法。換句話說,訪問DBF文件或其他數(shù)據(jù)庫以得到數(shù)據(jù)庫中的數(shù)據(jù)時,無需懂得數(shù)據(jù)庫程序設(shè)計語言。一實驗?zāi)康? 掌握客戶端訪問數(shù)據(jù)庫的方法。2 掌握常用數(shù)據(jù)感知元件的應(yīng)用。 3、DELPHI程序的基本設(shè)計方法。二實驗內(nèi)容1ADO簡介ADO是Active Data Objects(活動的數(shù)據(jù)對象)的簡稱,是Microsoft用來訪問數(shù)據(jù)庫接口,也稱OLE DB(對象鏈接和嵌入數(shù)據(jù)庫)。Delphi提供了一組ADO元件,可以通過ADO技術(shù)來訪問數(shù)據(jù)庫。然后用現(xiàn)有的數(shù)據(jù)感知控件(如DBGrid)即可顯示ADO數(shù)據(jù)。ADO元件用途TADOConnection用于連接一個ADO數(shù)據(jù)庫。多個ADO元件可以共享這個連接來執(zhí)行命令、檢索數(shù)據(jù)和對數(shù)據(jù)庫對象進(jìn)行操作。TADODataSet代表一個ADO數(shù)據(jù)集,可以從一個或多個表中檢索數(shù)據(jù)。TADOTable代表一個表,可以從單人表中檢索數(shù)據(jù)TADOQuery用SQL語句查詢數(shù)據(jù)集;2使用ADOConnection來連接數(shù)據(jù)庫在ADO中將ADOConnection拖入FORM1中,并單擊設(shè)置ConnectionStringBuild提供者選擇。for SQL Server;連接選擇:數(shù)據(jù)庫、用戶。;高級設(shè)置:連接超時30秒。測試并確定。3使用ADOTable來連接表同樣設(shè)置ADOTable,Connection屬性為以上設(shè)置的ADOConnection1,在TableName中選擇連接的表名。設(shè)置Active為true。 4使用DBGrid顯示表先Data Access中選擇設(shè)置Data Source的DataSet屬性為ADOTable1。然后再在Data Controls中,選擇設(shè)置DBGrid(方法同上)DataSource屬性為Data Source1。5使用數(shù)據(jù)庫導(dǎo)航器(DBNavigator)在Data Controls中,選擇設(shè)置DBNavigator 的DataSource屬性為Data Source1。6實現(xiàn)在同一窗體中顯示多表內(nèi)容,并能用數(shù)據(jù)庫導(dǎo)航器進(jìn)行增加、刪除等操作。7、主界面的制作缺省狀態(tài)下,工程中創(chuàng)建并保存的第一個窗體將成為工程的主窗體,若要改變工程的主窗體,操作如下:1) 選擇Project/Options,然后選中Forms頁面。2) 在Main Form組合框中,選取想以其作為工程主窗體的窗體,然后選擇OK。 此時運(yùn)行應(yīng)用程序時,就會顯示新選擇的主窗體。8、界面的連接若將其它窗體加到工程中,可選取File/New Form9、主菜單的使用在編寫引用新窗體的程序代碼之前,需要在引用該窗體的單元文件中加入窗體引用,稱之為窗體鏈接。操作如下:3) 選取需要引用另一個窗體的窗體4) 選擇File/Use Unit.5) 為被引用窗體選取窗體單元名。6) 選擇OK 若兩個窗體互相引用(遞歸引用),編譯程序會出錯,解決方法如下:l 將兩個uses子句和單元標(biāo)識符放在獨(dú)立單元文件的implementation部分(如:File/Use Unit.)。l 將一個uses子句放在interface部分,而另一個uses子句放在implementation部分。要求:根據(jù)以上方法,創(chuàng)建一主窗體和兩個子窗體,在主窗體中使用按鈕控制連接兩子窗體。在子窗體中分別連接訪問訂單表和訂貨項目表,并用DBNavigator控制記錄瀏覽。數(shù)據(jù)庫綜合設(shè)計II一、 設(shè)計目的結(jié)合數(shù)據(jù)庫原理的基本理論,選用一種現(xiàn)代關(guān)系數(shù)據(jù)庫系統(tǒng)(如:SQL SERVER),設(shè)計一個具體的信息管理系統(tǒng)。通過本課程的訓(xùn)練,使學(xué)生掌握數(shù)據(jù)庫技術(shù)的實際應(yīng)用以及數(shù)據(jù)庫信息管理系統(tǒng)的設(shè)計方法與開發(fā)過程;掌握數(shù)據(jù)庫開發(fā)工具的使用以及綜合編程調(diào)試的能力,為以后能進(jìn)行數(shù)據(jù)庫系統(tǒng)設(shè)計、開發(fā)與維護(hù)打下良好的基礎(chǔ)。二、 設(shè)計要求結(jié)合一個具體任務(wù)(見附件一:課程設(shè)計參考題目),完成一個基于C/S模式的數(shù)據(jù)庫系統(tǒng)的設(shè)計與開發(fā),主要應(yīng)包括如下內(nèi)容:1完成課題任務(wù)的需求分析、完成系統(tǒng)總體結(jié)構(gòu)設(shè)計方案。(主控功能模塊、數(shù)據(jù)處理模塊、統(tǒng)計報表模塊等)2數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計與實現(xiàn)。3數(shù)據(jù)庫安全的設(shè)計4客戶端數(shù)據(jù)庫應(yīng)用程序的開發(fā)。5綜合調(diào)試方法的掌握。三、 客戶端數(shù)據(jù)庫應(yīng)用程序的開發(fā)內(nèi)容完成信息管理系統(tǒng)的主界面設(shè)計;數(shù)據(jù)輸入與修改的設(shè)計;數(shù)據(jù)查詢的設(shè)計;統(tǒng)計與報表輸出的設(shè)計。要求功能完整,數(shù)據(jù)處理正確。四、 設(shè)計完成形式1能夠進(jìn)行操作演示的自己設(shè)計的管理軟件一套。2課程設(shè)計報告一份。五、 參考文獻(xiàn)趙建明 手把手教你學(xué)用數(shù)據(jù)庫 清華大學(xué) 2001.6劉前進(jìn) Delphi數(shù)據(jù)庫編程技術(shù) 人民郵電出版社 1999.10段來盛 Delphi實戰(zhàn)演練 人民郵電出版社 2000.1肖永順 Delphi 程序設(shè)計 人民郵電出版社 2000.5六、 參考網(wǎng)站Delphi技術(shù)網(wǎng)站: 附件一:課程設(shè)計參考題目(也可另選其它題目)1人事檔案管理信息系統(tǒng)2工資管理信息系統(tǒng)3學(xué)生成績管理系統(tǒng)4商品進(jìn)貨管理系統(tǒng)5商品銷售管理系統(tǒng)6商品庫存管理系統(tǒng)7圖書管理信息系統(tǒng)8設(shè)備管理系統(tǒng)附件二:開發(fā)應(yīng)用程序用戶界面(僅供參考)2. 使用主窗體缺省狀態(tài)下,工程中創(chuàng)建并保存的第一個窗體將成為工程的主窗體,若要改變工程的主窗體,操作如下:1) 選擇Project/Options,然后選中Forms頁面。2) 在Main Form組合框中,選取想以其作為工程主窗體的窗體,然后選擇OK。 此時運(yùn)行應(yīng)用程序時,就會顯示新選擇的主窗體。3. 加入其它窗體若將其它窗

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論