自考《數(shù)據(jù)庫原理》串講-關(guān)系數(shù)據(jù)庫SQL語言
第三章 關(guān)系數(shù)據(jù)庫SQL語言
本章為重點章,應(yīng)熟悉和掌握SQL的數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)更新的句法及其應(yīng)用,特別是數(shù)據(jù)查詢的應(yīng)用。結(jié)合上機操作進行理解和掌握。
一、SQL概述。
1、SQL發(fā)展歷程( 識記 )
SQL從1970年美國IBM研究中心的E.F.Codd發(fā)表論文到1974年Boyce和Chamberlin把SQUARE語言改為SEQUEL語言,到現(xiàn)在還在不斷完善和發(fā)展之中,SQL(結(jié)構(gòu)式查詢語言)雖然名為查詢,但實際上具有定義、查詢、更新和控制等多種功能。
2、SQL數(shù)據(jù)庫的體系結(jié)構(gòu)( 領(lǐng)會 )
SQL數(shù)據(jù)庫的體系結(jié)構(gòu)也是三級結(jié)構(gòu) ,但術(shù)語與傳統(tǒng)關(guān)系模型術(shù)語不同,在SQL中,關(guān)系模式稱為“ 基本表 ”,存儲模式稱為“ 存儲文件 ”,子模式稱為“ 視圖 ”,元組稱“ 行 ”,屬性稱“ 列 ”。
SQL數(shù)據(jù)庫體系的結(jié)構(gòu)要點如下:
(1)一個SQL數(shù)據(jù)庫是表的匯集。
(2)一個SQL表由行集構(gòu)成,行是列的序列,每列對應(yīng)一個數(shù)據(jù)項。
(3)表或者是基本表,或者是視圖?;颈硎菍嶋H存儲在數(shù)據(jù)庫中的表,視圖由是由若干基本表或其他視圖構(gòu)成的表的定義。
(4)一個基本表可以跨一個或多個存儲文件,一個存儲文件也可存放一個或多個基本表。存儲文件與物理文件對應(yīng)。
(5)用戶可以用SQL語句對表進行操作,包括視圖和基本表。
(6)SQL的用戶可以是應(yīng)用程序,也可以是終端用戶。
3、SQL的組成( 識記 )
SQL由四部分組成:
(1)數(shù)據(jù)定義:SQL DDL.定義SQL模式,基本表、視圖和索引。
(2)數(shù)據(jù)操縱:SQL DML.包括數(shù)據(jù)查詢和數(shù)據(jù)更新(增、刪、改)。
(3)數(shù)據(jù)控制:包括對基本表和視圖的授權(quán)、完整性規(guī)則的描述,事務(wù)控制等。
(4)嵌入式SQL的使用規(guī)定。
二、SQL的數(shù)據(jù)定義( 簡單應(yīng)用 )
1、SQL模式的創(chuàng)建和撤消:
SQL 模式的創(chuàng)建 可簡單理解為建立一個數(shù)據(jù)庫,定義一個存儲空間,其句法是:
CREAT SCHEMA <模式名> AUTHORIZATION <用戶名>
撤消SQL模式的句法為:
DROP SCHEMA <模式名> [ CASCADE | RESTRICT ]
方括號中的選項參數(shù)CASCADE表示連鎖方式,執(zhí)行時將模式下所有基本表、視圖、索引等元素全部撤消。RESTRICT表示約束式,執(zhí)行時必須在SQL模式中沒有任何下屬元素時方可撤消模式。
2、SQL提供的基本數(shù)據(jù)類型
數(shù)值型:包括 integer、smallint、real、double precision 、float(n),numeric(p,d)
字符串型:char(n)、varchar(n),前者是定長,后者為變長串
位串型:bit(n),bit varying(n),同上。
時間型:date、time.
3、基本表的創(chuàng)建、修改和撤消
基本表的創(chuàng)建:(可理解為建立表結(jié)構(gòu))
CREAT TABLE SQL 模式名?;颈砻?/P>
(列名,類型,
……
完整性約束……)
完整性約束包括主鍵子句(PRIMARY KEY)、檢查子句(CHECK)和外鍵子句(Foreign KEY)。
基本表結(jié)構(gòu)的修改
ALTER TABLE 基本表名 ADD/ DROP (增加/刪除) 列名 類型名(增加時寫出)
刪除時有子句 [CASCADE|RESTRICT],前者為連鎖刪除,后者為約束刪除,即沒有對本列的任何引用時才能刪除。
基本表的撤消
DROP TABLE 基本表名 [CASCADE|RESTRICT]
4、視圖的創(chuàng)建和撤消
創(chuàng)建: CREAT VIEW 視圖名(列名表) AS SELECT 查詢語句
撤消: DROP VIEW 視圖名
5、索引的創(chuàng)建和撤消
創(chuàng)建: CREAT [UNIQUE] INDEX 索引名 ON 基本表名(列名表 [ASC|DESC])
撤消: DROP INDEX 索引名
總結(jié):凡創(chuàng)建都用 CREAT ,刪除都用 DROP ,改變用 alter ,再跟類型和名字,附加子句很容易了。
三、SQL的數(shù)據(jù)查詢( 綜合應(yīng)用 )
這一段是本章的重點內(nèi)容,應(yīng)該熟練掌握。首先了解基本句法:
1、 SELECT -FROM- WHERE 句型
SELECT 列名表(逗號隔開) FROM 基本表或視圖序列 WHERE 條件表達式
在這里,重點要掌握條件表達式中各種運算符的應(yīng)用,如=,>,<,<>等算術(shù)比較運算符、邏輯運算符 AND、OR、NOT 、集合成員資格運算符: IN,NOT IN ,以及嵌套的 SELECT 語句的用法要特別注意理解。 針對課本的例題和課后習題進行掌握。
在查詢時, SELECT 語句可以有多種寫法,如 聯(lián)接查詢、嵌套查詢和使用存在量詞的嵌套查詢 等。最好都掌握,但是起碼應(yīng)能寫出一種正確的查詢語句。
2. SELECT 語句完整的句法:
SELECT 列名表(逗號隔開)
FROM 基本表或視圖序列
[ WHERE 條件表達式] (此為和條件子句)
[GROUP BY 列名序列] (分組子句)
[HAVING 組條件表達式] (組條件子句)
[ORDER BY列名[ASC|DESC]……] (排序子句)
這段關(guān)于完整句法的內(nèi)容能夠理解也就問題不大了。
3、 SELECT 語句中的限定
這一段內(nèi)容主要是對 SELECT 語句進一步使用進行的深入學習,領(lǐng)會下列各種限定的使用目的和方法。
要求輸出表格中不出現(xiàn)重復(fù)元組,則在 SELECT 后加一DISTINCT
SELECT 子句中允許出現(xiàn)加減乘除及列名,常數(shù)的算術(shù)表達式
WHERE 子句中可以用BETWEEN……AND……來限定一個值的范圍
同一個基本表在 SELECT 語句中多次引用時可用AS來增加別名
WHERE 子句中字符串匹配用LIKE和兩個通配符,%和下劃線_.
查詢結(jié)果的結(jié)構(gòu)完全一致時可將兩個查詢進行并(UNION)交(INTERSECT)差(EXCPT)操作
查詢空值操作不是用='null',而是用 IS NULL來測試。
集合成員資格比較用 IN/NOT IN ,集合成員算術(shù)比較用元組θSOME/ALL
可以用子查詢結(jié)果取名(表名(列名序列))來作為導出表使用
基本表的自然聯(lián)接操作是用 NATURAL INNER JOIN來實現(xiàn)的。
四、SQL的數(shù)據(jù)更新( 簡單應(yīng)用 )
簡單應(yīng)用就是掌握基本的句型并能套用在一些簡單的查詢要求上。
1、數(shù)據(jù)插入:
INSERT INTO 基本表名(列名表)
valueS (元組值)
或
INSERT INTO 基本表名(列名表)
SELECT 查詢語句
其中元組值可以連續(xù)插入。用查詢語句可以按要求插入所需數(shù)據(jù)。
2、數(shù)據(jù)刪除:
DELETE FROM 基本表名 [ WHERE 條件表達式]
3、數(shù)據(jù)修改:
UPDATE 基本表名
SET 列名=值表達式,[列名=值表達式……]
[ WHERE 條件表達式]
4、對視圖的更新:
我們知道,對視圖的查詢是和基本表相同的,但是更新操作則受到下列三條規(guī)則的限制:(領(lǐng)會一下)
如果視圖是從多個基本表使用聯(lián)接操作導出的,則不允許更新。
如果導出的視圖使用了分組和聚合操作,也不允許更新。
如果視圖是從單個基本表使用選擇和投影操作導出的,并且包括了基本表的主鍵或某個候選鍵,則可以執(zhí)行操作。(這就相當于在基本表上操作)。
這一節(jié)的關(guān)于增刪改的操作要和前面關(guān)于數(shù)據(jù)庫模式、表的增刪改操作進行對比學習,以加深理解。不要忘記上機實踐 .
?2013年高教自考網(wǎng)絡(luò)輔導課程招生簡章
最新資訊
- 考前必背!自學考試《中國近現(xiàn)代史綱要》論述題高頻考點2024-10-19
- 自考報考策略:科學搭配科目,加速畢業(yè)進程2024-07-20
- 2025年考研考生五一假期,英語科目應(yīng)該如何復(fù)習?2024-05-03
- 備考指南!2024年4月自學考試考前要做哪些準備?2024-03-31
- 考前備考沖刺!自考如何一次就過?2024-03-30
- 考點匯總:《中國近現(xiàn)代史綱要》論述題2024-03-25
- 備考資料:《中國近現(xiàn)代史綱要》簡答題考點匯總2024-03-25
- 自考可以從哪些維度進行備考?2024-02-17
- @自考生,這里有備考技巧2024-02-17
- 自學考試備考復(fù)習方法!建議收藏2024-02-16