版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 數(shù)據(jù)庫課程設(shè)計(jì)</b></p><p> 設(shè)計(jì)名稱:圖書管理系統(tǒng)</p><p><b> 目 錄</b></p><p><b> 目 錄I</b></p><p><b> 前 言II</b>
2、</p><p> 第1部分 Oracle管理技術(shù)1</p><p> 實(shí)驗(yàn)1 數(shù)據(jù)庫管理1</p><p> 實(shí)驗(yàn)2 角色和用戶管理4</p><p> 實(shí)驗(yàn)3 表和視圖管理6</p><p> 實(shí)驗(yàn)4 索引和序列管理10</p><p> 實(shí)驗(yàn)5 PL/SQ
3、L編程12</p><p> 實(shí)驗(yàn)6 使用游標(biāo)、存儲(chǔ)過程和觸發(fā)器18</p><p> 實(shí)驗(yàn)7 表空間管理21</p><p> 實(shí)驗(yàn)8 文件管理23</p><p> 第2部分 Oracle開發(fā)技術(shù)26</p><p><b> 前 言</b></p>
4、;<p> 數(shù)據(jù)庫技術(shù)是計(jì)算機(jī)科學(xué)中發(fā)展最快的領(lǐng)域之一。隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,數(shù)據(jù)庫技術(shù)與網(wǎng)絡(luò)技術(shù)相結(jié)合,已經(jīng)廣泛應(yīng)用于工作和生活的各個(gè)領(lǐng)域。同時(shí),數(shù)據(jù)庫技術(shù)及其應(yīng)用已經(jīng)成為國內(nèi)外高校計(jì)算機(jī)專業(yè)和許多非計(jì)算機(jī)專業(yè)的必修或選修課程。</p><p> Oracle是當(dāng)前最流行的大型關(guān)系數(shù)據(jù)庫之一,支持包括32位Windows、64位Windows、OS、HP-UX、AIX5L、Solaris和L
5、inux等多種操作系統(tǒng),擁有廣泛的用戶和大量的應(yīng)用案例,已成為大型數(shù)據(jù)庫應(yīng)用系統(tǒng)的首選后臺(tái)數(shù)據(jù)庫系統(tǒng)。</p><p> 本實(shí)驗(yàn)課程要求學(xué)生全面了解Oracle數(shù)據(jù)庫的特點(diǎn)和功能。從安裝配置、安全性、可用性、互操作性、PL/SQL、可開發(fā)性、商業(yè)智能等多個(gè)方面,對Oracle數(shù)據(jù)庫的各項(xiàng)技術(shù)進(jìn)行學(xué)習(xí)和實(shí)驗(yàn)。</p><p> 通過學(xué)習(xí)Oracle數(shù)據(jù)庫安裝、管理及開發(fā),為今后從事Ora
6、cle數(shù)據(jù)庫管理和開發(fā)工作打下良好的基礎(chǔ)。</p><p> 本實(shí)驗(yàn)課程共分2個(gè)部分。第1部分為Oracle的管理技術(shù),由實(shí)驗(yàn)1至實(shí)驗(yàn)8組成,內(nèi)容包括:(1)數(shù)據(jù)庫管理;(2)角色和用戶管理;(3)表和視圖管理;(4)索引和序列管理;(5)PL/SQL編程;(6)使用游標(biāo)、存儲(chǔ)過程和觸發(fā)器;(7)表空間;(8)文件管理。第2部分為Oracle開發(fā)技術(shù),要求完成基于一定背景的管理信息系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì),如學(xué)生信息管
7、理系統(tǒng)、圖書管理系統(tǒng)、人事信息管理系統(tǒng)、網(wǎng)上購物系統(tǒng)等。</p><p> 第1部分 Oracle管理技術(shù)</p><p> 實(shí)驗(yàn)1 數(shù)據(jù)庫管理</p><p><b> 目的和要求</b></p><p> ?。?)了解Oracle數(shù)據(jù)庫的邏輯結(jié)構(gòu)和物理結(jié)構(gòu);</p><p> ?。?
8、)了解Oracle Enterprise Manager的使用情況;</p><p> (3)學(xué)習(xí)關(guān)閉和啟動(dòng)數(shù)據(jù)庫實(shí)例的方法;</p><p> ?。?)學(xué)習(xí)使用SQL語句創(chuàng)建數(shù)據(jù)庫的方法;</p><p> ?。?)學(xué)習(xí)使用SQL語句刪除數(shù)據(jù)庫的方法。</p><p><b> 實(shí)驗(yàn)準(zhǔn)備</b></p>
9、<p> 首先要了解Oracle數(shù)據(jù)庫的邏輯結(jié)構(gòu),包括方案(schema)對象、數(shù)據(jù)塊(data block)、區(qū)間(extent)、段(segment)和表空間(tablespace)等。數(shù)據(jù)庫由若干個(gè)表空間組成,表空間由表組成,段由區(qū)間組成,區(qū)間則由數(shù)據(jù)塊組成。Oracle數(shù)據(jù)庫的物理結(jié)構(gòu)由構(gòu)成數(shù)據(jù)庫的操作系統(tǒng)文件所決定。每個(gè)Oracle數(shù)據(jù)庫都由3種類型的文件組成:數(shù)據(jù)文件、日志文件和控制文件。這些數(shù)據(jù)庫文件為數(shù)據(jù)
10、庫信息提供真正的物理存儲(chǔ)。</p><p> Enterprise Manager 9i是Oracle 9i提供的新的管理工具,簡稱EM。使用它可以完成啟動(dòng)、關(guān)閉數(shù)據(jù)庫,創(chuàng)建、刪除數(shù)據(jù)庫等功能。只有系統(tǒng)管理員或擁有CREATE DATABASE權(quán)限的用戶才能創(chuàng)建數(shù)據(jù)庫。可以在Enterprise Manager中通過圖形界面創(chuàng)建數(shù)據(jù)庫,也可以使用CREATE DATABASE語句創(chuàng)建數(shù)據(jù)庫。</p>
11、<p><b> 實(shí)驗(yàn)內(nèi)容</b></p><p> 本實(shí)驗(yàn)主要包括以下內(nèi)容。</p><p> 練習(xí)使用不同方法啟動(dòng)和關(guān)閉數(shù)據(jù)庫實(shí)例。</p><p> ?。?)練習(xí)使用不同方法創(chuàng)建和刪除數(shù)據(jù)庫,要使操作的數(shù)據(jù)庫為用戶管理數(shù)據(jù)庫UserMan。</p><p> 1.使用SHUTDOWN命令關(guān)閉數(shù)
12、據(jù)庫實(shí)例</p><p> 練習(xí)使用SHUTDOWN命令關(guān)閉數(shù)據(jù)庫實(shí)例,分別按以下方式啟動(dòng)數(shù)據(jù)庫實(shí)例。</p><p> ?。?)正常關(guān)閉。等待當(dāng)前所有已連接的用戶斷開與數(shù)據(jù)庫的連接,然后關(guān)閉數(shù)據(jù)庫。正常關(guān)閉的語句如下:</p><p> SHUTDOWN NORMAL</p><p> ?。?)立即關(guān)閉?;赝嘶顒?dòng)事務(wù)處理并斷開所有已連接
13、的用戶,然后關(guān)閉數(shù)據(jù)庫。立即關(guān)閉的語句如下:</p><p> SHUTDOWN IMMEDIATE</p><p> (3)事務(wù)處理關(guān)閉。完成事務(wù)處理后斷開所有已連接的用戶,然后關(guān)閉數(shù)據(jù)庫。事務(wù)處理關(guān)閉的語句如下:</p><p> SHUTDOWN TRANSACTIONAL</p><p> ?。?)中止關(guān)閉。中止數(shù)據(jù)庫實(shí)例,立即
14、關(guān)閉數(shù)據(jù)庫。中止關(guān)閉的語句如下:</p><p> SHUTDOWN ABORT</p><p> 每次執(zhí)行SHUTDOWN語句關(guān)閉數(shù)據(jù)庫實(shí)例之前,請執(zhí)行STARTUP命令啟動(dòng)數(shù)據(jù)庫。</p><p> 2.使用STARTUP命令啟動(dòng)數(shù)據(jù)庫實(shí)例</p><p> 練習(xí)使用STARTUP命令啟動(dòng)數(shù)據(jù)庫實(shí)例,分別按以下方式啟動(dòng)數(shù)據(jù)庫實(shí)例。
15、</p><p> ?。?)啟動(dòng)數(shù)據(jù)庫實(shí)例時(shí)不裝載數(shù)據(jù)庫。執(zhí)行此操作的命令如下:</p><p> STARTUP NOMOUNT</p><p> ?。?)啟動(dòng)數(shù)據(jù)庫實(shí)例,裝載數(shù)據(jù)庫,但不打開數(shù)據(jù)庫。通常在數(shù)據(jù)庫維護(hù)時(shí)執(zhí)行此操作,對應(yīng)的命令如下:</p><p> STARTUP MOUNT</p><p>
16、(3)啟動(dòng)數(shù)據(jù)庫實(shí)例,裝載數(shù)據(jù)庫,打開數(shù)據(jù)庫。執(zhí)行此操作的命令如下:</p><p> STARTUP OPEN</p><p> ?。?)強(qiáng)制實(shí)例啟動(dòng)。在遇到特殊異常的情況時(shí),可以強(qiáng)制啟動(dòng)實(shí)例。強(qiáng)制啟動(dòng)實(shí)例的語句如下:</p><p> STARTUP FORCE</p><p> 該語句將數(shù)據(jù)庫強(qiáng)行啟動(dòng)到OPEN模式。</p&
17、gt;<p> (5)啟動(dòng)后限制對數(shù)據(jù)庫實(shí)例的訪問。執(zhí)行此操作的命令如下:</p><p> STARTUP RESTRICT</p><p> 每次執(zhí)行STARTUP語句啟動(dòng)數(shù)據(jù)庫實(shí)例之前,請執(zhí)行SHUTDOWN命令關(guān)閉數(shù)據(jù)庫。</p><p> 3.使用ORACLE Enterprise Manager關(guān)閉數(shù)據(jù)庫實(shí)例</p>
18、<p> 按照下面的步驟關(guān)閉數(shù)據(jù)庫實(shí)例。</p><p> ?。?)在數(shù)據(jù)庫處于打開狀態(tài)時(shí),使用SYS用戶以SYSDBA身份登錄到Enterprise Manager。在主目錄頁面的“一般信息”欄目中,可以看到“關(guān)閉”按鈕。</p><p> (2)單擊“關(guān)閉”按鈕,可以打開“主機(jī)和目標(biāo)數(shù)據(jù)庫身份證明”頁面。用戶需要擁有管理員的權(quán)限才能關(guān)閉數(shù)據(jù)庫實(shí)例,包括主機(jī)操作系統(tǒng)的管理員
19、和當(dāng)前數(shù)據(jù)庫實(shí)例的SYSDBA用戶。</p><p> (3)輸入完成后,單擊“確定”按鈕,打開“確認(rèn)關(guān)閉”頁面。</p><p> (4)單擊“是”按鈕,開始關(guān)閉數(shù)據(jù)庫。關(guān)閉操作完成后,單擊“刷新”按鈕,打開“啟動(dòng)數(shù)據(jù)庫實(shí)例”頁面。</p><p> 4.使用ORACLE Enterprise Manager啟動(dòng)數(shù)據(jù)庫實(shí)例</p><p&
20、gt; 按照下面的步驟啟動(dòng)數(shù)據(jù)庫實(shí)例。</p><p> ?。?)使用SYS用戶以SYSDBA身份登錄到Enterprise Manager。</p><p> ?。?)單擊“啟動(dòng)”按鈕,打開“主機(jī)和目標(biāo)數(shù)據(jù)庫身份證明”頁面。用戶需要擁有管理員的權(quán)限才能啟動(dòng)數(shù)據(jù)庫實(shí)例,包括主機(jī)操作系統(tǒng)的管理員和當(dāng)前數(shù)據(jù)庫實(shí)例的SYSDBA用戶。</p><p> (3)輸入完成
21、后,單擊“確定”按鈕,打開“確認(rèn)打開”頁面。</p><p> (4)單擊“是”按鈕,開始打開數(shù)據(jù)庫。</p><p> 5.使用SQL語句創(chuàng)建數(shù)據(jù)庫</p><p> 按照如下條件創(chuàng)建數(shù)據(jù)庫OracleDB(以SYSDBA的用戶身份連接到數(shù)據(jù)庫)。</p><p> ?。?)設(shè)置SYS用戶的密碼為SYSPWD,設(shè)置SYSTEM用戶的密
22、碼為SYSTEMPWD。</p><p> ?。?)使用已有的控制文件。</p><p> (3)指定日志文件組redo01.log,大小為100MB;指定日志文件組redo02.log,大小為100MB。設(shè)置最大的日志文件數(shù)量為10。</p><p> ?。?)定義日志文件組中最大的日志文件數(shù)量為5。</p><p> (5)定義最大的
23、數(shù)據(jù)文件數(shù)量為100。</p><p> ?。?)定義數(shù)據(jù)庫中最大的實(shí)例數(shù)量為1。</p><p> ?。?)定義存儲(chǔ)數(shù)據(jù)的字符集為US7ASCII。</p><p> (8)定義數(shù)據(jù)文件名稱為SYS01.dbf,初始大小為100MB。</p><p> ?。?)定義默認(rèn)的表空間為tbs_1。</p><p> ?。?/p>
24、10)定義臨時(shí)表空間為tempts1。</p><p> ?。?1)定義臨時(shí)文件為temp01.dbf,大小為10MB。</p><p> CREATE DATABASE語句實(shí)例:</p><p> CREATE DATABASE OracleDB</p><p> USER SYS IDENTIFIED BY bipt123</
25、p><p> USER SYSTEM IDENTIFIED BY bipt123</p><p> CONTROLFILE REUSE</p><p> MAXLOGFILES 10</p><p> MAXLOGMEMBERS 5</p><p> MAXDATAFILES 100</p><
26、;p> MAXINSTANCES 1</p><p> LOGFILE GROUP 1 (‘E:\redo01.log’) SIZE 100M ,</p><p> GROUP 2 (E:\redo02.log’) SIZE 100M ,</p><p> CHARACTER SET US7ASCII</p><p> DAT
27、AFILE ‘E:\sys01.dbf’ SIZE 100M REUSE</p><p> EXTENT MANAGEMENT LOCAL</p><p> DEFAULT TABLESPACE tbs_1</p><p> DEFAULT TEMPORARY TABLESPACE tempts1</p><p> TEMPFILE
28、‘E:\temp01.dbf’ SIZE 10M REUSE;</p><p> 6.使用SQL語句刪除數(shù)據(jù)庫</p><p> 按照如下步驟刪除數(shù)據(jù)庫UserMan。</p><p> ?。?)在刪除數(shù)據(jù)庫之前,需要用戶以SYSDBA或SYSOPER身份登錄,代碼如下:</p><p> CONNECT SYS/SYSPWD AS S
29、YSDBA;</p><p> 其中SYSPWD為SYS用戶的密碼,請根據(jù)實(shí)際情況輸入。</p><p> ?。?)關(guān)閉數(shù)據(jù)庫,再以MOUNT模式啟動(dòng)數(shù)據(jù)庫,代碼如下:</p><p> SHUTDOWN IMMEDIATE;</p><p> STARTUP MOUNT;</p><p> (3)刪除數(shù)據(jù)庫,
30、代碼如下:</p><p> DROP DATABASE;</p><p> 實(shí)驗(yàn)2 角色和用戶管理</p><p><b> 目的和要求</b></p><p> ?。?)了解Oracle數(shù)據(jù)庫用戶和角色的概念;</p><p> ?。?)學(xué)習(xí)使用SQL語句創(chuàng)建Oracle用戶;<
31、/p><p> ?。?)學(xué)習(xí)使用SQL語句創(chuàng)建Oracle角色;</p><p> ?。?)學(xué)習(xí)使用SQL語句指定用戶的角色。</p><p><b> 實(shí)驗(yàn)準(zhǔn)備</b></p><p> (1)了解Oracle數(shù)據(jù)庫用戶可以分為6種類型,即數(shù)據(jù)庫管理員、安全官員、網(wǎng)絡(luò)管理員、應(yīng)用程序開發(fā)員、應(yīng)用程序管理員和數(shù)據(jù)庫用戶;
32、</p><p> ?。?)了解角色是對用戶的一種分類管理辦法,不同權(quán)限的用戶可以分為不同的角色;</p><p> ?。?)了解使用CREATE ROLE語句創(chuàng)建角色的方法;</p><p> ?。?)了解使用DROP ROLE語句刪除角色的方法;</p><p> ?。?)了解使用GRANT語句指定用戶角色的方法;</p>
33、<p> ?。?)了解使用CREATE USER語句創(chuàng)建用戶的方法;</p><p> (4)了解使用DROP USER語句刪除用戶的方法。</p><p><b> 實(shí)驗(yàn)內(nèi)容</b></p><p> 本實(shí)驗(yàn)主要包括以下內(nèi)容。</p><p> ?。?)練習(xí)使用SQL語句創(chuàng)建數(shù)據(jù)庫角色;</p&g
34、t;<p> (2)練習(xí)使用SQL語句為數(shù)據(jù)庫角色授予權(quán)限;</p><p> ?。?)練習(xí)使用SQL語句指定用戶角色;</p><p> ?。?)練習(xí)使用SQL語句創(chuàng)建數(shù)據(jù)庫用戶。</p><p> 1.使用SQL語句創(chuàng)建數(shù)據(jù)庫角色</p><p> 參照下面的步驟練習(xí)使用CREATE ROLE語句創(chuàng)建數(shù)據(jù)庫角色。<
35、;/p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p> ?。?)使用CREATE ROLE語句創(chuàng)建角色UserManRole,密碼為myrolepwd,代碼如下:</p><p> CREATE ROLE UserManRole IDENTIFIED BY myrolepwd;</p><p> 2.使用SQL
36、語句為數(shù)據(jù)庫角色授權(quán)</p><p> 參照下面的步驟練習(xí)使用GRANT語句為數(shù)據(jù)庫角色授權(quán)。</p><p> (1)以SYSTEM用戶登錄到SQL*PLUS。</p><p> (2)使用GRANT語句將角色UserManRole授予CONNECT和RESOURCE權(quán)限,代碼如下:</p><p><b> --設(shè)置角色
37、權(quán)限</b></p><p> GRANT CONNECT TO UserManRole ;</p><p> GRANT RESOURCE TO UserManRole ;</p><p> 3.使用SQL語句創(chuàng)建數(shù)據(jù)庫用戶</p><p> 參照下面的步驟練習(xí)使用CREATE USER語句創(chuàng)建數(shù)據(jù)庫用戶。</p&
38、gt;<p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p> (2)使用CREATE USER語句創(chuàng)建用戶UserManAdmin,密碼為UserPwd,代碼如下:</p><p> CREATE USER UserManAdmin IDENTIFIED BY UserPwd</p><p> DEFAULT TABLES
39、PACE USERS</p><p> TEMPORARY TABLESPACE TEMP;</p><p> (3)使用GRANT語句對用戶UserManAdmin授予系統(tǒng)權(quán)限UNLIMITED TABLESPACE,代碼如下:</p><p><b> --設(shè)置系統(tǒng)權(quán)限</b></p><p> GRANT
40、UNLIMITED TABLESPACE TO UserManAdmin ;</p><p> 4.使用SQL語句指定用戶角色</p><p> 參照下面的步驟將用戶UserMan指定為角色UserManRole。</p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p> (2)使用GRANT語句將用戶Us
41、erMan指定為角色UserManRole,代碼如下:</p><p> GRANT UserManRole TO UserManAdmin ;</p><p> 實(shí)驗(yàn)3 表和視圖管理</p><p><b> 目的和要求</b></p><p> ?。?)了解Oracle表和視圖的概念;</p>
42、<p> ?。?)學(xué)習(xí)使用SQL語句創(chuàng)建表;</p><p> ?。?)學(xué)習(xí)使用SELECT語句查詢數(shù)據(jù);</p><p> ?。?)學(xué)習(xí)使用SQL語句創(chuàng)建視圖。</p><p><b> 實(shí)驗(yàn)準(zhǔn)備</b></p><p> ?。?)了解表是數(shù)據(jù)庫中最常用的數(shù)據(jù)存儲(chǔ)單元,它包括所有用戶可以訪問的數(shù)據(jù)。作為關(guān)系
43、型數(shù)據(jù)庫,Oracle表由行和列組成。</p><p> ?。?)視圖是一個(gè)虛擬的表,它在物理上并不存在。視圖可以把表或其它視圖的數(shù)據(jù)按照一定的條件組合起來,所以也可以把它看成是一個(gè)存儲(chǔ)的查詢。視圖并不包含數(shù)據(jù),它只是從基表中讀取數(shù)據(jù)。</p><p> ?。?)了解使用CREATE TABLE語句創(chuàng)建表的方法。</p><p> ?。?)了解使用SELECT語句查
44、詢數(shù)據(jù)的方法。</p><p> ?。?)了解使用SQL語句創(chuàng)建視圖的方法。</p><p><b> 實(shí)驗(yàn)內(nèi)容</b></p><p> 本實(shí)驗(yàn)主要包括以下內(nèi)容。</p><p> ?。?)練習(xí)使用SQL語句創(chuàng)建表;</p><p> ?。?)練習(xí)使用SQL語句向表中插入數(shù)據(jù);</p&
45、gt;<p> ?。?)練習(xí)使用SQL語句修改表中的數(shù)據(jù);</p><p> ?。?)練習(xí)使用SQL語句刪除表中的數(shù)據(jù);</p><p> ?。?)練習(xí)使用SELECT語句查詢數(shù)據(jù);</p><p> ?。?)練習(xí)使用SQL語句創(chuàng)建視圖。</p><p> 1.使用SQL語句創(chuàng)建表</p><p>
46、使用CREATE TABLE語句創(chuàng)建用戶信息表Users,結(jié)構(gòu)如表1所示。</p><p> 表1 表Users的結(jié)構(gòu)</p><p> 參照下面的步驟練習(xí)使用CREATE TABLE語句創(chuàng)建表Users。</p><p> ?。?)以實(shí)驗(yàn)2中創(chuàng)建的UserManAdmin用戶登錄到SQL*PLUS。</p><p> ?。?)使用CR
47、EATE TABLE語句創(chuàng)建表Users,代碼如下:</p><p> CREATE TABLE UserManAdmin.Users</p><p> (UserIdNumber Primary Key,</p><p> UserNameVarchar2(40) NOT NULL,</p><p> UserType
48、Number(1),</p><p> UserPwdVarchar2(40)</p><p><b> );</b></p><p> 使用CREATE TABLE語句創(chuàng)建用戶登錄信息表LoginInfo,結(jié)構(gòu)如表2所示。</p><p> 表2 表LoginInfo的結(jié)構(gòu)</p><
49、p> 參照下面的步驟練習(xí)使用CREATE TABLE語句創(chuàng)建表LoginInfo。</p><p> ?。?)以實(shí)驗(yàn)2中創(chuàng)建的UserManAdmin用戶登錄到SQL*PLUS。</p><p> ?。?)使用CREATE TABLE語句創(chuàng)建表LoginInfo,代碼如下:</p><p> CREATE TABLE UserManAdmin.LoginI
50、nfo</p><p> (UserIdNumber,</p><p> LoginTimeCHAR(20) NOT NULL</p><p><b> );</b></p><p> 2.使用SQL語句向表中插入數(shù)據(jù)</p><p> 使用INSERT語句向表Users中插入
51、用戶數(shù)據(jù),內(nèi)容如表3所示。</p><p> 表3 表Users中的數(shù)據(jù)</p><p> 參照下面的步驟練習(xí)使用INSERT語句向表Users中插入數(shù)據(jù)。</p><p> ?。?)以實(shí)驗(yàn)2中創(chuàng)建的UserManAdmin用戶登錄到SQL*PLUS。</p><p> ?。?)使用INSERT語句向表Users中插入數(shù)據(jù),代碼如下:&
52、lt;/p><p> INSERT INTO UserManAdmin.Users VALUES(1, ‘Admin’, 1, ‘AdminPwd’);</p><p> INSERT INTO UserManAdmin.Users VALUES(2, ‘User’, 2, ‘UserPwd’);</p><p> INSERT INTO UserManAdmin
53、.Users VALUES(3, ‘Zhangsan’, 2, ‘ZhangsanPwd’);</p><p> INSERT INTO UserManAdmin.Users VALUES(4, ‘Lisi’, 2, ‘LisiPwd’);</p><p><b> COMMIT;</b></p><p> 使用INSERT語句向表Log
54、inInfo中插入數(shù)據(jù)。內(nèi)容如表4所示。</p><p> 參照下面的步驟練習(xí)使用INSERT語句向表LoginInfo中插入數(shù)據(jù)。</p><p> ?。?)以實(shí)驗(yàn)2中創(chuàng)建的UserManAdmin用戶登錄到SQL*PLUS。</p><p> ?。?)使用INSERT語句向表LoginInfo中插入數(shù)據(jù),代碼如下:</p><p>
55、INSERT INTO UserManAdmin.LoginInfo VALUES(1, ‘2012-5-15 10:33:02’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(1, ‘2012-5-16 08:34:13’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUE
56、S(1, ‘2012-5-17 09:13:11’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(2, ‘2012-5-15 07:35:02’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(2, ‘2012-5-16 08:11:54’);</p>&
57、lt;p> INSERT INTO UserManAdmin.LoginInfo VALUES(2, ‘2012-5-17 09:13:11’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(3, ‘2012-5-15 08:34:02’);</p><p> INSERT INTO UserManAdmin.Login
58、Info VALUES(3, ‘2012-5-16 09:34:13’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(3, ‘2012-5-17 10:13:09’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(4, ‘2012-5-15 11:34:02’);<
59、;/p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(4, ‘2012-5-16 13:34:13’);</p><p> INSERT INTO UserManAdmin.LoginInfo VALUES(4, ‘2012-5-17 15:13:12’);</p><p><b> COMMIT;<
60、/b></p><p> 表4 表LoginInfo中的數(shù)據(jù)</p><p> 3.使用SQL語句修改表中的數(shù)據(jù)</p><p> 使用UPDATE語句可以修改表Users中的數(shù)據(jù)。參照下面的步驟練習(xí)將表Users中Admin用戶的密碼修改為AdminPassword。</p><p> ?。?)以SYSTEM用戶登錄到SQL*
61、PLUS。</p><p> (2)使用UPDATE語句將表Users中Admin用戶的密碼修改為AdminPassword,代碼如下:</p><p> UPDATE UserManAdmin.Users SET UserPwd=‘AdminPassword’ WHERE UserName=‘Admin’</p><p> ?。?)使用SELECT語句查看用戶
62、Admin的密碼,代碼如下:</p><p> SELECT UserPwd FROM UserManAdmin.Users WHERE UserName=‘Admin’</p><p><b> 修改表</b></p><p> ALTER TABLE USERMANADMIN. LOGININFO MODIFY(LOGINTIME D
63、ATE)</p><p> 4.使用SQL語句刪除表中的數(shù)據(jù)</p><p> 使用DELETE語句可以刪除表Users中的數(shù)據(jù)。參照下面的步驟練習(xí)將表Users中Zhansan用戶的記錄刪除。</p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p> ?。?)使用DELETE語句將表Users中Zhangs
64、an用戶的記錄刪除,代碼如下:</p><p> DELETE FROM UserManAdmin.Users WHERE UserName=‘Zhangsan’</p><p> ?。?)使用SELECT語句查看表Users中的數(shù)據(jù),確認(rèn)用戶Zhangsan的記錄是否被刪除,代碼如下:</p><p> SELECT * FROM UserManAdmin.U
65、sers</p><p> 5.使用SELECT語句查詢數(shù)據(jù)</p><p> 使用SELECT語句查詢數(shù)據(jù)庫中的用戶數(shù)據(jù),分別按以下方式查詢數(shù)據(jù)庫。</p><p> (1)查詢表Users中的所有數(shù)據(jù)。</p><p> 以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SE
66、LECT * FROM UserManAdmin.Users</p><p> *代表UserManAdmin.Users中的所有字段。</p><p> ?。?)在返回結(jié)果中使用自定義標(biāo)題。</p><p> 以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SELECT UserName AS 用戶名,
67、 UserPwd AS 密碼 FROM UserManAdmin.Users</p><p> ?。?)設(shè)置查詢條件。</p><p> 查詢所有普通用戶的信息。以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SELECT * FROM UserManAdmin.Users WHERE UserType=2</p>
68、<p> 查詢用戶Admin的密碼信息。以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SELECT UserPwd FROM UserManAdmin.Users WHERE UserName=‘Admin’</p><p> ?。?)對查詢結(jié)果進(jìn)行排序。</p><p> 查詢所有普通用戶的信息,并按用戶名的降序排
69、列結(jié)果集。以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SELECT * FROM UserManAdmin.Users ORDER BY UserName DESC</p><p> ?。?)對記錄進(jìn)行統(tǒng)計(jì)。</p><p> 統(tǒng)計(jì)表Users中共有多少個(gè)用戶記錄。以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:&
70、lt;/p><p> SELECT COUNT(*) FROM UserManAdmin.Users</p><p> ?。?)實(shí)現(xiàn)連接查詢。</p><p> 查看每個(gè)用戶的登錄記錄。以SYSTEM用戶登錄到SQL*PLUS,然后執(zhí)行如下代碼:</p><p> SELECT u.UserName, 1.LoginTime FROM Us
71、ers u INNER JOIN LoginInfo 1</p><p> ON u.UserId=1.UserID</p><p> 在上面的SELECT語句中涉及兩個(gè)表:表Users和表LoginInfo。在FROM子句中,為每個(gè)表指定一個(gè)別名,表Users的別名為u,表LoginInfo的別名為1。</p><p> 6.使用SQL語句創(chuàng)建視圖</
72、p><p> 使用CREATE VIEW語句創(chuàng)建用戶登錄信息表UserLogin,代碼如下:</p><p> CREATE VIEW UserLogin</p><p><b> AS</b></p><p> SELECT u.UserName, l.LoginTime FROM UserManAdmin.Use
73、rs u INNER JOIN UserManAdmin.LoginInfo l</p><p> ON u.UserId=l.UserID;</p><p> SELECT * FROM UserLogin;</p><p> 實(shí)驗(yàn)4 索引和序列管理</p><p><b> 目的和要求</b></p&
74、gt;<p> ?。?)了解索引的概念和作用;</p><p> ?。?)了解序列的概念和作用;</p><p> (3)學(xué)習(xí)使用SQL語句創(chuàng)建索引;</p><p> (4)學(xué)習(xí)使用SQL語句創(chuàng)建序列。</p><p><b> 實(shí)驗(yàn)準(zhǔn)備</b></p><p> (1)了
75、解索引是對數(shù)據(jù)庫表中一個(gè)或多個(gè)列的值進(jìn)行排序的結(jié)構(gòu)。可以利用索引快速訪問數(shù)據(jù)庫表中的特定信息。</p><p> (2)了解序列號是一個(gè)Oracle整數(shù),最多可有38個(gè)數(shù)字。序列的作用是自動(dòng)生成整型數(shù)值,作為表中標(biāo)識(shí)字段的值。有許多表在創(chuàng)建時(shí)定義了一個(gè)標(biāo)識(shí)字段,此字段的值需要由系統(tǒng)自動(dòng)生成,每當(dāng)插入一條新記錄時(shí),此字段的值自動(dòng)加1。在Oracle中,這個(gè)功能由序列來實(shí)現(xiàn)。</p><p>
76、; ?。?)了解使用CREATE INDEX語句創(chuàng)建索引的方法。</p><p> ?。?)了解使用CREATE SEQUENCE語句創(chuàng)建序列的方法。</p><p><b> 實(shí)驗(yàn)內(nèi)容</b></p><p> 本實(shí)驗(yàn)主要包括以下內(nèi)容。</p><p> ?。?)練習(xí)使用SQL語句創(chuàng)建索引;</p>
77、<p> ?。?)練習(xí)使用SQL語句創(chuàng)建序列;</p><p> 1.使用SQL語句創(chuàng)建索引</p><p> 使用CREATE INDEX語句在Users表的UserName字段上創(chuàng)建索引。代碼如下:</p><p> CREATE INDEX index_username ON UserManAdmin.Users (UserName)</
78、p><p> TABLESPACE Users;</p><p> 2.在創(chuàng)建表的同時(shí)創(chuàng)建索引</p><p> 在使用CREATE TABLE語句創(chuàng)建表的同時(shí),可以為指定字段創(chuàng)建索引。創(chuàng)建表Employees,在字段EmpName上創(chuàng)建索引。表Employees的結(jié)構(gòu)如表5所示。</p><p> 表5 表Employees的結(jié)構(gòu)&l
79、t;/p><p><b> 代碼如下:</b></p><p> CREATE TABLE UserManAdmin.Employees</p><p> (EmpIdNumber,</p><p> EmpNameVARCHAR2(50) UNIQUE,</p><p> Sex
80、CHAR(2),</p><p> UserIdNumber</p><p><b> );</b></p><p> 3.使用SQL語句創(chuàng)建序列</p><p> 使用CREATE SEQUENCE語句創(chuàng)建序列。序列的最小值為1,并且沒有最大值限制。序列的初始值為1,序列間隔為1。代碼如下:<
81、/p><p> CREATE SEQUENCE EMP_S</p><p> MINVALUE 1</p><p> NOMAXVALUE</p><p> START WITH 1</p><p> INCREMENT BY 1</p><p><b> NOCYCLE<
82、;/b></p><p><b> CACHE 20;</b></p><p> 2.在插入數(shù)據(jù)時(shí)使用序列</p><p> 在使用INSERT語句向表Employees中插入數(shù)據(jù)時(shí),可以使用序列EMP_S生成字段EmpId的值,代碼如下:</p><p> INSERT INTO UserManAdmin
83、.Employees (EmpId, EmpName) VALUES(EMP_S.NEXTVAL, ‘Employee1’);</p><p> INSERT INTO UserManAdmin.Employees (EmpId, EmpName) VALUES(EMP_S.NEXTVAL, ‘Employee2’);</p><p> INSERT INTO UserManAdm
84、in.Employees (EmpId, EmpName) VALUES(EMP_S.NEXTVAL, ‘Employee3’);</p><p><b> COMMIT;</b></p><p> SELECT * FROM UserManAdmin.Employees</p><p> 實(shí)驗(yàn)5 PL/SQL編程</p>
85、<p><b> 目的和要求</b></p><p> ?。?)了解PL/SQL語言的結(jié)構(gòu);</p><p> ?。?)了解PL/SQL變量和常量的聲明和使用方法;</p><p> ?。?)學(xué)習(xí)條件語句的使用方法;</p><p> ?。?)學(xué)習(xí)分支語句的使用方法;</p><p&g
86、t; (5)學(xué)習(xí)循環(huán)語句的使用方法;</p><p> ?。?)學(xué)習(xí)使用Oracle系統(tǒng)函數(shù)。</p><p><b> 實(shí)驗(yàn)準(zhǔn)備</b></p><p> 首先要了解PL/SQL語言是結(jié)構(gòu)化程序設(shè)計(jì)語言。塊(Block)是PL/SQL程序中最基本的結(jié)構(gòu),所有PL/SQL程序都是由塊組成的。PL/SQL的塊由變量聲明、程序代碼和異常處理代
87、碼3部分組成。在PL/SQL中,常量和變量在使用前必須聲明,可以使用DECLARE對變量進(jìn)行聲明。</p><p><b> 實(shí)驗(yàn)內(nèi)容</b></p><p> 本實(shí)驗(yàn)主要包括以下內(nèi)容。</p><p> (1)練習(xí)條件語句的使用方法;</p><p> ?。?)練習(xí)分支語句的使用方法;</p>&l
88、t;p> ?。?)練習(xí)循環(huán)語句的使用方法;</p><p> ?。?)練習(xí)使用Oracle系統(tǒng)函數(shù)。</p><p><b> 1.使用條件語句</b></p><p> 參照下面的步驟練習(xí)使用條件語句。</p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p&g
89、t; ?。?)執(zhí)行如下程序,觀察結(jié)果。</p><p> SET ServerOutput ON;</p><p><b> DECLARE</b></p><p> Num INTEGER := -11;</p><p><b> BEGIN</b></p><p>
90、; IF Num < 0 THEN</p><p> dbms_output.put_line( ‘負(fù)數(shù)’ );</p><p> ELSIF Num > 0 THEN</p><p> dbms_output.put_line( ‘正數(shù)’ );</p><p><b> ELSE</b></
91、p><p> dbms_output.put_line( ‘0’ );</p><p><b> END IF;</b></p><p><b> END;</b></p><p><b> 2.使用分支語句</b></p><p> 參照下面的步
92、驟練習(xí)使用分支語句。</p><p> (1)以SYSTEM用戶登錄到SQL*PLUS。</p><p> (2)執(zhí)行如下程序,觀察結(jié)果。</p><p> SET ServerOutput ON;</p><p><b> DECLARE</b></p><p> varDAY INT
93、EGER := 3;</p><p> Result VARCHAR(20);</p><p><b> BEGIN</b></p><p> Result := CASE varDAY</p><p> WHEN 1 THEN ‘星期一’</p><p> WHEN 2 THEN ‘星
94、期二’</p><p> WHEN 3 THEN ‘星期三’</p><p> WHEN 4 THEN ‘星期四’</p><p> WHEN 5 THEN ‘星期五’</p><p> WHEN 6 THEN ‘星期六’ </p><p> WHEN 7 THEN ‘星期日’</p><
95、p> ELSE ‘?dāng)?shù)據(jù)越界’</p><p><b> END;</b></p><p> dbms_output.put_line( Result );</p><p><b> END;</b></p><p><b> 3.使用循環(huán)語句</b></p
96、><p> LOOP…EXIT…END語句:此語句的功能是重復(fù)執(zhí)行循環(huán)體中的程序塊,直到執(zhí)行EXIT語句,退出循環(huán)。</p><p> LOOP…EXIT WHEN…END:此語句的功能是重復(fù)執(zhí)行循環(huán)體中的程序塊,直到滿足EXIT WHEN后面的判斷語句時(shí),退出循環(huán)。</p><p> WHILE…LOOP…END LOOP語句:此語句的功能是當(dāng)WHILE后面的條
97、件語句成立時(shí),重復(fù)執(zhí)行循環(huán)體中的程序塊。</p><p> 參照下面的步驟練習(xí)使用循環(huán)語句。</p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p> ?。?)執(zhí)行如下程序,觀察結(jié)果。</p><p><b> 程序一:</b></p><p> SET Ser
98、verOutput ON;</p><p><b> DECLARE</b></p><p> v_Num INTEGER := 1;</p><p> v_Sum INTEGER := 0;</p><p><b> BEGIN</b></p><p><b&
99、gt; LOOP</b></p><p> v_Sum := v_Sum + v_Num;</p><p> dbms_output.put_line( v_Num );</p><p> IF v_Num = 3 THEN</p><p><b> EXIT;</b></p><
100、;p><b> END IF;</b></p><p> dbms_output.put_line( ‘+’ );</p><p> v_Num := v_Num + 1;</p><p><b> END LOOP;</b></p><p> dbms_output.put_lin
101、e( ‘=’ );</p><p> dbms_output.put_line( v_Sum );</p><p><b> END;</b></p><p><b> 程序二:</b></p><p> SET ServerOutput ON;</p><p>&l
102、t;b> DECLARE</b></p><p> v_Num INTEGER := 1;</p><p> v_Sum INTEGER := 0;</p><p><b> BEGIN</b></p><p><b> LOOP</b></p><p
103、> v_Sum := v_Sum + v_Num;</p><p> dbms_output.put_line( v_Num );</p><p> EXIT WHEN v_Num = 3;</p><p> dbms_output.put_line( ‘+’ );</p><p> v_Num := v_Num + 1;&l
104、t;/p><p><b> END LOOP;</b></p><p> dbms_output.put_line( ‘=’ );</p><p> dbms_output.put_line( v_Sum );</p><p><b> END;</b></p><p>
105、<b> 程序三: </b></p><p> SET ServerOutput ON;</p><p><b> DECLARE</b></p><p> v_Num INTEGER := 1;</p><p> v_Sum INTEGER := 0;</p><p&
106、gt;<b> BEGIN</b></p><p> WHILE v_Num <=3</p><p><b> LOOP</b></p><p> v_Sum := v_Sum + v_Num;</p><p> dbms_output.put_line( v_Num );</
107、p><p> IF v_Num < 3 THEN</p><p> dbms_output.put_line( ‘+’ );</p><p><b> END IF;</b></p><p> v_Num := v_Num + 1;</p><p><b> END LOOP
108、;</b></p><p> dbms_output.put_line( ‘=’ );</p><p> dbms_output.put_line( v_Sum );</p><p><b> END;</b></p><p><b> 4.使用系統(tǒng)函數(shù)</b></p>
109、;<p><b> ?。?)數(shù)值型函數(shù)</b></p><p> ·ABS:返回給定數(shù)字表達(dá)式的絕對值。</p><p> ·CEIL:返回大于或等于所給數(shù)字表達(dá)式的最小整數(shù)。</p><p> ·FLOOR:返回小于或等于所給數(shù)字表達(dá)式的最大整數(shù)。</p><p>
110、·POWER:返回給定表達(dá)式指定次方的值。</p><p> ·ROUND:返回?cái)?shù)字表達(dá)式并四舍五入為指定的長度或精度。</p><p><b> ?。?)字符型函數(shù)</b></p><p> ·ASCII:返回字符表達(dá)式最左端字符的ASCII代碼值。</p><p> ·L
111、ENGTH:返回給定字符串表達(dá)式的字符(而不是字節(jié))個(gè)數(shù),其中不包含尾隨空格。</p><p> ·UPPER:返回將小寫字符數(shù)據(jù)轉(zhuǎn)換為大寫的字符表達(dá)式。</p><p><b> ?。?)日期型函數(shù)</b></p><p> ·SYSDATE:返回當(dāng)前日期和時(shí)間。</p><p> ·
112、;TO_CHAR:轉(zhuǎn)換日期為字符串。</p><p> ·LAST_DAY:返回指定日期所在月份的最后一天的日期。這個(gè)函數(shù)可以被用來確定當(dāng)前月中還剩下多少天。</p><p> ·MONTHS_BETWEEN:返回兩個(gè)日期之間月的數(shù)目。</p><p><b> ?。?)統(tǒng)計(jì)函數(shù)</b></p><p
113、> ·COUNT:返回組中項(xiàng)目的數(shù)量。</p><p> ·MAX:返回表達(dá)式的最大值。</p><p> ·MIN:返回表達(dá)式的最小值。</p><p> 參照下面的步驟練習(xí)使用系統(tǒng)函數(shù)。</p><p> ?。?)以SYSTEM用戶登錄到SQL*PLUS。</p><p>
114、; ?。?)執(zhí)行如下程序,觀察結(jié)果。</p><p><b> 程序一:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( ABS(-4) );</p>
115、<p><b> END;</b></p><p><b> 程序二:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( CEIL
116、(116.24) );</p><p> dbms_output.put_line( CEIL(-112.75) );</p><p> dbms_output.put_line( CEIL(0) );</p><p><b> END;</b></p><p><b> 程序三:</b>&
117、lt;/p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( FLOOR(116.24) );</p><p> dbms_output.put_line( FLOOR(-112.75) );</p&g
118、t;<p> dbms_output.put_line( FLOOR(0) );</p><p><b> END;</b></p><p><b> 程序四:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN
119、</b></p><p> dbms_output.put_line( POWER(15, 4) );</p><p><b> END;</b></p><p><b> 程序五:</b></p><p> SET ServerOutput ON;</p><
120、;p><b> BEGIN</b></p><p> dbms_output.put_line( ROUND(123.456, 2) );</p><p> dbms_output.put_line( ROUND(123.456, 1) );</p><p> dbms_output.put_line( ROUND(123.456
121、, 0) );</p><p> dbms_output.put_line( ROUND(123.456, -1) );</p><p> dbms_output.put_line( ROUND(123.456, -2) );</p><p> dbms_output.put_line( ROUND(123.456, -3) );</p><
122、;p><b> END;</b></p><p><b> 程序六:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( ASCII(‘A
123、BC’) );</p><p><b> END;</b></p><p><b> 程序七:</b></p><p> SELECT UserName, LENGTH(UserName) FROM UserManAdmin.Users</p><p> WHERE UserType = 1
124、;</p><p><b> 程序八:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( UPPER(‘a(chǎn)bc’) );</p><p>&l
125、t;b> END;</b></p><p><b> 程序九:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line( SYSDATE );</p
126、><p><b> END;</b></p><p><b> 程序十:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p> dbms_output.put_line(
127、 TO_CHAR(SYSDATE) );</p><p><b> END;</b></p><p><b> 程序十一:</b></p><p> SET ServerOutput ON;</p><p><b> BEGIN</b></p><p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- oracle課程設(shè)計(jì)說明書--圖書管理系統(tǒng)
- 《圖書管理系統(tǒng)》課程設(shè)計(jì)
- 圖書管理系統(tǒng)課程設(shè)計(jì)
- 圖書管理系統(tǒng)課程設(shè)計(jì)
- 圖書管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)---圖書管理系統(tǒng)
- 課程設(shè)計(jì)---課程設(shè)計(jì)圖書管理系統(tǒng)
- c課程設(shè)計(jì)---圖書管理系統(tǒng)課程設(shè)計(jì)
- 圖書管理系統(tǒng)課程設(shè)計(jì) (2)
- java課程設(shè)計(jì)--圖書管理系統(tǒng)
- sql課程設(shè)計(jì)---圖書管理系統(tǒng)
- sql圖書管理系統(tǒng)課程設(shè)計(jì)
- vb圖書管理系統(tǒng)課程設(shè)計(jì)
- 圖書管理系統(tǒng)—課程設(shè)計(jì)報(bào)告
- vf課程設(shè)計(jì)--圖書管理系統(tǒng)
- 圖書管理系統(tǒng)-課程設(shè)計(jì)報(bào)告
- 圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- jsp課程設(shè)計(jì)--圖書管理系統(tǒng)
- 圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告
評論
0/150
提交評論