




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第6章 數(shù)據(jù)庫的創(chuàng)建與存取,數(shù)據(jù)庫是存儲在計算機內的、有組織的可以共享的數(shù)據(jù)的集合。 能夠提供數(shù)據(jù)的存儲和數(shù)據(jù)的操作的軟件稱為數(shù)據(jù)庫管理系統(tǒng)(Database Management System ,DBMS), 如Microsoft Access、Foxpro、SQL Server、Oracle、DBII 等都是數(shù)據(jù)庫管理系統(tǒng)。,7.1 SQL Server 2000的安裝,SQL Server 2000數(shù)據(jù)庫簡介: SQL Server 2000 是Microsoft公司推出的基于Client/Server(客戶機/服務器)模式的新一代大型關系數(shù)據(jù)庫管理系統(tǒng)。它功能強大、操作簡便,廣泛應用于
2、數(shù)據(jù)庫后臺系統(tǒng)。 與ACCESS數(shù)據(jù)庫相比,SQL Server 2000數(shù)據(jù)庫的規(guī)模更大,它可以將用戶的數(shù)據(jù)存儲在多個服務器上,并利用復制技術跨越多個服務器進行分布式處理,實現(xiàn)真正意義上的分布式數(shù)據(jù)庫。SQL Server 2000的安全性更好,它可以對登錄用戶的身份進行認證,并對用戶的操作權限進行控制。SQL Server 2000的故障恢復功能更強,它提供了強大的數(shù)據(jù)庫備份和恢復功能,當故障發(fā)生時,能根據(jù)備份和日志迅速恢復到某一正確時刻。同時,SQL Server 2000還提供了更好的并發(fā)控制功能以及大量的監(jiān)控和管理數(shù)據(jù)庫系統(tǒng)的工具。,7.1 安裝SQL Server 2000數(shù)據(jù)庫,
3、1.將SQL Server 2000安裝盤放入光驅,一般該光盤會自動運行。如果不自動運行,請雙擊光盤根目錄下的autorun.exe程序,出現(xiàn)安裝啟動界面,如圖所示。,SQL Server 2000安裝啟動界面,選擇【安裝SQL Server 2000組件】,7.1 安裝SQL Server 2000數(shù)據(jù)庫,SQL Server 2000安裝界面,選擇【安裝數(shù)據(jù)庫服務器】,7.1 安裝SQL Server 2000數(shù)據(jù)庫,SQL Server 2000安裝向導界面,單擊【下一步】,7.1 安裝SQL Server 2000數(shù)據(jù)庫,選擇【本地計算機】選項,單擊【下一步】,【計算機名】對話框,7.
4、1 安裝SQL Server 2000數(shù)據(jù)庫,【安裝選擇】對話框,選擇【服務器和客戶端工具】選項,單擊【下一步】按鈕,選擇【創(chuàng)建新的SQL Server實例,或安裝客戶端工具】選項,7.1 安裝SQL Server 2000數(shù)據(jù)庫,選擇【服務器和客戶端工具】選項,單擊【下一步】按鈕,【安裝定義】對話框,7.1 安裝SQL Server 2000數(shù)據(jù)庫,【實例名】對話框,選擇默認的實例名,也可以自定義創(chuàng)建一個實例名。單擊【下一步】,7.1 安裝SQL Server 2000數(shù)據(jù)庫,【安裝類型】對話框,選擇文件存放位置,單擊【下一步】按鈕,7.1 安裝SQL Server 2000數(shù)據(jù)庫,【服務帳
5、戶】對話框,選擇【使用本地系統(tǒng)帳戶】。單擊【下一步】按鈕,7.1安裝SQL Server 2000數(shù)據(jù)庫,【身份驗證模式】對話框,(1) 【W(wǎng)indows身份驗證模式】。對于使用Windows 2000 或Windows NT上的登錄帳戶與SQL Server 2000進行連接的用戶,應選用此模式。 (2) 【混合模式(Windows身份驗證和SQL Server身份驗證)】。如果用戶可能使用其它操作系統(tǒng)訪問SQL Server 2000數(shù)據(jù)庫,例如:UNIX用戶,Windows 98的用戶等,則應選擇此混合模式。 建議選用混合模式。然后設置sa用戶(sa是SQL Server的系統(tǒng)管理員,擁
6、有系統(tǒng)的所有權限)密碼。,7.1 安裝SQL Server 2000數(shù)據(jù)庫,【開始復制文件】對話框,單擊【下一步】即可完成安裝。,7.2 在SQL Server2000中建立數(shù)據(jù)庫,7.1.1數(shù)據(jù)庫結構 一、.邏輯結構。也就是我們在數(shù)據(jù)庫管理程序中看到的結構,是一些二維表格,視圖等其他對象。 數(shù)據(jù)庫是由許多邏輯結構組成,在使用數(shù)據(jù)庫時,其實主要是使用一些邏輯組件,如表、視圖、程序與用戶。 表是數(shù)據(jù)庫中最基礎的組件,用來表示數(shù)據(jù)庫中存取的數(shù)據(jù)。,7.2 在SQL Server2000中建立數(shù)據(jù)庫,在SQL Server中,數(shù)據(jù)庫對象有下列8種類:,表 索引 視圖 用戶定義的數(shù)據(jù)類型 默認 約束
7、觸發(fā)器 存儲過程,7.2 在SQL Server2000中建立數(shù)據(jù)庫,二、數(shù)據(jù)庫的物理結構。 在SQL Server中將數(shù)據(jù)庫的物理結構分為數(shù)據(jù)文件與事務日志文件兩種類型,其中數(shù)據(jù)文件是用來存儲數(shù)據(jù)庫的數(shù)據(jù)內容,而事物日志文件則是記錄事物內容。,7.2 在SQL Server2000中建立數(shù)據(jù)庫,(1)主數(shù)據(jù)庫文件。每個數(shù)據(jù)庫都一定會有一個而且僅有一個主數(shù)據(jù)庫文件,這個數(shù)據(jù)庫文件中記錄了數(shù)據(jù)庫的起始信息,數(shù)據(jù)文件成員以及數(shù)據(jù)庫的對象成員,如表、視圖、規(guī)則等。 SQL Server數(shù)據(jù)文件的擴展名為.mdf,默認數(shù)據(jù)庫主數(shù)據(jù)的文件名為:數(shù)據(jù)庫名.mdf。 (2)次數(shù)據(jù)文件。擴展名為.ndf。 (
8、3)事務日志文件。擴展名為.ldf。記錄數(shù)據(jù)庫的事物活動記錄,收集該數(shù)據(jù)庫的完整事務過程,7.2.1 SQL Server 2000服務器管理器,SQL Server 2000的服務器管理器是用來啟動服務、暫停和停止正在運行的服務,一共有以下三種服務: 1.Distributed Transaction Coordinator:主要用于控制多個服務器之間分布的事務。 2.SQL Server:該服務是SQL Server的核心,在進行建數(shù)據(jù)庫、表、查詢以及訪問數(shù)據(jù)、分配系統(tǒng)資源等操作時之前必須啟動該服務。 3.SQL Server Agent:該服務用于控制自動化任務,例如備份數(shù)據(jù)庫、作業(yè)管理
9、等。,7.2.1 SQL Server 2000服務器管理器,啟動服務的步驟如下:從Windows桌面上選擇【開始】、【程序】、【Microsoft SQL Server】、【服務器管理器】打開服務器管理器界面。如圖所示。在服務器管理器窗口中,選擇服務器及服務后,單擊 啟動SQL Server服務.,7.2.2創(chuàng)建SQL Server 2000數(shù)據(jù)庫,1.創(chuàng)建數(shù)據(jù)庫。啟動【企業(yè)管理器】,如圖所示。在服務器目錄樹中展開服務器實例名稱前面的加號,選擇【數(shù)據(jù)庫】,單擊右鍵,在彈出的快捷菜單中選擇【新建數(shù)據(jù)庫】,出現(xiàn)如圖6-21所示【數(shù)據(jù)庫屬性】對話框 .,選擇【數(shù)據(jù)文件】選項卡,為該數(shù)據(jù)庫的數(shù)據(jù)文件
10、定義大小和存儲位置,選擇【事務日志】選項卡,為該數(shù)據(jù)庫的事務日志文件定義大小和存儲位置。,輸入要創(chuàng)建的數(shù)據(jù)庫名稱,7.2.2創(chuàng)建SQL Server 2000數(shù)據(jù)庫,2創(chuàng)建表結構 選擇新建的mysite數(shù)據(jù)庫,單擊右鍵,在彈出的快捷菜單中選擇【新建表】,如圖所示。 在彈出的【數(shù)據(jù)表設計器】窗口中,定義表的結構,包括列名、數(shù)據(jù)類型、長度及其它屬性。,3輸入、編輯數(shù)據(jù) 選擇用戶新創(chuàng)建的表,單擊右鍵,在彈出的快捷菜單中選擇【打開表】,【返回所有行】,在出現(xiàn)的數(shù)據(jù)表中用戶可以進行數(shù)據(jù)的輸入或瀏覽、修改、刪除等操作。,7.3 SQL語言簡介,SQL(Structure Query Language)是一
11、種適用于關系數(shù)據(jù)庫的結構查詢語言,它功能強大,簡單易學,適用范圍廣,可移植性強,當前較流行的關系型數(shù)據(jù)庫如Oracle、Sybase、dBase、Visual FoxPro和DBII、SQL Server、ACCESS等數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言。 SQL語言是學習關系型數(shù)據(jù)庫管理系統(tǒng)的重要基礎。 SQL語言最早是在1974年由美國的IBM公司提出的,隨后不斷發(fā)展,不斷完善。1986年10月美國國家標準學會(ANSI)批準將SQL語言作為美國數(shù)據(jù)庫的語言標準,1987年國際標準化組織(ISO)也通過了這一標準。,7.3 常用的SQL命令,SQL語言包含9個命令動詞,分別用于數(shù)據(jù)定義、數(shù)據(jù)查
12、詢、數(shù)據(jù)操縱及數(shù)據(jù)控制。,7.3.1 SQL的數(shù)據(jù)定義,SQL的數(shù)據(jù)定義語言具有創(chuàng)建表(Table)結構,修改表結構,刪除表及建立與刪除索引等功能,見下表。 SQL的數(shù)據(jù)定義語言,1.創(chuàng)建表,語法格式如下: CREATE TABLE ( 完整性約束條件, 完整性約束條件 ); 主要說明: (1)表名:所創(chuàng)建表的名稱。 (2)表中定義字段的每一語句之間用逗號(,)隔開,最后一個語句不用逗號。,SQL語言中的數(shù)據(jù)類型,創(chuàng)建表例題,CREATE TABLE 用戶注冊數(shù)據(jù)(用戶名 CHAR(6) PRIMARY KEY, 性別 LOGICAL, 密碼 CHAR(6) NOT NULLl, 出生日期 D
13、ATE, 聯(lián)系電話 CHAR(15) NOT NULL, 職業(yè) CHAR(10), 月收入 INTEGER, 簡歷 MEMO, 照片 OLEObject);,PRIMARY KEY,定義字段為主鍵。 NOT NULL,為該字段的完整性約束,即該字段不允許輸入空值。,例題1:創(chuàng)建一個名為“用戶注冊數(shù)據(jù)”的表,包含字段用戶名、性別、密碼、出生日期、聯(lián)系電話,職業(yè)、月收入、簡歷、照片。,2.修改表結構,語法格式如下: ALTER TABLE ADD 完整性約束DROP 主要說明: (1)ADD子句用于添加新字段或新的完整性約束條件。 (2)DROP子句用于刪除已存在的完整性約束條件。,例題2:給例題
14、1所創(chuàng)建的“用戶注冊數(shù)據(jù)”表添加一個名為“工作單位”的新字段。并添加令該字段不能填寫空記錄的完整性約束條件。 ALTER TABLE 用戶注冊數(shù)據(jù) ADD 工作單位 CHAR(20) NOT NULL;,3.刪除表,語法格式如下: DROP TABLE 主要說明: (1):欲刪除的表的名稱。 (2)DROP命令將刪除表的結構和記錄,并且不可恢復。 例題3:刪除例題1所創(chuàng)建的“用戶注冊數(shù)據(jù)”表。 DROP TABLE 用戶注冊數(shù)據(jù),7.3.2 SQL的數(shù)據(jù)查詢,語法格式如下: SELECT ALL|DISTINCT , FROM , WHERE GROUP BY HAVING ORDER BY
15、ASC|DESC;,主要說明: ALL:表示輸出所有符合條件的記錄。默認值為ALL。 DISTINCT:表示輸出時去掉重復的記錄。 目標字段表達式不僅可以是字段,也可以是算術表達式、函數(shù)等。,SELECT語句的含義,根據(jù)WHERE子句的條件表達式,從FROM子句指定的表中,篩選符合條件記錄,按SELECT子句中列出的目標字段表達式,輸出結果。如果有GROUP BY子句,則按將記錄進行分組,字段值相同的為一組。此時SELECT子句中的目標字段表達式經(jīng)常使用集函數(shù)。如果GROUP BY子句帶HAVING子句,則將對組進行篩選,輸出符合的組。如果有ORDER BY子句,輸出結果還要按的值排序。,常用
16、的集函數(shù),WHERE子句常用的查詢條件,設“用戶注冊數(shù)據(jù)”表有如下記錄:,查詢語句應用示例,1.選取若干列輸出 例題7:從“用戶注冊數(shù)據(jù)”表中輸出所有用戶的用戶名、性別、職業(yè)和聯(lián)系電話。 SELECT 用戶名, IIF(性別, ”男”, ”女”) AS SEX, 職業(yè), 聯(lián)系電話 FROM 用戶注冊數(shù)據(jù); 2.輸出表的所有字段 SELECT * FROM 用戶注冊數(shù)據(jù); *代表該數(shù)據(jù)表中的所有字段。 3.去掉重復值 在SELECT語句中用DISTINCT保留字實現(xiàn)從查詢結果中去掉相同的記錄。 例題8:從“用戶注冊數(shù)據(jù)”表中輸出用戶職業(yè)的種類。 SELECT DISTINCT 職業(yè) FROM 用
17、戶注冊數(shù)據(jù);,4.輸出經(jīng)過計算的列 例題9:從“用戶注冊數(shù)據(jù)”表中計算輸出每個用戶的年齡。 由于“用戶注冊數(shù)據(jù)”中沒有年齡字段,所以只能通過“出生日期”字段來計算用戶的年齡。 SELECT 用戶名,YEAR(DATE()-YEAR(出生日期) AS 年齡 FROM 用戶注冊數(shù)據(jù); 5.比較條件 例題10:檢索所有的職業(yè)為教師的記錄。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE 職業(yè)=“教師”;,查詢語句應用示例,6.確定范圍 例題11:檢索1981年出生的人員記錄。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE 出生日期 BETWEEN #78/01/01# AND #78/
18、12/31#; 7.確定集合 例題12:檢索所有的職業(yè)為教師、醫(yī)生、律師的記錄。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE 職業(yè) IN(“教師”,“醫(yī)生”,“律師”); 8.字符匹配 例題13:檢索姓“李”的用戶信息。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE 用戶名 LIKE “李*”;,查詢語句應用示例,9.空值 例題14:檢索有照片的記錄。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE 照片 IS NOT NULL; 10.多重條件 例題15:檢索所有月收入3000元以上的教師信息。 SELECT * FROM 用戶注冊數(shù)據(jù) WHERE月收入=3000 A
19、ND 職業(yè)=“教師”;,查詢語句應用示例,11.利用集函數(shù)分組統(tǒng)計 例題16:計算各種職業(yè)的平均月收入。 SELECT 職業(yè),AVG(月收入)AS 平均月收入 FROM 用戶注冊數(shù)據(jù) GROUP BY 職業(yè);,查詢語句應用示例,13.利用ORDER BY子句對檢索結果排序 例題20:輸出所有的男士的月收入,輸出結果按降序排列。 SELECT 用戶名,IIF(性別,男,女) AS SEX,月收入 FROM 用戶注冊數(shù)據(jù) WHERE 性別 ORDER BY 月收入 DESC;,12.利用HAVING子句檢索合適的組 例題19:統(tǒng)計哪些職業(yè)的用戶數(shù)在2人以上。 SELECT COUNT(*),職業(yè)
20、FROM 用戶注冊數(shù)據(jù) GROUP BY 職業(yè) HAVING COUNT(*)1;,查詢語句應用示例 -多表查詢,“用戶購物信息”表部分記錄如下:,“用戶進入網(wǎng)站記錄”表部分記錄如下:,“產品庫存”表部分記錄如下:,設系統(tǒng)中還有“用戶進入網(wǎng)站記錄”、“用戶購物信息”、“產品庫存”三張數(shù)據(jù)表,分別用于記錄用戶進入網(wǎng)站的起止時間、用戶購買產品的記錄、產品庫存等數(shù)據(jù)。,以上介紹的都是單表查詢,在實際查詢中經(jīng)常涉及到多表查詢。如果查詢涉及到兩張以上的表,需先根據(jù)關聯(lián)關鍵字對數(shù)據(jù)表進行關聯(lián)后再查詢,例如:設數(shù)據(jù)表A和數(shù)據(jù)表B根據(jù)字段Z進行關聯(lián),關聯(lián)條件應寫為:AZ=BZ。在SELECT語句中,數(shù)據(jù)表的關
21、聯(lián)條件寫在WHERE子句后。,例題21:檢索用戶“錢明”所購買產品的名稱、數(shù)量和單價。 SELECT 用戶購物信息.用戶名, 用戶購物信息.產品編號, 產品庫存.產品名稱, 用戶購物信息.數(shù)量, 產品庫存.售價, 用戶購物信息.是否發(fā)貨 FROM 產品庫存,用戶購物信息 WHERE 產品庫存.產品編號 = 用戶購物信息.產品編號 AND 用戶購物信息.用戶名=“錢明”; 例題22:計算每位用戶所購買產品的總金額,并按總金額的降序輸出。 SELECT 用戶購物信息.用戶名, Sum(數(shù)量*售價) AS 總金額 FROM 用戶購物信息,產品庫存 where 用戶購物信息.產品編號 = 產品庫存.產品編號 GROUP BY 用戶購物信息.用戶名; ORDER BY Sum(數(shù)量*售價) DESC;,查詢語句應用示例,7.3 數(shù)據(jù)庫操作語言,1. 插入數(shù)據(jù) 插入數(shù)據(jù)的語法格式如下: insert into (,) values (,) 功能:insert語句用于將新記錄插入指定表中。 說明: (1) 在INTO中沒有出現(xiàn)的字段,新記錄在這些字段上將取空值。 (2) 在表定義時說明NOT NULL 的字段不能取空值。 (3)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物質能源的化學利用考核試卷
- 2024年04月甘肅酒泉市衛(wèi)生健康系統(tǒng)事業(yè)單位校園招聘246人筆試歷年專業(yè)考點(難、易錯點)附帶答案詳解
- 物聯(lián)網(wǎng)在水質監(jiān)測中的應用考核試卷
- 女式服裝搭配培訓方案
- 皮革制品超聲波粘接技術優(yōu)化考核試卷
- 小學數(shù)學人教版(2024)四年級上冊筆算除法第二課時教學設計
- 介入血管外科培訓課件
- 社會科學研究方法與數(shù)據(jù)分析考核試卷
- 蘇科版三年級全冊第13課 畫多邊形教學設計及反思
- 橋梁工程的節(jié)能技術與創(chuàng)新考核試卷
- 介入手術需要的設備
- (高清版)TDT 1036-2013 土地復墾質量控制標準
- 人際交往與溝通課件第六章 人際交往禮儀
- 社會穩(wěn)定風險評估 投標方案(技術標)
- 銷售銷售數(shù)據(jù)分析培訓講義
- 超密集組網(wǎng)技術及其應用
- 兩位數(shù)除以一位數(shù)(有余數(shù))計算題200道
- 產后早開奶好處健康宣教
- 人效分析報告
- 2024屆江蘇省期無錫市天一實驗校中考聯(lián)考英語試題含答案
- 內鏡室院感培訓知識
評論
0/150
提交評論