數(shù)據(jù)庫(kù)原理二章關(guān)系數(shù)據(jù)庫(kù)
《數(shù)據(jù)庫(kù)原理二章關(guān)系數(shù)據(jù)庫(kù)》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫(kù)原理二章關(guān)系數(shù)據(jù)庫(kù)(71頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、數(shù) 據(jù) 庫(kù) 原 理第 二 章 : 關(guān) 系 數(shù) 據(jù) 庫(kù) 授 課 教 師 : 王 哲 本章主要學(xué)習(xí)內(nèi)容v 關(guān) 系 模 型 關(guān) 系 數(shù) 據(jù) 結(jié) 構(gòu) 關(guān) 系 操 作 關(guān) 系 的 完 整 性 約 束v 關(guān) 系 代 數(shù) 集 合 計(jì) 算 關(guān) 系 運(yùn) 算v 關(guān) 系 演 算 元 組 關(guān) 系 演 算 語(yǔ) 言 ALPHA 域 關(guān) 系 演 算 語(yǔ) 言 QBE 一、關(guān)系數(shù)據(jù)結(jié)構(gòu)及形式化定義v單 一 的 數(shù) 據(jù) 結(jié) 構(gòu) -關(guān) 系現(xiàn) 實(shí) 世 界 的 實(shí) 體 以 及 實(shí) 體 間 的 各 種 聯(lián) 系 均 用 關(guān) 系 來(lái) 表 示v邏 輯 結(jié) 構(gòu) -二 維 表 從 用 戶 角 度 , 關(guān) 系 模 型 中 數(shù) 據(jù) 的 邏 輯 結(jié) 構(gòu)
2、 是 一 張 二 維 表v關(guān) 系 操 作 的 對(duì) 象 和 結(jié) 果 都 是 集 合 , 關(guān) 系 模 型 建 立 在 集 合 代數(shù) 的 基 礎(chǔ) 上 ; 1、域v 域 ( Domain) : 一 組 具 有 相 同 數(shù) 據(jù) 類 型 的 值 的 集 合 , 也 稱 為 值域 , 用 D表 示 。v 域 中 所 包 含 的 值 的 個(gè) 數(shù) 稱 為 域 的 基 數(shù) , 用 m表 示 。v 關(guān) 系 中 用 域 表 示 屬 性 的 取 值 范 圍 。 例 如 : D1=李 力 , 王 平 , 劉 偉 m1=3 D2=男 , 女 m2=2 D3=47,28,30 m3=3 其 中 , D1, D2, D3為 域
3、 名 , 分 別 表 示 教 師 關(guān) 系 中 姓 名 、 性 別 、 年齡 的 集 合 。v 域 名 無(wú) 排 列 次 序 , 如 D2=男 , 女 =女 , 男 2、笛卡爾積v1) 笛 卡 爾 積 ( Cartesian Product) 給 定 一 組 域 D1,D2,.Dn(域 可 相 同 ) , 它 們 的 笛 卡 兒 積 為 : D1xD2x.xDn=(d1,d2,.,dn)|di Di,i=1,2,.,n 所 有 域 的 所 有 取 值 組 成 一 個(gè) 集 合 , 其 中 每 一 個(gè) 元 素( d1,d2,.,dn)叫 做 一 個(gè) n元 組 , 簡(jiǎn) 稱 元 組 。 元 組 中 的 每
4、 個(gè) 值 d i叫 做 一 個(gè) 分 量 。 元 組 的 每 個(gè) 分 量 ( di) 是 按 序排 列 的 。 如 : ( 1, 2, 3) ( 2, 3, 1) ( 1, 3, 2) ; 元 組 不 能 重 復(fù) , 元 組 之 間 是 無(wú) 序 的 。 2)實(shí)例例 1: D1=a1,a2 D2=b1,b2,b3則 : D1XD2=(a1,b1),(a1,b2),(a1,b3),(a2,b1),(a2,b2),(a2,b3)v 其 中 a1、 b1、 b2等 是 分 量v (a1,b1),(a1,b2)等 是 元 組v 該 笛 卡 爾 積 的 基 數(shù) 為 2x3=6v 元 組 的 個(gè) 數(shù) 為 6
5、例 2: D1=導(dǎo) 師 集 合 SUPERVISOR=張 清 玫 , 劉 逸 D2=專 業(yè) 集 合 SPECIALITY=計(jì) 算 機(jī) 專 業(yè) , 信 息 專 業(yè) D3=研 究 生 集 合 POSTGRADUATE=李 勇 , 劉 晨 , 王 敏則 : D1XD2XD3=( 張 清 玫 , 計(jì) 算 機(jī) 專 業(yè) , 李 勇 ) ,( 張 清 玫 , 計(jì) 算 機(jī) 專 業(yè) , 劉 晨 ) ,( 張 清 玫 , 計(jì) 算 機(jī) 專 業(yè) , 王 敏 ) ,( 張 清 玫 , 信 息 專 業(yè) , 李 勇 ) ,( 張 清 玫 , 信 息 專 業(yè) , 劉 晨 ) ,( 張 清 玫 , 信 息 專 業(yè) , 王 敏
6、) ,( 劉 逸 , 計(jì) 算 機(jī) 專 業(yè) , 李 勇 ) ,( 劉 逸 , 計(jì) 算 機(jī) 專 業(yè) , 劉 晨 ) ,( 劉 逸 , 計(jì) 算 機(jī) 專 業(yè) , 王 敏 ) ,( 劉 逸 , 信 息 專 業(yè) , 李 勇 ) ,( 劉 逸 , 信 息 專 業(yè) , 劉 晨 ) ,( 劉 逸 , 信 息 專 業(yè) , 王 敏 ) 該 笛 卡 爾 積 的 基 數(shù) 為 2x2x3=12即 元 組 的 個(gè) 數(shù) 為 12 3)笛卡爾積的二維表表示v笛 卡 爾 積 也 可 以 用 二 維 表 表 示 ,其 中 表 的 框 架 由 域 構(gòu) 成 ,表的 任 意 一 行 就 是 一 個(gè) 元 組 ,每 一 列 數(shù) 據(jù) 來(lái) 則
7、同 一 域 。例 1: D1=學(xué) 生 的 集 合 甲 ,乙 ,丙 D2=性 別 的 集 合 男 ,女 D3=班 級(jí) 的 集 合 01,02 共 2 2 3=12個(gè) 元 組 , 用 二 維 表 可 表 示 為 : D1 D2 D3甲 男 01甲 男 02甲 女 01甲 女 02乙 男 01乙 男 02乙 女 01乙 女 02丙 男 01 丙 男 02丙 女 01丙 女 02 3、關(guān)系v關(guān) 系 ( Relation)nD1 D2 Dn的 子 集 叫 作 在 域 D1, D2, , Dn上 的關(guān) 系 。n表 示 為 R( D1, D2, , Dn)nR: 關(guān) 系 名nn: 關(guān) 系 的 目 或 度 (
8、 Degree)nT: 關(guān) 系 中 的 每 個(gè) 元 素 是 關(guān) 系 中 的 元 組 幾點(diǎn)說(shuō)明v1) 單 元 關(guān) 系 與 二 元 關(guān) 系nn: 關(guān) 系 的 目 或 度 ( Degree) n當(dāng) n=1時(shí) , 稱 該 關(guān) 系 為 單 元 關(guān) 系 ( Unary relation)或 一 元 關(guān) 系 。 n當(dāng) n=2時(shí) , 稱 該 關(guān) 系 為 二 元 關(guān) 系 ( Binary relation)nn當(dāng) n=n時(shí) , 稱 為 n元 關(guān) 系 。 v 2) 在 數(shù) 學(xué) 上 , 關(guān) 系 是 笛 卡 爾 積 的 任 意 子 集 , 按 照 笛 卡 兒 積 的 定義 , 關(guān) 系 可 以 是 一 個(gè) 無(wú) 限 集
9、合 。v 但 在 實(shí) 際 應(yīng) 用 中 關(guān) 系 是 笛 卡 爾 積 中 所 取 的 有 意 義 的 子 集 。 例 如在 表 中 選 取 一 個(gè) 子 集 構(gòu) 成 如 下 關(guān) 系 , 顯 然 不 符 合 實(shí) 際 情 況 。姓 名 性 別李 力 男李 力 女 v屬 性 ( Attribute)n 關(guān) 系 中 不 同 列 可 以 對(duì) 應(yīng) 相 同 的 域n 為 了 加 以 區(qū) 分 , 必 須 對(duì) 每 列 起 一 個(gè) 名 字 , 稱 為 屬 性 名n n目 關(guān) 系 必 有 n個(gè) 屬 性v碼 ( Key)( 1) 候 選 碼 ( Candidate key)n 若 關(guān) 系 中 的 某 一 屬 性 組 的 值
10、 能 唯 一 地 標(biāo) 識(shí) 一 個(gè) 元 組 , 則 稱 該 屬 性組 為 候 選 碼 。 n 最 簡(jiǎn) 單 的 情 況 : 候 選 碼 只 包 含 一 個(gè) 屬 性 ( 2) 全 碼 ( All-key)n 最 極 端 的 情 況 : 關(guān) 系 模 式 的 所 有 屬 性 組 是 關(guān) 系 模 式 的 候 選 碼 , 稱 為 全 碼 。( 3) 主 碼 ( Primary key)n 若 一 個(gè) 關(guān) 系 有 多 個(gè) 候 選 碼 , 則 選 定 其 中 一 個(gè) 為 主 碼 。( 4) 主 屬 性 ( Prime attribute)n 候 選 碼 的 諸 屬 性 稱 為 主 屬 性( 5) 非 主 屬 性
11、 ( Non-key attribute)n 不 包 含 在 任 何 侯 選 碼 中 的 屬 性 稱 為 非 主 屬 性 或 非 碼 屬 性 。 基 本 關(guān) 系 的 6條 性 質(zhì) 列 是 同 質(zhì) 的 不 同 的 列 可 出 自 同 一 個(gè) 域n 其 中 的 每 一 列 稱 為 一 個(gè) 屬 性n 不 同 的 屬 性 要 給 予 不 同 的 屬 性 名 列 的 順 序 無(wú) 所 謂 , 列 的 次 序 可 以 任 意 交 換 任 意 兩 個(gè) 元 組 的 候 選 碼 不 能 相 同 行 的 順 序 無(wú) 所 謂 , 行 的 次 序 可 以 任 意 交 換 分 量 必 須 取 原 子 值 4、關(guān)系模式(R
12、elation Schema)v關(guān) 系 模 式 是 型 , 關(guān) 系 是 值v關(guān) 系 模 式 是 對(duì) 關(guān) 系 的 描 述 元 組 集 合 的 結(jié) 構(gòu)屬 性 構(gòu) 成屬 性 來(lái) 自 的 域 屬 性 與 域 之 間 的 映 象 關(guān) 系 元 組 語(yǔ) 義 確 定 滿 足 一 定 的 完 整 性 約 束 條 件 屬 性 間 的 數(shù) 據(jù) 依 賴 v關(guān) 系 模 式 可 以 形 式 化 地 表 示 為 : R( U, D, DOM, F)R 關(guān) 系 名U 組 成 該 關(guān) 系 的 屬 性 名 集 合D 屬 性 組 U中 屬 性 所 來(lái) 自 的 域DOM 屬 性 向 域 的 映 象 集 合F 屬 性 間 的 數(shù) 據(jù)
13、依 賴 關(guān) 系 集 合注 : 域 名 及 屬 性 向 域 的 映 象 常 常 直 接 說(shuō) 明 為 屬 性 的 類 型 、 長(zhǎng) 度 v關(guān) 系 模 式 通 常 可 以 簡(jiǎn) 記 為 R (U) 或 R (A1, A2, , An)n R: 關(guān) 系 名n A1, A2, , An : 屬 性 名 關(guān)系模式與關(guān)系v關(guān) 系 模 式n 對(duì) 關(guān) 系 的 描 述n 靜 態(tài) 的 、 穩(wěn) 定 的v關(guān) 系n 關(guān) 系 模 式 在 某 一 時(shí) 刻 的 狀 態(tài) 或 內(nèi) 容n 動(dòng) 態(tài) 的 、 隨 時(shí) 間 不 斷 變 化 的v 關(guān) 系 模 式 和 關(guān) 系 往 往 統(tǒng) 稱 為 關(guān) 系 , 通 過(guò) 上 下 文 加 以 區(qū) 別 5、
14、關(guān)系數(shù)據(jù)庫(kù)v關(guān) 系 數(shù) 據(jù) 庫(kù)n 在 一 個(gè) 給 定 的 應(yīng) 用 領(lǐng) 域 中 , 所 有 關(guān) 系 的 集 合 構(gòu) 成 一 個(gè) 關(guān) 系 數(shù)據(jù) 庫(kù) 。v關(guān) 系 數(shù) 據(jù) 庫(kù) 的 型 : 關(guān) 系 數(shù) 據(jù) 庫(kù) 模 式 , 對(duì) 數(shù) 據(jù) 庫(kù) 的 描 述 。 是穩(wěn) 定 的 。v關(guān) 系 數(shù) 據(jù) 庫(kù) 的 值 : 關(guān) 系 模 式 在 某 一 時(shí) 刻 對(duì) 應(yīng) 的 關(guān) 系 的 集 合 。通 常 就 稱 為 關(guān) 系 數(shù) 據(jù) 庫(kù) 。 二、關(guān)系操作v常 用 的 關(guān) 系 操 作 查 詢 : 查 詢 是 關(guān) 系 操 作 中 最 主 要 的 部 分 , 包 括 選 擇 、 投 影 、 連 接 、除 、 并 、 交 、 差 、 笛
15、卡 爾 積 , 其 中 選 擇 、 投 影 、 并 、 差 、 笛 卡 爾積 是 5種 基 本 操 作 。 數(shù) 據(jù) 更 新 : 插 入 、 刪 除 、 修 改v 關(guān) 系 操 作 的 特 點(diǎn) 集 合 操 作 方 式 : 操 作 的 對(duì) 象 和 結(jié) 果 都 是 集 合 , 一 次 一 集 合 的 方 式 關(guān)系數(shù)據(jù)語(yǔ)言的分類v 關(guān) 系 代 數(shù) 語(yǔ) 言 用 對(duì) 關(guān) 系 的 運(yùn) 算 來(lái) 表 達(dá) 查 詢 要 求 , 代 表 : ISBLv關(guān) 系 演 算 語(yǔ) 言 : 用 謂 詞 來(lái) 表 達(dá) 查 詢 要 求 元 組 關(guān) 系 演 算 語(yǔ) 言 , 謂 詞 變 元 的 基 本 對(duì) 象 是 元 組 變 量 , 代 表
16、 : APLHA, QUEL 域 關(guān) 系 演 算 語(yǔ) 言 , 謂 詞 變 元 的 基 本 對(duì) 象 是 域 變 量 , 代 表 : QBEv具 有 關(guān) 系 代 數(shù) 和 關(guān) 系 演 算 雙 重 特 點(diǎn) 的 語(yǔ) 言 代 表 : SQL, 集 查 詢 、 DDL、 DML、 DCL于 一 體 的 關(guān) 系 數(shù) 據(jù) 語(yǔ) 言 , 它 充 分體 現(xiàn) 了 關(guān) 系 數(shù) 據(jù) 語(yǔ) 言 的 特 點(diǎn) 和 優(yōu) 點(diǎn) , 是 關(guān) 系 數(shù) 據(jù) 庫(kù) 的 標(biāo) 準(zhǔn) 語(yǔ) 言 。 三、關(guān)系的完整性v為 了 維 護(hù) 數(shù) 據(jù) 庫(kù) 中 數(shù) 據(jù) 與 現(xiàn) 實(shí) 世 界 的 一 致 性 , 對(duì) 關(guān) 系 數(shù) 據(jù)庫(kù) 的 插 入 、 刪 除 和 修 改 操
17、作 必 須 有 一 定 的 約 束 條 件 , 這 就是 關(guān) 系 模 型 的 三 類 完 整 性 : 實(shí) 體 完 整 性 參 照 完 整 性 用 戶 定 義 的 完 整 性 v實(shí) 體 完 整 性 和 參 照 完 整 性 : 關(guān) 系 模 型 必 須 滿 足 的 完 整 性 約 束 條 件 , 稱 為 關(guān) 系 的 兩 個(gè)不 變 性 , 應(yīng) 該 由 關(guān) 系 系 統(tǒng) 自 動(dòng) 支 持 。v用 戶 定 義 的 完 整 性 : 應(yīng) 用 領(lǐng) 域 需 要 遵 循 的 約 束 條 件 , 體 現(xiàn) 了 具 體 領(lǐng) 域 中 的 語(yǔ)義 約 束 。 1、實(shí)體完整性(Entity Integrity)規(guī) 則 2.1 實(shí) 體
18、 完 整 性 規(guī) 則 ( Entity Integrity) , 若 屬 性 A是 基 本 關(guān) 系 R的 主 屬 性 , 則 屬 性 A不 能 取 空 值 。如 : 學(xué) 生 ( 學(xué) 號(hào) , 姓 名 , 性 別 , 專 業(yè) 號(hào) , 年 齡 ) 課 程 ( 課 程 號(hào) , 課 程 名 , 學(xué) 分 )其 中 主 碼 學(xué) 號(hào) , 課 程 號(hào) 不 可 取 空 值 。 實(shí) 體 完 整 性 規(guī) 則 的 說(shuō) 明(1) 實(shí) 體 完 整 性 規(guī) 則 是 針 對(duì) 基 本 關(guān) 系 而 言 的 。 一 個(gè) 基 本 表 通 常 對(duì) 應(yīng) 現(xiàn) 實(shí)世 界 的 一 個(gè) 實(shí) 體 集 。(2) 現(xiàn) 實(shí) 世 界 中 的 實(shí) 體 是 可
19、 區(qū) 分 的 , 即 它 們 具 有 某 種 唯 一 性 標(biāo) 識(shí) 。(3) 關(guān) 系 模 型 中 以 主 碼 作 為 唯 一 性 標(biāo) 識(shí) 。(4) 主 碼 中 的 屬 性 即 主 屬 性 不 能 取 空 值 。主 屬 性 取 空 值 , 就 說(shuō) 明 存 在 某 個(gè) 不 可 標(biāo) 識(shí) 的 實(shí) 體 , 即 存 在 不 可 區(qū)分 的 實(shí) 體 , 這 與 第 ( 2) 點(diǎn) 相 矛 盾 , 因 此 這 個(gè) 規(guī) 則 稱 為 實(shí) 體 完 整 性 2、參照完整性v 在 關(guān) 系 模 型 中 實(shí) 體 及 實(shí) 體 間 的 聯(lián) 系 都 是 用 關(guān) 系 來(lái) 描 述 的 , 因 此可 能 存 在 著 關(guān) 系 與 關(guān) 系 間
20、的 引 用 。例 1: 學(xué) 生 實(shí) 體 、 專 業(yè) 實(shí) 體學(xué) 生 ( 學(xué) 號(hào) , 姓 名 , 性 別 , 專 業(yè) 號(hào) , 年 齡 )專 業(yè) ( 專 業(yè) 號(hào) , 專 業(yè) 名 )v 學(xué) 生 關(guān) 系 引 用 了 專 業(yè) 關(guān) 系 的 主 碼 “ 專 業(yè) 號(hào) ” 。v 學(xué) 生 關(guān) 系 中 的 “ 專 業(yè) 號(hào) ” 值 必 須 是 確 實(shí) 存 在 的 專 業(yè) 的 專 業(yè) 號(hào) , 即 專 業(yè)關(guān) 系 中 有 該 專 業(yè) 的 記 錄 。 例 2: 學(xué) 生 、 課 程 、 學(xué) 生 與 課 程 之 間 的 多 對(duì) 多 聯(lián) 系學(xué) 生 ( 學(xué) 號(hào) , 姓 名 , 性 別 , 專 業(yè) 號(hào) , 年 齡 )課 程 ( 課 程
21、號(hào) , 課 程 名 , 學(xué) 分 )選 修 ( 學(xué) 號(hào) , 課 程 號(hào) , 成 績(jī) ) 例 3: 學(xué) 生 實(shí) 體 及 其 內(nèi) 部 的 一 對(duì) 多 聯(lián) 系學(xué) 生 ( 學(xué) 號(hào) , 姓 名 , 性 別 , 專 業(yè) 號(hào) , 年 齡 , 班 長(zhǎng) )v “ 學(xué) 號(hào) ” 是 主 碼 , “ 班 長(zhǎng) ” 是 外 碼 , 它 引 用 了 本 關(guān) 系 的 “ 學(xué) 號(hào) ” v “ 班 長(zhǎng) ” 必 須 是 確 實(shí) 存 在 的 學(xué) 生 的 學(xué) 號(hào)學(xué)號(hào)姓名性別專業(yè)號(hào)年齡班長(zhǎng)801張三女01 19 802 802李四男01 20803王五男01 20 802804趙六女02 20 805805錢(qián)七男02 19 v 外 碼 (
22、 Foreign Key) 設(shè) F是 基 本 關(guān) 系 R的 一 個(gè) 或 一 組 屬 性 , 但 不 是 關(guān) 系 R的 碼 。 如 果F與 基 本 關(guān) 系 S的 主 碼 Ks相 對(duì) 應(yīng) , 則 稱 F是 基 本 關(guān) 系 R的 外 碼 。基 本 關(guān) 系 R稱 為 參 照 關(guān) 系 ( Referencing Relation)基 本 關(guān) 系 S稱 為 被 參 照 關(guān) 系 ( Referenced Relation) 或 目 標(biāo)關(guān) 系 ( Target Relation) 規(guī) 則 2.2 參 照 完 整 性 規(guī) 則 若 屬 性 ( 或 屬 性 組 ) F是 基 本 關(guān) 系 R的 外 碼 , 它 與 基
23、 本 關(guān)系 S的 主 碼 Ks相 對(duì) 應(yīng) ( 基 本 關(guān) 系 R和 S不 一 定 是 不 同 的 關(guān)系 ) , 則 對(duì) 于 R中 每 個(gè) 元 組 在 F上 的 值 必 須 為 :n 或 者 取 空 值 ( F 的 每 個(gè) 屬 性 值 均 為 空 值 )n 或 者 等 于 S 中 某 個(gè) 元 組 的 主 碼 值 例 1:學(xué) 生 關(guān) 系 中 每 個(gè) 元 組 的 “ 專 業(yè) 號(hào) ” 屬 性 只 取 兩 類 值 :( 1) 空 值 , 表 示 尚 未 給 該 學(xué) 生 分 配 專 業(yè)( 2) 非 空 值 , 這 時(shí) 該 值 必 須 是 專 業(yè) 關(guān) 系 中 某 個(gè) 元 組 的 “ 專業(yè) 號(hào) ” 值 , 該
24、 學(xué) 生 不 可 能 分 配 一 個(gè) 不 存 在 的 專 業(yè) 。 例 2:選 修 ( 學(xué) 號(hào) , 課 程 號(hào) , 成 績(jī) )“ 學(xué) 號(hào) ” 和 “ 課 程 號(hào) ” 可 能 的 取 值 : ( 1) 選 修 關(guān) 系 中 的 主 屬 性 , 不 能 取 空 值 ( 2) 只 能 取 相 應(yīng) 被 參 照 關(guān) 系 中 已 經(jīng) 存 在 的 主 碼 值 例 3:學(xué) 生 ( 學(xué) 號(hào) , 姓 名 , 性 別 , 專 業(yè) 號(hào) , 年 齡 , 班 長(zhǎng) )“ 班 長(zhǎng) ” 屬 性 值 可 以 取 兩 類 值 :( 1) 空 值 , 表 示 該 學(xué) 生 所 在 班 級(jí) 尚 未 選 出 班 長(zhǎng)( 2) 非 空 值 , 該
25、 值 必 須 是 本 關(guān) 系 中 某 個(gè) 元 組 的 學(xué) 號(hào) 值 3、用戶定義的完整性v針 對(duì) 某 一 具 體 關(guān) 系 數(shù) 據(jù) 庫(kù) 的 約 束 條 件 , 反 映 某 一 具 體 應(yīng) 用所 涉 及 的 數(shù) 據(jù) 必 須 滿 足 的 語(yǔ) 義 要 求 。v關(guān) 系 模 型 應(yīng) 提 供 定 義 和 檢 驗(yàn) 這 類 完 整 性 的 機(jī) 制 , 以 便 用 統(tǒng)一 的 系 統(tǒng) 的 方 法 處 理 它 們 , 而 不 要 由 應(yīng) 用 程 序 承 擔(dān) 這 一 功能 。例 : 1) 選 修 關(guān) 系 中 成 績(jī) 的 取 值 范 圍 為 0100之 間2) 某 個(gè) 屬 性 ( 如 : 課 程 名 ) 必 須 取 唯 一
26、 值 v 最 后 , 關(guān) 系 模 型 的 優(yōu) 點(diǎn) :1. 結(jié) 構(gòu) 簡(jiǎn) 單 , 具 有 高 度 的 簡(jiǎn) 明 性 和 高 度 性2. 可 直 接 處 理 多 對(duì) 多 關(guān) 系3. 一 次 處 理 一 個(gè) 元 組 集 合4. 數(shù) 據(jù) 獨(dú) 立 性 很 高5. 堅(jiān) 實(shí) 的 數(shù) 學(xué) 理 論 基 礎(chǔ) 四、關(guān)系代數(shù)v關(guān) 系 數(shù) 據(jù) 庫(kù) 的 數(shù) 據(jù) 操 縱 語(yǔ) 言 ( DML) 的 語(yǔ) 句 分 成 查 詢 語(yǔ) 句和 更 新 語(yǔ) 句 兩 大 類 。 查 詢 語(yǔ) 句 用 于 描 述 用 戶 的 各 種 檢 索 要求 ; 更 新 語(yǔ) 句 用 于 描 述 用 戶 進(jìn) 行 插 入 、 刪 除 、 修 改 等 操 作 。v根
27、 據(jù) 關(guān) 系 查 詢 語(yǔ) 言 其 理 論 基 礎(chǔ) 的 不 同 分 成 兩 大 類 : 關(guān) 系 代 數(shù) 語(yǔ) 言 : 查 詢 操 作 是 以 集 合 操 作 為 基 礎(chǔ) 的 演 算 關(guān) 系 演 算 語(yǔ) 言 : 查 詢 操 作 是 以 謂 詞 演 算 為 基 礎(chǔ) 的 演 算 關(guān)系代數(shù)v關(guān) 系 代 數(shù) 是 一 種 抽 象 的 查 詢 語(yǔ) 言 , 屬 于 關(guān) 系 操 作 的 一 種v通 過(guò) 對(duì) 關(guān) 系 的 運(yùn) 算 來(lái) 表 達(dá) 查 詢 操 作v運(yùn) 算 的 對(duì) 象 及 結(jié) 果 均 為 關(guān) 系v運(yùn) 算 集 合 運(yùn) 算 、 關(guān) 系 運(yùn) 算 、 比 較 運(yùn) 算 、 邏 輯 運(yùn) 算 關(guān)系代數(shù)的運(yùn)算符 v 由 于 關(guān)
28、 系 定 義 為 元 數(shù) 相 同 的 元 組 的 集 合 , 因 此 把 關(guān) 系 看 成 集 合 ,集 合 代 數(shù) 中 的 運(yùn) 算 ( 并 、 差 、 交 、 笛 卡 爾 積 ) 就 可 以 引 入 到 關(guān)系 運(yùn) 算 中 來(lái) 。 還 有 一 些 運(yùn) 算 是 針 對(duì) 關(guān) 系 數(shù) 據(jù) 庫(kù) 環(huán) 境 專 門(mén) 設(shè) 計(jì) 的 ,譬 如 對(duì) 關(guān) 系 進(jìn) 行 垂 直 分 割 ( 投 影 ) 、 水 平 分 割 ( 選 擇 ) 、 關(guān) 系的 結(jié) 合 ( 連 接 ) 等 。分 別 為1. 傳 統(tǒng) 的 集 合 運(yùn) 算2. 專 門(mén) 的 關(guān) 系 運(yùn) 算 1、傳統(tǒng)的集合運(yùn)算v1) 并 ( Union)R和 S 具 有 相
29、同 的 目 n( 即 兩 個(gè) 關(guān) 系 都 有 n個(gè) 屬 性 ) 相 應(yīng) 的 屬 性 取 自 同 一 個(gè) 域R S 仍 為 n目 關(guān) 系 , 由 屬 于 R或 屬 于 S的 元 組 組 成 可 表 示 為 : R S = t|t R t S R S 則 R S為 : 2)差(Except )vR和 S 具 有 相 同 的 目 n 相 應(yīng) 的 屬 性 取 自 同 一 個(gè) 域vR-S 仍 為 n目 關(guān) 系 , 由 屬 于 R而 不 屬 于 S的 所 有 元 組 組 成 可 表 示 為 : R -S = t|tR tS R - SR - S 則 R-S為 : 3)交(Intersect )vR和S具有
30、相同的目n相應(yīng)的屬性取自同一個(gè)域vRS仍為n目關(guān)系,由既屬于R又屬于S的元組組成可表示為:RS = t|t R t S RS = R (R-S)= ?RS 則 R S為 : 4)笛卡爾積(Cartesian Product)v關(guān) 系 R、 S的 笛 卡 爾 積 是 兩 個(gè) 關(guān) 系 的 元 組 的 集 合 所 組 成 的新 關(guān) 系 。vR S: 屬 性 是 R和 S的 組 合 ( n+m個(gè) 列 , 有 重 復(fù) ) 元 組 是 R和 S所 有 元 組 的 可 能 組 合 ( K1k2個(gè) 元 組 ) 是 R、 S的 無(wú) 條 件 連 接 , 使 任 意 兩 個(gè) 關(guān) 系 的 信 息 能 組 合 在 一
31、起 記 作 RS=t r ts |tr R tsS 2、專門(mén)的關(guān)系運(yùn)算v選 擇 、 投 影 、 連 接 、 除 法v符 號(hào) 介 紹 1)R,tR,tAi 2) A, tA, A 3) tr ts 4) 象 集 Z x 1) R, tR, tAi 設(shè) 關(guān) 系 模 式 為 R(A1, A2, , An) 它 的 一 個(gè) 關(guān) 系 設(shè) 為 R tR表 示 t是 R的 一 個(gè) 元 組 tAi則 表 示 元 組 t中 相 應(yīng) 于 屬 性 Ai的 一 個(gè) 分 量 2) A, tA, A 若 A=Ai1, Ai2, , Aik, 其 中 Ai1, Ai2, , Aik是 A1,A2, , An中 的 一 部
32、分 , 則 A稱 為 屬 性 列 或 屬 性 組 。 tA=(tAi1, tAi2, , tAik)表 示 元 組 t在 屬 性 列 A上諸 分 量 的 集 合 。 A則 表 示 A1, A2, , An中 去 掉 Ai1, Ai2, , Aik后 剩 余的 屬 性 組 。 3) tr ts R為 n目 關(guān) 系 , S為 m目 關(guān) 系 。 tr R, tsS, tr ts稱 為 元 組 的 連 接 。 tr ts是 一 個(gè) n + m列 的 元 組 , 前 n個(gè) 分 量 為 R中 的 一 個(gè) n元 組 ,后 m個(gè) 分 量 為 S中 的 一 個(gè) m元 組 。 4) 象 集 Zx 給 定 一 個(gè)
33、關(guān) 系 R( X, Z) , X和 Z為 屬 性 組 。 當(dāng) tX=x時(shí) , x在 R中 的 象 集 ( Images Set) 為 : Zx=tZ|t R, tX=x 它 表 示 R中 屬 性 組 X上 值 為 x的 諸 元 組 在 Z上 分 量 的 集 合v x 1在R中的象集 Zx1 =Z1,Z2,Z3,v x2在R中的象集 Zx2 =Z2,Z3,v x3在R中的象集 Zx3=Z1,Z3 1)選擇(Selection) v 從 關(guān) 系 R中 選 擇 符 合 條 件 的 元 組 構(gòu) 成 新 的 關(guān) 系vF(R) = t|tR F(t)= 真 v為 選 取 運(yùn) 算 符vF(R),表 示 從
34、R中 選 擇 滿 足 條 件 (F表 示 選 擇 條 件 )的 元 組v 選 取 運(yùn) 算 實(shí) 際 上 是 從 關(guān) 系 R中 選 取 使 邏 輯 表 達(dá) 式 為 真 的 元組 , 是 從 行 的 角 度 進(jìn) 行 的 運(yùn) 算 , 即 對(duì) 行 的 運(yùn) 算 。 選擇運(yùn)算練習(xí)A B C3 6 72 5 77 2 34 4 3R A5(R) A B C3 6 72 5 74 4 3A5 C=7(R) A B C 3 6 72 5 7 例 1: 查 詢 計(jì) 算 機(jī) 系 的 全 體 學(xué) 生 Sdept = IS (Student) 或 5 =IS (Student) 例 2: 查 詢 年 齡 小 于 20歲
35、的 男 同 學(xué) (Sage 20) (SSex=男) (Student) 或 (4 20) (3=男) (Student)注 意 :v對(duì)于 5 =IS,其 中 5為 DEPT的 屬 性 序 號(hào) , 表 示 從 Student中 挑 選 第 5個(gè) 分 量值 等 于 IS的 元 組 所 構(gòu) 成 的 關(guān) 系 。v 字 符 型 數(shù) 據(jù) 的 值 應(yīng) 該 使 用 單 引 號(hào) 括 起 來(lái) , 例 如 : IS, 計(jì) 算 機(jī) , 男 。 2)投影(Projection)v對(duì) R的 垂 直 分 割 , 從 關(guān) 系 R中 選 擇 若 干 屬 性 組 成 新 的 關(guān) 系vA1,A2,An(R),表 示 從 R中 選
36、 擇 屬 性 集 A1,A2,An組 成 新的 關(guān) 系v對(duì) 列 的 運(yùn) 算v投 影 運(yùn) 算 的 結(jié) 果 中 ,也 要 去 除 可 能 的 重 復(fù) 元 組 v 例 1: 查 詢 學(xué) 生 關(guān) 系 中 有 哪 些 系Sdept(Student) 或 5(Student) v 例 2: 查 詢 學(xué) 生 關(guān) 系 中 學(xué) 生 的 姓 名 和 所 在 系Sname,Sdept(Student)v 例 3: 查 詢 男 同 學(xué) 所 在 的 系Sdept(SEX=男 ( Student))v 例 4: 查 詢 學(xué) 號(hào) 為 95001的 學(xué) 生 的 課 程 號(hào) 及 成 績(jī) Cno,Grade(Sno=95001
37、( S C))其 中 5(Student) 表 示 關(guān) 系 Student只 取 第 5列 , 組 成 新 的 關(guān) 系 。 3)連接(Join) v從 R S的 笛 卡 爾 積 結(jié) 果 集 中 選 取 在 指 定 的 屬 性 集 上 滿 足 條 件 的 元 組 , 組 成 新 的 關(guān) 系 。vR S = | tr R ts S trAtsB vA和 B: 分 別 為 R和 S上 度 數(shù) 相 等 且 可 比 的 屬 性 組v是 比 較 運(yùn) 算 符 AB tr ts vR S是 在 R和 S的 笛 卡 爾 積 中 挑 選 第 a個(gè) 分 量 和 S中 第 b個(gè)分 量 滿 足 運(yùn) 算 的 元 組 。v
38、兩 類 常 用 連 接 運(yùn) 算 等 值 連 接 ( 為 “ ” 的 連 接 運(yùn) 算 ) 自 然 連 接 ( 一 種 特 殊 的 等 值 連 接 ) AB 不等連接則 結(jié) 果 為 等值連接R SR.B=S.B 自然連接R S 等值連接與自然連接的區(qū)別v 1. 等 值 連 接 中 不 要 求 相 等 屬 性 值 的 屬 性 名 相 同 , 而 自 然 連 接 要求 相 等 屬 性 值 的 屬 性 名 必 須 相 同 。 即 兩 關(guān) 系 只 有 在 同 名 屬 性 才能 進(jìn) 行 自 然 連 接 。 如 上 例 R中 的 C列 和 S中 的 D列 可 進(jìn) 行 等 值 連接 , 但 因 為 屬 性 名
39、不 同 , 不 能 進(jìn) 行 自 然 連 接 。v 2. 等 值 連 接 不 將 重 復(fù) 屬 性 去 掉 , 而 自 然 連 接 去 掉 重 復(fù) 屬 性 。 也可 以 說(shuō) , 自 然 連 接 是 去 掉 重 復(fù) 列 的 等 值 連 接 。 如 上 例 R中 的 B列和 S中 的 B列 進(jìn) 行 等 值 連 接 時(shí) , 結(jié) 果 有 兩 個(gè) 重 復(fù) 的 屬 性 列 B,而 進(jìn)行 自 然 連 接 時(shí) , 結(jié) 果 只 有 一 個(gè) 屬 性 列 B。 v 外 連 接 如 果 把 舍 棄 的 元 組 也 保 存 在 結(jié) 果 關(guān) 系 中 , 而 在 其 他 屬 性 上 填 空 值(Null), 這 種 連 接 就
40、 叫 做 外 連 接 ( OUTER JOIN) 。v 左 外 連 接 如 果 只 把 左 邊 關(guān) 系 R中 要 舍 棄 的 元 組 保 留 就 叫 做 左 外 連 接 (LEFT OUTER JOIN或 LEFT JOIN)v 右 外 連 接 如 果 只 把 右 邊 關(guān) 系 S中 要 舍 棄 的 元 組 保 留 就 叫 做 右 外 連 接 (RIGHT OUTER JOIN或 RIGHT JOIN)。 等值連接與自然連接的區(qū)別v1. 等 值 連 接 中 不 要 求 相 等 屬 性 值 的 屬 性 名 相 同 , 而 自 然 連接 要 求 相 等 屬 性 值 的 屬 性 名 必 須 相 同 。
41、 即 兩 關(guān) 系 只 有 在 同名 屬 性 才 能 進(jìn) 行 自 然 連 接 。v2. 等 值 連 接 不 將 重 復(fù) 屬 性 去 掉 , 而 自 然 連 接 去 掉 重 復(fù) 屬 性 。也 可 以 說(shuō) , 自 然 連 接 是 去 掉 重 復(fù) 列 的 等 值 連 接 。 R S自然連接 v 外 連 接 如 果 把 舍 棄 的 元 組 也 保 存 在 結(jié) 果 關(guān) 系 中 , 而 在 其 他 屬 性 上 填 空 值(Null), 這 種 連 接 就 叫 做 外 連 接 ( OUTER JOIN) 。v 左 外 連 接 如 果 只 把 左 邊 關(guān) 系 R中 要 舍 棄 的 元 組 保 留 就 叫 做 左
42、 外 連 接 (LEFT OUTER JOIN或 LEFT JOIN)v 右 外 連 接 如 果 只 把 右 邊 關(guān) 系 S中 要 舍 棄 的 元 組 保 留 就 叫 做 右 外 連 接 (RIGHT OUTER JOIN或 RIGHT JOIN)。 A B C B Da1 b1 2 b1 5a1 b2 4 b2 6a2 b3 6 b4 7a2 b4 8 b5 8R SA B C Da1 b1 2 5 a1 b2 4 6a2 b3 6 nulla2 b4 8 7null b5 null 8外 連 接 A B C Da1 b1 2 5a1 b2 4 6a2 b3 6 nulla2 b4 8 7左
43、 外 連 接 A B C Da1 b1 2 5a1 b2 4 6a2 b4 8 7null b5 null 8右 外 連 接 3、關(guān)系代數(shù)的應(yīng)用實(shí)例例 : 數(shù) 據(jù) 庫(kù) 中 有 三 個(gè) 關(guān) 系S(S#,SNAME,AGE,SEX)C(C#,CNAME,TEACHER)SC(S#,C#,GRADE)1. 查 詢 講 授 數(shù) 據(jù) 庫(kù) 課 程 的 教 師2. 檢 索 學(xué) 習(xí) 課 程 號(hào) 為 C2的 學(xué) 生 的 學(xué) 號(hào) 與 成 績(jī)3. 檢 索 學(xué) 習(xí) 課 程 號(hào) 為 C2的 學(xué) 生 的 學(xué) 號(hào) 與 姓 名4. 檢 索 選 修 課 程 名 為 Maths的 學(xué) 生 學(xué) 號(hào) 與 姓 名5. 檢 索 選 修 課 程 號(hào) 為 C2或 C4的 學(xué) 生 學(xué) 號(hào) 6. 檢 索 不 學(xué) C2課 的 學(xué) 生 姓 名 與 年 齡
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新人教版小學(xué)數(shù)學(xué)二年級(jí)下冊(cè)《總復(fù)習(xí)圖形的運(yùn)動(dòng)》ppt課件
- 鉆石小鳥(niǎo)電子商務(wù)案例分析x
- 貴州專版201x中考語(yǔ)文復(fù)習(xí)第二輪古詩(shī)文閱讀專題十文言文閱讀專項(xiàng)訓(xùn)練二課外古詩(shī)詞賞析課件
- 計(jì)算機(jī)發(fā)展簡(jiǎn)史
- 五年級(jí)最小公倍數(shù)
- 分?jǐn)?shù)除法應(yīng)用題(一)1
- 人教版小學(xué)科學(xué)三年級(jí)《空氣占據(jù)空間嗎》
- 腹腔鏡脾切除技巧探討
- 水下溷凝土的灌注
- 主題班會(huì)關(guān)注小環(huán)境共享大健康
- 章引言數(shù)字圖像處理
- 學(xué)情通報(bào)會(huì)二課件
- 醫(yī)療企業(yè)組織氣氛建設(shè)方案分析
- 數(shù)據(jù)中心供配電系統(tǒng)概述
- 小學(xué)三年級(jí)口算題卡課件