計(jì)算思維與計(jì)算機(jī)導(dǎo)論 課件 09-數(shù)據(jù)庫(kù)技術(shù)、10-WPS文字處理_第1頁(yè)
計(jì)算思維與計(jì)算機(jī)導(dǎo)論 課件 09-數(shù)據(jù)庫(kù)技術(shù)、10-WPS文字處理_第2頁(yè)
計(jì)算思維與計(jì)算機(jī)導(dǎo)論 課件 09-數(shù)據(jù)庫(kù)技術(shù)、10-WPS文字處理_第3頁(yè)
計(jì)算思維與計(jì)算機(jī)導(dǎo)論 課件 09-數(shù)據(jù)庫(kù)技術(shù)、10-WPS文字處理_第4頁(yè)
計(jì)算思維與計(jì)算機(jī)導(dǎo)論 課件 09-數(shù)據(jù)庫(kù)技術(shù)、10-WPS文字處理_第5頁(yè)
已閱讀5頁(yè),還剩144頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

8數(shù)據(jù)庫(kù)技術(shù)

天津科技大學(xué)

計(jì)算機(jī)基礎(chǔ)與信息技術(shù)教研部1目錄9.1數(shù)據(jù)庫(kù)概述9.2關(guān)系數(shù)據(jù)庫(kù) 9.3SQLite簡(jiǎn)介9.4SQL9.5視圖 9.1.1數(shù)據(jù)庫(kù)體系結(jié)構(gòu)數(shù)據(jù)庫(kù)(DataBase,DB)是指長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織的、統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合。數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是用于建立、使用、管理和維護(hù)數(shù)據(jù)庫(kù)的系統(tǒng)軟件,是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。大型:Oracle、Sybase、SQLServer、DB2等中小型數(shù)據(jù)庫(kù)管理系統(tǒng)有SQLite、MySQL、Access等國(guó)產(chǎn)自主研發(fā):螞蟻集團(tuán)OceanBase、華為GaussDB等數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)具有以下主要功能:(1)數(shù)據(jù)定義:定義數(shù)據(jù)庫(kù)的各種對(duì)象。(2)數(shù)據(jù)處理:數(shù)據(jù)的基本操作(3)數(shù)據(jù)庫(kù)的控制和管理:實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的控制和管理,確保數(shù)據(jù)正確有效和數(shù)據(jù)庫(kù)系統(tǒng)的正常運(yùn)行。括數(shù)據(jù)的并發(fā)性控制、完整性控制、安全性控制和數(shù)據(jù)庫(kù)的恢復(fù)(4)數(shù)據(jù)庫(kù)的建立和維護(hù):數(shù)據(jù)庫(kù)的建立包括數(shù)據(jù)庫(kù)初始數(shù)據(jù)的輸入、轉(zhuǎn)換等數(shù)據(jù)庫(kù)的維護(hù)包括數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)、恢復(fù)、重組織與重構(gòu)造、性能監(jiān)視與分析等數(shù)據(jù)庫(kù)系統(tǒng)(DBS)數(shù)據(jù)庫(kù)系統(tǒng)(DataBaseSystem,DBS)是指帶有數(shù)據(jù)庫(kù)并利用數(shù)據(jù)庫(kù)技術(shù)進(jìn)行數(shù)據(jù)管理的計(jì)算機(jī)系統(tǒng)。數(shù)據(jù)庫(kù)系統(tǒng)的軟件(1)數(shù)據(jù)庫(kù)管理系統(tǒng)(2)操作系統(tǒng)(3)應(yīng)用系統(tǒng)(4)應(yīng)用開(kāi)發(fā)工具:編程語(yǔ)言:C、Python、Java、PHP、Delphi、VB數(shù)據(jù)庫(kù)工具:SQLiteStudio等用戶用戶主要包括以下幾類。(1)終端用戶(2)應(yīng)用程序員(3)數(shù)據(jù)庫(kù)管理員(DataBaseAdministrator,DBA)數(shù)據(jù)庫(kù)中存儲(chǔ)和管理的數(shù)據(jù)都來(lái)源于現(xiàn)實(shí)世界的客觀事物,計(jì)算機(jī)不能直接處理這些具體事物?,F(xiàn)實(shí)世界信息世界

機(jī)器世界抽象(概念模型)抽象(數(shù)據(jù)模型)9.1.2概念模型9.1.2概念模型人們經(jīng)常使用實(shí)體聯(lián)系模型來(lái)表示概念模型。1.實(shí)體客觀存在并且可以相互區(qū)別的事物稱為實(shí)體。實(shí)體可以是具體的人、事、物。如一名學(xué)生、一本書(shū)、一門課程等;也可以是事件,如學(xué)生的一次選課、一場(chǎng)比賽、一次借書(shū)等。概念模型2.實(shí)體的屬性實(shí)體所具有的某一特性稱為屬性。如學(xué)生實(shí)體有學(xué)號(hào)、姓名、性別、出生日期、專業(yè)等多個(gè)屬性。屬性包括屬性名和屬性值,如:學(xué)號(hào)、姓名、性別、出生日期、專業(yè)等為屬性名,(13011103、許志華、男、06/12/1995、機(jī)械工程)為某個(gè)學(xué)生實(shí)體的屬性值。概念模型3.實(shí)體型用實(shí)體名及其屬性名來(lái)抽象描述同一類實(shí)體,稱為實(shí)體型。如:學(xué)生(學(xué)號(hào)、姓名、性別、出生日期、專業(yè))就是一個(gè)實(shí)體型,它描述的是學(xué)生這一類實(shí)體。概念模型4.實(shí)體集同類型實(shí)體的集合稱為實(shí)體集。如:全體學(xué)生就是一個(gè)實(shí)體集而(13011103、許志華、男、06/12/1995、機(jī)械工程)是這個(gè)實(shí)體集中的一個(gè)實(shí)體。概念模型5.實(shí)體間的聯(lián)系實(shí)體間的聯(lián)系通常是指兩個(gè)實(shí)體集之間的聯(lián)系。聯(lián)系有以下3種類型:(1)一對(duì)一聯(lián)系(1:1)(2)一對(duì)多聯(lián)系(1:n)(3)多對(duì)多聯(lián)系(m:n)概念模型一對(duì)一聯(lián)系(1:1) 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)實(shí)體與之對(duì)應(yīng);反之亦然,則稱A與B具有一對(duì)一聯(lián)系。例如:一個(gè)班級(jí)只有一個(gè)班長(zhǎng),而一個(gè)班長(zhǎng)只能在一個(gè)班級(jí)任職。班級(jí)和班長(zhǎng)之間具有一對(duì)一的聯(lián)系概念模型一對(duì)多聯(lián)系(1:n) 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之對(duì)應(yīng);反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之對(duì)應(yīng),則稱A與B具有一對(duì)多聯(lián)系。例如:一個(gè)班級(jí)有多個(gè)學(xué)生,而每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí),則班級(jí)與學(xué)生之間具有一對(duì)多的聯(lián)系。概念模型多對(duì)多聯(lián)系(m:n) 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之對(duì)應(yīng);反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m≥0)與之對(duì)應(yīng),則稱A與B具有多對(duì)多聯(lián)系。例如:一個(gè)學(xué)生可以選多門課,一門課也可以被多個(gè)學(xué)生選擇課程與學(xué)生之間具有多對(duì)多的聯(lián)系。概念模型6.E-R(Entity-Relationship實(shí)體-聯(lián)系)圖

包含實(shí)體、屬性和聯(lián)系E-R圖(1)實(shí)體:用矩形框表示(2)屬性:用橢圓形框表示,并用無(wú)向邊將其與對(duì)應(yīng)實(shí)體連接起來(lái)。(3)聯(lián)系:用菱形框表示,框內(nèi)寫(xiě)明聯(lián)系名,并用無(wú)向邊分別與有關(guān)實(shí)體連接起來(lái),同時(shí)在無(wú)向邊旁標(biāo)注聯(lián)系的類型(1:1,1:n或m:n)。關(guān)系模型數(shù)據(jù)模型是用來(lái)抽象和表示現(xiàn)實(shí)世界中事物與事物之間聯(lián)系的結(jié)構(gòu)模式。用二維表結(jié)構(gòu)表示實(shí)體及實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為關(guān)系模型。9.2關(guān)系數(shù)據(jù)庫(kù)關(guān)系數(shù)據(jù)庫(kù)是基于關(guān)系模型的數(shù)據(jù)庫(kù)。在關(guān)系數(shù)據(jù)庫(kù)中,數(shù)據(jù)存儲(chǔ)在二維結(jié)構(gòu)的表中,而一個(gè)關(guān)系數(shù)據(jù)庫(kù)中,包含多個(gè)數(shù)據(jù)表。關(guān)系術(shù)語(yǔ)(1)關(guān)系: 一個(gè)關(guān)系就是一張二維表,每個(gè)關(guān)系有一個(gè)關(guān)系名。如:學(xué)生(2)元組: 表中的一行即為一個(gè)元組,也稱為記錄。如一行(3)屬性:表中的一列即為一個(gè)屬性,也稱字段。如:學(xué)號(hào)、姓名、性別、出生日期、專業(yè)、生源地、民族、政治面貌、入學(xué)成績(jī)關(guān)系術(shù)語(yǔ)(4)域:屬性的取值范圍。性別屬性的域?yàn)槲谋荆?,女)入學(xué)成績(jī)屬性的域?yàn)?~600的數(shù)字關(guān)系術(shù)語(yǔ)(5)關(guān)鍵字關(guān)系中能唯一標(biāo)識(shí)元組的一個(gè)或一組屬性稱為關(guān)鍵字。如:學(xué)號(hào)(6)主關(guān)鍵字主關(guān)鍵字是在關(guān)系中指定的唯一標(biāo)識(shí)元組的關(guān)鍵字。一個(gè)關(guān)系中只能有一個(gè)主關(guān)鍵字。如:學(xué)號(hào)是主關(guān)鍵字。關(guān)系術(shù)語(yǔ)(7)外部關(guān)鍵字:如果一個(gè)關(guān)系R中的某個(gè)屬性不是本關(guān)系的主關(guān)鍵字,而是另一個(gè)關(guān)系S的主關(guān)鍵字,則稱該屬性為本關(guān)系R的外部關(guān)鍵字,R為參照關(guān)系,S為被參照關(guān)系。課程號(hào)是課程表的主關(guān)鍵字,學(xué)號(hào)是表學(xué)生表的主關(guān)鍵字,課程號(hào)和學(xué)號(hào)都是成績(jī)表的外部關(guān)鍵字關(guān)系術(shù)語(yǔ)(7)關(guān)系模式對(duì)關(guān)系的描述,它對(duì)應(yīng)一個(gè)關(guān)系的結(jié)構(gòu)。其格式為:課程表的關(guān)系模式為:關(guān)系名(屬性1,屬性2,…,屬性n)課程(課程號(hào),課程名,課時(shí),學(xué)分)關(guān)系完整性關(guān)系模型的完整性規(guī)則用于定義和保護(hù)表內(nèi)部或表之間的數(shù)據(jù)關(guān)系,是對(duì)關(guān)系的某種約束條件。包括:實(shí)體完整性參照完整性用戶定義完整性。關(guān)系完整性(1)實(shí)體完整性實(shí)體完整性也稱行完整性。實(shí)體完整性規(guī)定:關(guān)系中所有元組的主關(guān)鍵字值不能為空值。

如:

學(xué)生表中學(xué)號(hào)為主關(guān)鍵字,所有學(xué)生的學(xué)號(hào)不能為空關(guān)系完整性(2)參照完整性參照完整性規(guī)定:若一個(gè)關(guān)系R的外部關(guān)鍵字F是另一個(gè)關(guān)系S的主關(guān)鍵字,則R中的每一個(gè)元組在F上的值必須是S中某一元組的主關(guān)鍵字的值,或者取空值。成績(jī)表中課程號(hào)是外部關(guān)鍵字課程號(hào)是課程表的主關(guān)鍵字成績(jī)表中的所有課程號(hào)都必須是課程信息表中的某個(gè)課程號(hào)。關(guān)系完整性(3)用戶自定義完整性

用戶定義完整性是針對(duì)某一具體關(guān)系的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求。例如:成績(jī)表,成績(jī)應(yīng)為數(shù)值型數(shù)據(jù),取值范圍為0~100學(xué)生表,性別為字符型數(shù)據(jù),取值范圍為(男,女)9.3SQLite簡(jiǎn)介SQLite是部署廣泛的SQL數(shù)據(jù)庫(kù)引擎之一SQLite使用嵌入式SQL數(shù)據(jù)庫(kù)引擎,各引擎不與程序進(jìn)程進(jìn)行獨(dú)立通信,而是被集成在用戶程序中SQLite被廣泛應(yīng)用于消費(fèi)電子、醫(yī)療、工業(yè)控制、軍事等各領(lǐng)域。SQLite安裝下載:sqlite-dll-win64-x64-3400100.zip工具包sqlite-tools-win32-x86-3400100.zip解壓縮到一個(gè)文件夾下,如D:\SQLiteSQLite在msdos命令提示符下,切換到D:\SQLite到輸入命令sqlite3,進(jìn)入“SQLite數(shù)據(jù)庫(kù)管理系統(tǒng)”。此時(shí),可以進(jìn)行數(shù)據(jù)庫(kù)和數(shù)據(jù)操作。9.3.2SQLiteStudioSQLiteStudio是SQLite數(shù)據(jù)庫(kù)的可視化工具,軟件內(nèi)部集成了SQLite數(shù)據(jù)庫(kù)創(chuàng)建數(shù)據(jù)庫(kù)執(zhí)行“數(shù)據(jù)庫(kù)→添加數(shù)據(jù)庫(kù)”命令或者單擊“添加數(shù)據(jù)庫(kù)”按鈕創(chuàng)建表在數(shù)據(jù)庫(kù)中,表是整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ),所有的原始數(shù)據(jù)都存儲(chǔ)在表中創(chuàng)建表的工作包括:創(chuàng)建字段字段命名定義字段的數(shù)據(jù)類型設(shè)置字段屬性創(chuàng)建表之前先要完成數(shù)據(jù)庫(kù)的連接創(chuàng)建表執(zhí)行“結(jié)構(gòu)→新建表”命令或者單擊“連接到數(shù)據(jù)庫(kù)”按鈕,填寫(xiě)“表名”。表中至少要有一個(gè)列創(chuàng)建表添加列:?jiǎn)螕簟疤砑恿?/p>

”按鈕,打開(kāi)“列”對(duì)話框設(shè)定:列的名稱數(shù)據(jù)類型約束數(shù)據(jù)類型包括①Text:文本②Integer:整數(shù)值③Real:浮點(diǎn)數(shù)④Blob:以二進(jìn)制進(jìn)行存儲(chǔ),任意數(shù)據(jù)類型⑤Numeric:親和類型,在插入文本數(shù)據(jù)時(shí),自動(dòng)轉(zhuǎn)換為Integer或者是Real類型數(shù)據(jù),⑥Null:表示Null值,表示缺失信息的占位,可以根據(jù)輸入數(shù)據(jù)的類型決定數(shù)據(jù)類型。數(shù)據(jù)類型數(shù)據(jù)表中某一列可能包含多種數(shù)據(jù)類型,它們也可以排序。SQLite數(shù)據(jù)庫(kù)根據(jù)數(shù)據(jù)親緣性與其他系統(tǒng)或數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換數(shù)據(jù)類型布爾值被存儲(chǔ)為整數(shù)0(false)和1(true)Date與Time沒(méi)有單獨(dú)的存儲(chǔ)類型,轉(zhuǎn)換為Text、Real或者Integer存儲(chǔ)。列的約束(1)主鍵:主鍵用于保證數(shù)據(jù)實(shí)體的完整性,主鍵可以是單列,也可以是多列的組合。一個(gè)表只能定義一個(gè)主鍵,不允許重復(fù)、不允許空值列的約束(2)外鍵:外鍵用于保證數(shù)據(jù)的參照完整性,即相關(guān)表中數(shù)據(jù)的一致性。外鍵引用其他表中主鍵字段,說(shuō)明表與表之間的關(guān)系。學(xué)號(hào)為“學(xué)生”表的主鍵,學(xué)號(hào)為“選課”表的外鍵列的約束在更新或刪除主鍵時(shí),可能會(huì)破壞參照完整性。處理:“RESTRICT(限制):則會(huì)報(bào)錯(cuò),不執(zhí)行改數(shù)據(jù)操作;“CASCATE(級(jí)聯(lián))”:將外鍵一起更新或刪除。列的約束【例9.1】將“選課”表的“學(xué)號(hào)”字段設(shè)置為“學(xué)生”表中“學(xué)號(hào)”主鍵的外鍵,并限制更新操作、級(jí)聯(lián)刪除操作。雙擊“選課”表的“學(xué)號(hào)”字段,選中“外鍵”,配置外鍵。此時(shí)刪除、更新主鍵,會(huì)影響到外鍵。列的約束(3)唯一:確保該列中的所有值都不重復(fù)。(4)條件:條件約束用于保證用戶定義完整性,列的所有值滿足一定條件。如:成績(jī)字段的值大于等于0且小于等于100列的約束【例9.2】為“學(xué)生”表增加一個(gè)“電話號(hào)碼”新的列,該列的長(zhǎng)度必須為11位。增加一列,電話號(hào)碼,設(shè)定條件列的約束SQLite有常用函數(shù)列的約束【例9.3】將“選課”表中的成績(jī)值限制在0~100分。索引索引是在數(shù)據(jù)表中的列上建立的一種數(shù)據(jù)庫(kù)對(duì)象,它保存著列的排序,并記錄索引列在表中的物理存儲(chǔ)位置,從而實(shí)現(xiàn)快速查找數(shù)據(jù),提高查詢的效率。索引在“教學(xué)管理”數(shù)據(jù)庫(kù)中,學(xué)生表的索引,可以創(chuàng)建、編輯和刪除索引。9.3.5修改表結(jié)構(gòu)可以根據(jù)需要修改表的結(jié)構(gòu),設(shè)置字段類型、約束等。【例9.4】將學(xué)生表中“出生日期”的數(shù)據(jù)類型從原來(lái)的“Text”類型更改為“Integer”類型。選中“出生日期”字段,單擊“編輯列”按鈕9.3.6數(shù)據(jù)記錄操作在數(shù)據(jù)表的維護(hù)過(guò)程中,可以:增加記錄刪除記錄修改記錄數(shù)據(jù)記錄操作1.增加記錄【例9.5】向?qū)W生表添加一條學(xué)生信息。打開(kāi)學(xué)生表,單擊“數(shù)據(jù)”選項(xiàng)卡,單擊“插入行”按鈕,依次填寫(xiě)數(shù)據(jù)記錄操作2.修改記錄雙擊數(shù)據(jù)表中的字段,該字段變?yōu)榭删庉嫚顟B(tài),可以直接修改內(nèi)容。3.刪除記錄選中數(shù)據(jù)行,單擊“刪除行”按鈕,即可刪除記錄。9.4.1SQL簡(jiǎn)介SQL(StructuredQueryLanguage,結(jié)構(gòu)化查詢語(yǔ)言)是一種通用的且功能強(qiáng)大的關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言,也是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言。包括:(1)數(shù)據(jù)定義語(yǔ)言(DataDefinitionLanguage,DDL),(2)數(shù)據(jù)處理語(yǔ)言(DataManipulationLanguage,DML)(3)數(shù)據(jù)控制語(yǔ)言(DataControlLanguage,DCL)常量SQL中常量的表示方法(1)數(shù)字型常量:25、-25、12.4。(2)文本型常量:西文的單/雙撇號(hào)括起來(lái)

'英語(yǔ)'和"英語(yǔ)"(3)二進(jìn)制常量:直接以二進(jìn)制進(jìn)行存儲(chǔ)。算術(shù)運(yùn)算符算術(shù)運(yùn)算符用于進(jìn)行算術(shù)運(yùn)算關(guān)系運(yùn)算符用于比較兩個(gè)操作數(shù)的關(guān)系邏輯運(yùn)算符邏輯運(yùn)算符用于對(duì)操作數(shù)進(jìn)行邏輯運(yùn)算函數(shù)函數(shù)是一種能夠完成某種特定操作或功能的數(shù)據(jù)形式,函數(shù)的返回值稱為函數(shù)值。函數(shù)調(diào)用的格式:函數(shù)名([參數(shù)1][,參數(shù)2][,…])。max(12,34,56,38,30)運(yùn)行SQL語(yǔ)句SQLiteStudio中,使用查詢編輯器編寫(xiě)和運(yùn)行SQL語(yǔ)句①執(zhí)行菜單“工具→打開(kāi)SQL編輯器”命令或者單擊“打開(kāi)SQL編輯器

”按鈕②單擊上方的“執(zhí)行語(yǔ)句”按鈕,執(zhí)行SQL語(yǔ)句9.4.2CREATETABLE使用CREATETABLE語(yǔ)句定義表。語(yǔ)法格式為:CREATETABLE<表名>

(<字段名l><數(shù)據(jù)類型1>[(<大小>)][NOTNULL][PRIMARYKEY|UNIQUE]

,<字段名2><數(shù)據(jù)類型2>[(<大小>)][NOTNULL][PRIMARYKEY|UNIQUE]

[,…])(1)數(shù)據(jù)類型:用字符表示。(2)PRIMARYKEY:字段主鍵為主鍵。(3)UNIQUE:字段的唯一約束,不允許出現(xiàn)重復(fù)值。(4)NOTNULL:字段不允許為空。CREATETABLE【例9.6】使用SQL語(yǔ)句定義一個(gè)名為STUDENT的表。學(xué)號(hào)(文本型,8字符)、姓名(文本型,20字符)、性別(文本型,2字符)、出生日期(文本)、貸款否(整型)、簡(jiǎn)歷(文本)、照片(BLOB),學(xué)號(hào)為主鍵,姓名不允許為空值。CREATETABLESTUDENT(學(xué)號(hào)TEXT(8)PRIMARYKEY,姓名TEXT(20)NOTNULL,性別TEXT(2),

出生日期

TEXT,貸款否INT,簡(jiǎn)歷TEXT,照片BLOB)CREATETABLE9.4.3INSERTINTO使用INSERTINTO語(yǔ)句插入記錄,語(yǔ)法格式為:INSERTINTO<表名>[(<字段名1>[,<字段名2>[,…]])]VALUES(<表達(dá)式1>[,<表達(dá)式2>[,…]])如果INTO后缺少字段名列表,則必須為該表的所有字段賦值,且各項(xiàng)數(shù)據(jù)和表中的字段順序一一對(duì)應(yīng)。提示執(zhí)行完插入、更新、刪除等操作,單擊“刷新表數(shù)據(jù)

”按鈕,將顯示執(zhí)行完SQL語(yǔ)句后的數(shù)據(jù)表。INSERTINTO【例9.7】使用SQL語(yǔ)句向STUDENT表中插入兩條學(xué)生記錄。INSERTINTOSTUDENTVALUES("22801109","朱曉","女","2004/9/26","是",null,null)INSERTINTOSTUDENT(學(xué)號(hào),姓名,性別)VALUES("22801110","彭宇","男")9.4.4UPDATE使用UPDATE語(yǔ)句更新記錄,語(yǔ)法格式為:UPDATA<表名>SET<字段名1>=<表達(dá)式1>[,<字段名2>=<表達(dá)式2>[,…]][WHERE<條件>]如果不帶WHERE子句,則更新表中所有的記錄;如果帶WHERE子句,則只更新表中滿足條件的記錄。UPDATE【例9.8】使用SQL語(yǔ)句將“學(xué)生”表中所有女生的“貸款否”字段改為“否”。UPDATE學(xué)生SET貸款否="否"WHERE性別="女"9.4.5DELETE使用DELETE語(yǔ)句刪除記錄,其語(yǔ)法格式為:DELETEFROM<表名>[WHERE<條件>]如果不帶WHERE子句,則刪除表中所有的記錄;如果帶WHERE子句,則只刪除表中滿足條件的記錄。DELETE【例9.9】使用SQL語(yǔ)句刪除“學(xué)生”表中學(xué)號(hào)為“22801110”的學(xué)生記錄。DELETEFROM學(xué)生WHERE學(xué)號(hào)="22801110"9.4.6SELECT語(yǔ)句SELECT語(yǔ)句從數(shù)據(jù)庫(kù)中選取數(shù)據(jù),其語(yǔ)法格式為:SELECT[ALL|DISTINCT][TOP<數(shù)值>[PERCENT]]<目標(biāo)列>[[AS]<列標(biāo)題>]FROM<表或查詢1>[[AS]<別名1>],<表或查詢2>[[AS]<別名2>][WHERE<連接條件>AND<篩選條件>][GROUPBY<分組項(xiàng)>[HAVING<分組篩選條件>]][ORDERBY<排序項(xiàng)>[ASC|DESC]][LIMITN]關(guān)系運(yùn)算是一種抽象的查詢語(yǔ)言,它用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢,包括:投影選擇連接1.單表查詢單表查詢僅涉及從一個(gè)表中的查詢數(shù)據(jù)。(1)投影在關(guān)系運(yùn)算中,從關(guān)系中挑選若干屬性組成新的關(guān)系稱為投影。SELECT[DISTINCT]<目標(biāo)列1>[,<目標(biāo)列2>[,…]]

FROM<表或查詢>①查詢指定的字段:指定要查詢的各字段名。②查詢所有的字段:在目標(biāo)列中使用“*”。③消除重復(fù)的記錄:在字段名前加上DISTINCT④查詢計(jì)算的值。投影【例9.10】查詢“學(xué)生”表中所有學(xué)生的姓名、性別和出生日期。SELECT姓名,性別,出生日期FROM學(xué)生(2)選擇在關(guān)系運(yùn)算中,從關(guān)系中找出滿足給定條件的那些元組稱為選擇。條件是邏輯表達(dá)式,值為真的元組將被選取。SELECT<目標(biāo)列>FROM<表名>WHERE<條件>選擇【例9.11】查詢“選課”表中成績(jī)?cè)?0~90分的記錄。SELECT*FROM選課WHERE成績(jī)BETWEEN80AND90選擇【例9.12】查詢“學(xué)生”表中出生日期在“2004/1/1”之后的女生。SELECT*FROM學(xué)生WHERE出生日期>="2004/1/1"and性別="女"(3)排序排序使用ORDERBY子句對(duì)查詢結(jié)果按照一個(gè)或多個(gè)列的升序(ASC)或降序(DESC)排列,默認(rèn)是升序?!纠?.13】查詢成績(jī)?cè)?0~90分的記錄,同一門課程按成績(jī)降序排。SELECT*FROM選課WHERE成績(jī)BETWEEN50AND90ORDERBY課程號(hào),成績(jī)DESC排序使用LIMIT子句可以選出排在前面的若干記錄?!纠?.14】查詢“選課”表中成績(jī)排在前5名的記錄。SELECT*FROM選課ORDERBY成績(jī)DESCLIMIT5(4)分組查詢使用GROUPBY子句可以對(duì)查詢結(jié)果按照某一列的值分組分組查詢通常與SQL聚合函數(shù)一起使用,先按指定的字段分組,再對(duì)各組進(jìn)行合計(jì)。如果未分組,則聚合函數(shù)作用于整個(gè)查詢結(jié)果。分組查詢【例9.15】統(tǒng)計(jì)“學(xué)生”表中各系的學(xué)生人數(shù)。SELECT系部,COUNT(*)AS各系人數(shù)FROM學(xué)生GROUP

BY系部2.多表查詢多表查詢指的是從多個(gè)表中查詢數(shù)據(jù)。(1)笛卡兒積笛卡兒積是指在數(shù)學(xué)中,集合A的元素與集合B的元素的所有可能有序?qū)Φ募?,表示為A×B。在關(guān)系運(yùn)算中,笛卡兒積指的是X關(guān)系的每一條記錄和Y關(guān)系的每一條記錄連接構(gòu)成的新關(guān)系。多表查詢【例9.16】查詢“學(xué)生”表和“選課”表的笛卡兒積。SELECT*FROM學(xué)生,選課“學(xué)生”表中有20條記錄,“選課”表有8條記錄,查詢結(jié)果將有160條記錄。(2)連接運(yùn)算在關(guān)系運(yùn)算中,連接運(yùn)算是從兩個(gè)關(guān)系的笛卡兒積中選擇屬性間滿足一定條件的元組。條件放在WHERE子句中,語(yǔ)法格式為:SELECT<目標(biāo)列>FROM<表名1>,<表名2>WHERE<表名1>.<字段名1>=<表名2>.<字段名2>連接運(yùn)算【例9.17】查詢所有學(xué)生的學(xué)號(hào)、性別、姓名,及其選修的課程的課程號(hào)、課程名、成績(jī)。SELECT學(xué)生.學(xué)號(hào),性別,姓名,課程.課程號(hào),課程名,成績(jī)FROM學(xué)生,課程,選課WHERE學(xué)生.學(xué)號(hào)=選課.學(xué)號(hào)and課程.課程號(hào)=選課.課程號(hào)9.5視圖視圖(View)是在數(shù)據(jù)庫(kù)中根據(jù)一個(gè)或者多個(gè)表的查詢結(jié)果生成的虛擬表。視圖由一組數(shù)據(jù)行和列構(gòu)成,它建立在查詢的基礎(chǔ)上,數(shù)據(jù)庫(kù)中只存儲(chǔ)視圖的定義,不存儲(chǔ)數(shù)據(jù);當(dāng)表中的數(shù)據(jù)發(fā)生了變化,視圖中查詢出來(lái)的數(shù)據(jù)也會(huì)隨之改變。在SQLiteStudio中,創(chuàng)建視圖的方法:通過(guò)菜單命令使用SQL語(yǔ)句菜單命令創(chuàng)建視圖在SQLiteStudio中,執(zhí)行“結(jié)構(gòu)→創(chuàng)建視圖”命令或者單擊“創(chuàng)建視圖

”按鈕,打開(kāi)“創(chuàng)建視圖”窗口?!纠?.18】創(chuàng)建視圖,視圖名稱為“學(xué)生成績(jī)”,查詢學(xué)生的學(xué)號(hào)、性別、姓名,及其選修的課程的課程號(hào)、課程名、成績(jī)。①打開(kāi)“創(chuàng)建視圖”窗口。②填寫(xiě)視圖名稱為“學(xué)生成績(jī)”。③在編輯框中填寫(xiě)查詢語(yǔ)句SELECT學(xué)生.學(xué)號(hào),性別,姓名,課程.課程號(hào),課程名,成績(jī)FROM學(xué)生,課程,選課WHERE學(xué)生.學(xué)號(hào)=選課.學(xué)號(hào)and課程.課程號(hào)=選課.課程號(hào)菜單命令創(chuàng)建視圖CREATEVIEW創(chuàng)建視圖在SQLiteStudio中,打開(kāi)查詢編輯器,編寫(xiě)創(chuàng)建例9.18視圖的SQL語(yǔ)句如下:運(yùn)行后將創(chuàng)建

新視圖“學(xué)生成績(jī)”CREATEVIEW學(xué)生成績(jī)ASSELECT學(xué)生.學(xué)號(hào),性別,姓名,課程.課程號(hào),課程名,成績(jī)FROM學(xué)生,課程,選課WHERE學(xué)生.學(xué)號(hào)=選課.學(xué)號(hào)and課程.課程號(hào)=選課.課程號(hào)9.5.2視圖的使用視圖的操作和表中操作是一樣的,可以對(duì)視圖進(jìn)行查詢、修改、刪除、更新操作?!纠?.19】通過(guò)“學(xué)生成績(jī)”視圖,查詢所有女生的學(xué)號(hào)、性別、姓名,選修的課程的課程號(hào)、課程名,成績(jī)。select*from學(xué)生成績(jī)where性別="女"10WPS文字處理天津科技大學(xué)

計(jì)算機(jī)基礎(chǔ)與信息技術(shù)教研部91主要內(nèi)容WPSOffice是一款集成了文字處理、電子表格、電子文檔演示、PDF閱讀等功能的辦公軟件套裝,擁有強(qiáng)大的文檔處理能力,符合現(xiàn)代中文辦公的需求,并具有內(nèi)存占用低、運(yùn)行速度快、支持在線存儲(chǔ)功能等優(yōu)點(diǎn)。文字處理操作樣式頁(yè)面頁(yè)腳其他文檔排版方法:多級(jí)列表、題注、尾注與腳注、交叉引用、參考文獻(xiàn)、自動(dòng)生成目錄審閱文檔10.1.1文字處理基本操作文字處理基本操作:剪貼板字體段落文字處理基本操作操作對(duì)話框:?jiǎn)螕粲蚁陆堑摹?/p>

”按鈕鼠標(biāo)右鍵,“字體”命令10.1.2查找與替換在大量文字中查找、替換或定位某些文字時(shí),可以使用查找、替換、定位等操作,迅速完成。1.查找單擊“高級(jí)搜索”按鈕,設(shè)定復(fù)雜的查找條件2.替換(1)在“替換”選項(xiàng)卡中,輸入“查找內(nèi)容”和“替換為”內(nèi)容。(2)單擊“替換”或“全部替換”按鈕,完成替換。(3)單擊“高級(jí)搜索”按鈕,條件和格式等替換【例10.1】查找文檔中所有的文字“2015”,替換成紅色、傾斜的“2016”。3.定位“定位”選項(xiàng)卡中指定定位到指定頁(yè)號(hào)、節(jié)號(hào)、行號(hào)、書(shū)簽、批注、腳注、公式、表格、圖形、對(duì)象、標(biāo)題等位置。10.1.3繪制流程圖流程圖使用圖框來(lái)表示各種操作,用箭頭表示語(yǔ)句的執(zhí)行順序,經(jīng)常用于算法設(shè)計(jì),也可以用于描述各種工作流程等。WPS提供繪制流程圖的功能。繪制流程圖【例10.2】繪制算法流程圖,判斷輸入的整數(shù)x是奇數(shù)還是偶數(shù)。10.1.4繪制思維導(dǎo)圖思維導(dǎo)圖是一種用圖文并重的方式表達(dá)發(fā)散性思維的有效圖形思維工具,能簡(jiǎn)單、高效地將各級(jí)主題的關(guān)系用相互隸屬與相關(guān)的層級(jí)圖表現(xiàn)出來(lái)?!纠?0.3】創(chuàng)建思維導(dǎo)圖。單擊“插入→在線腦圖”按鈕,打開(kāi)“思維導(dǎo)圖”對(duì)話框繪制思維導(dǎo)圖繪制思維導(dǎo)圖10.1.5郵件合并郵件合并用于實(shí)現(xiàn)批量且按指定格式生成多份統(tǒng)一樣式的文檔,幫助用戶節(jié)省大量的時(shí)間和精力。生成的文檔具有相同布局、格式、文本和圖形,每個(gè)文檔只有某些特定部分具有個(gè)性化內(nèi)容。執(zhí)行“引用→郵件”命令,顯示“郵件合并”菜單郵件合并郵件合并的基本操作步驟。(1)建立主文檔(2)準(zhǔn)備數(shù)據(jù)源。(3)在主文檔中打開(kāi)數(shù)據(jù)源,插入合并域,(4)合并到新文檔。將數(shù)據(jù)源中的郵件合并【例10.4】制作期末考試安排通知單。郵件合并操作步驟如下。(1)創(chuàng)建主文檔,內(nèi)容是通知單的文字信息。(2)準(zhǔn)備數(shù)據(jù)源文件。建立Excel文檔“考試通知.xlsx”郵件合并(3)主文檔,單擊“引用→郵件”按鈕,顯示“郵件合并”菜單?!按蜷_(kāi)數(shù)據(jù)源”,選擇“考試通知.xlsx”。(4)在主文檔中空白位置,如“課程:”前,單擊“插入合并域”按鈕,選中某個(gè)數(shù)據(jù)域。郵件合并(5)單擊“合并到新文檔”按鈕,選擇“全部”記錄,生成考試通知單新文檔。樣式樣式是預(yù)先定義好的指定名稱的格式(1)單擊“樣式”分組右下角的

按鈕,打開(kāi)“預(yù)設(shè)樣式”窗格樣式(2)單擊“新建樣式”命令,打開(kāi)“新建樣式”對(duì)話框。(3)設(shè)置樣式名稱,設(shè)置字體、段落等格式。10.2.2應(yīng)用樣式選擇文字或者將光標(biāo)置于段落中,在“樣式”列表或者“預(yù)設(shè)樣式”窗格中,單擊某個(gè)樣式,選擇已有樣式應(yīng)用到文本中。10.2.3修改樣式在文檔中,可以修改已有的樣式。使用鼠標(biāo)右鍵單擊要修改的樣式,單擊“修改樣式”,打開(kāi)“修改樣式”對(duì)話框,修改樣式。2.清除格式(1)選中需要取消格式的文字或段落(2)打開(kāi)“預(yù)設(shè)樣式”窗格,單擊“清除格式”,清除所選文字的所有格式,保留純文本。樣式【例

10.5】將文字中的兩個(gè)自然段落分別設(shè)置不同樣式第一段格式為宋體、小四號(hào)、居中、段前距為1行,樣式名為“第一段”;第二段格式為仿宋、五號(hào)、左對(duì)齊、段前段后距均為1行,樣式名為“第二段”。將這兩種樣式應(yīng)用在各自段落中。樣式10.3頁(yè)眉頁(yè)腳分頁(yè)符:當(dāng)用戶想要設(shè)置文檔的一部分內(nèi)容另起一頁(yè)時(shí),可以在另起一頁(yè)的位置插入分頁(yè)符。分節(jié)符:插入分節(jié)符后可以將文檔分為多個(gè)節(jié),可以為每個(gè)節(jié)分別設(shè)置不同格式(頁(yè)面方向、頁(yè)邊距、頁(yè)眉和頁(yè)腳等)。分頁(yè)符和分節(jié)符插入分頁(yè)符和分節(jié)符分頁(yè)符和分節(jié)符顯示和隱藏分頁(yè)符、分節(jié)符標(biāo)記10.3.2設(shè)置頁(yè)眉頁(yè)腳執(zhí)行“插入→頁(yè)眉頁(yè)腳”命令,文檔進(jìn)入頁(yè)眉、頁(yè)腳編輯狀態(tài)頁(yè)眉向頁(yè)眉中插入文字、頁(yè)碼、日期和時(shí)間、文檔圖片、剪貼畫(huà)等2.頁(yè)腳插入頁(yè)腳的方法與頁(yè)眉的操作相似。內(nèi)置頁(yè)腳模板有“空白”頁(yè)腳、“三欄頁(yè)腳”等3.分節(jié)設(shè)置不同頁(yè)眉/頁(yè)腳(1)在文檔中需要設(shè)置不同頁(yè)眉/頁(yè)腳的內(nèi)容之間插入分節(jié)符,將文檔分為多個(gè)節(jié)。(2)在文檔中設(shè)置頁(yè)眉/頁(yè)腳,此時(shí)后一節(jié)將沿用前一節(jié)的頁(yè)眉/頁(yè)腳。(3)單擊進(jìn)入后一節(jié)頁(yè)眉/頁(yè)腳,單擊“同前節(jié)

”命令,此時(shí)可以在后一節(jié)單獨(dú)設(shè)置頁(yè)眉/頁(yè)腳了。分節(jié)設(shè)置不同頁(yè)眉/頁(yè)腳【例10.6】給文檔的各個(gè)節(jié)設(shè)置不同的頁(yè)眉/頁(yè)腳。(1)光標(biāo)落在分節(jié)的位置,插入分節(jié)符(2)執(zhí)行“插入→頁(yè)眉頁(yè)腳”命令,進(jìn)入頁(yè)眉編輯狀態(tài),編輯第1節(jié)的頁(yè)眉分節(jié)設(shè)置不同頁(yè)眉/頁(yè)腳(3)單擊下一節(jié)的頁(yè)眉,單擊“同前節(jié)

”,“與上一節(jié)相同

”提示消失。此時(shí)編輯第2節(jié)頁(yè)眉/頁(yè)腳,將不會(huì)影響前一節(jié)的頁(yè)眉/頁(yè)腳。10.3.3設(shè)置頁(yè)碼頁(yè)碼就是文檔中頁(yè)的編碼,有漢字、數(shù)字、字母等形式。單擊“插入→頁(yè)碼”選項(xiàng),打開(kāi)“預(yù)設(shè)樣式”窗格刪除頁(yè)碼單擊“插入→頁(yè)碼”按鈕,執(zhí)行窗格中的“刪除頁(yè)碼”命令,刪除頁(yè)碼。10.4.1多級(jí)列表可以通過(guò)“多級(jí)列表”方式來(lái)快速地添加分級(jí)的序列編號(hào)多級(jí)列表【例10.7】建立的多級(jí)列表。(1)選擇一種多級(jí)列表,一行行回車(2)按Tab鍵,向下降一級(jí)(3)按Sh

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論