Database講義.docx_101
|
|
- 袁 嵇
- 7 years ago
- Views:
Transcription
1 一 資 料 庫 系 統 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 在 一 個 資 料 庫 系 統 (Database System) 中 可 分 為 資 料 庫 (Database) 與 資 料 庫 管 理 系 統 (Database Management System, DBMS) 兩 個 部 份 資 料 庫 簡 單 的 說 就 是 一 群 經 過 電 腦 整 合 後 的 資 料, 儲 存 在 一 個 或 多 個 檔 案 中, 而 管 理 這 個 資 料 庫 的 軟 體 就 稱 之 為 資 料 庫 管 理 系 統 名 詞 說 明 : 1. 資 料 (Data): 資 料 是 資 料 庫 中 儲 存 的 基 本 物 件 資 料 的 種 類 很 多, 包 括 文 字 圖 形 聲 音 影 像 等 都 是 資 料 2. 資 料 庫 : 一 群 整 合 性 的 資 料 記 錄 集 合 3. 資 料 庫 管 理 系 統 (DBMS) 是 由 一 組 電 腦 程 式 所 組 成, 用 來 定 義 管 理 和 處 理 資 料 庫 內 儲 存 的 資 料 資 料 庫 是 以 嚴 謹 的 結 構 將 零 散 的 資 料 組 合 而 成 為 有 用 的 資 料, 藉 由 資 料 庫 管 理 系 統 用 來 管 理 這 些 資 料 一 個 資 料 庫 系 統 的 組 成 有 四 大 部 分 : 1. 使 用 者 使 用 者 乃 是 資 料 庫 系 統 的 主 要 服 務 對 象, 依 其 使 用 資 料 庫 的 方 式 目 的 與 時 機 來 區 分, 可 以 將 使 用 者 分 為 下 列 三 種 : (1) 直 接 使 用 者 : 對 資 料 庫 管 理 系 統 下 達 命 令 的 使 用 者 (2) 應 用 程 式 : 透 過 程 式 介 面 的 呼 叫, 對 資 料 庫 管 理 系 統 下 達 命 令 的 應 用 軟 體 程 式 (3) 資 料 庫 管 理 師 (Database Administrator, 簡 稱 DBA): 透 過 資 料 庫 管 理 系 統 所 提 供 的 命 令, 扮 演 資 料 庫 管 理 系 統 與 上 述 兩 種 使 用 者 之 間 的 中 介 角 色 負 責 排 解 資 料 庫 管 理 系 統 在 使 用 上 的 疑 難 調 整 系 統 效 能 保 護 資 料 避 免 破 壞 等 等 2. 資 料 資 料 乃 是 資 料 庫 中 的 主 體, 在 資 料 庫 系 統 中 的 資 料 基 本 可 以 分 為 運 算 資 料 (Operational Data) 與 異 動 資 料 (Transaction Log) 運 算 資 料 就 是 使 用 者 所 要 面 對 的 處 理 對 象, 也 就 是 資 料 庫 中 所 存 放 的 資 料 ; 而 異 動 資 料 則 是 資 料 庫 管 理 系 統 為 了 對 資 料 庫 做 有 效 和 正 確 的 管 理, 依 照 使 用 者 所 下 達 的 命 令, 而 自 動 產 生 的 記 錄 資 料 頁 次 :1
2 3. 硬 體 在 資 料 庫 系 統 上 的 硬 體 設 備 包 括 電 腦 主 機 磁 碟 機 光 碟 機 ( 櫃 ) 備 份 裝 置 等 4. 軟 體 一 個 資 料 庫 系 統 所 包 含 的 軟 體 包 括 : (1) 資 料 庫 管 理 系 統 : 使 用 者 和 資 料 庫 之 間 的 介 面 (2) 應 用 程 式 : 即 是 之 前 所 提 透 過 各 種 程 式 介 面 使 用 資 料 庫 的 應 用 程 式, 也 是 資 料 庫 的 使 用 者 之 一 二 資 料 庫 管 理 系 統 的 基 本 功 能 1. 能 有 組 織 地 將 資 料 儲 存 起 來, 並 具 備 快 速 的 資 料 存 取 技 巧 2. 能 有 效 地 管 理 資 料 庫 的 綱 要 資 料 庫 綱 要 (Schema) 指 的 是 使 用 者 對 資 料 庫 的 定 義, 這 些 定 義 是 一 些 用 來 描 述 資 料 的 資 料 (Metadata), 包 含 資 料 的 欄 位 名 稱 資 料 型 態 與 合 法 使 用 者 等 等 3. 要 提 供 一 套 高 階 查 詢 語 言 (High-level Query Language) 供 使 用 者 使 用 4. 異 動 的 管 理 (Transaction Management): 由 於 系 統 中 可 能 有 多 個 使 用 者 同 時 對 同 一 個 資 料 庫 下 達 命 令, 要 求 資 料 庫 管 理 系 統 完 成 工 作 而 使 用 者 對 於 資 料 庫 的 一 個 完 整 動 作 稱 為 一 個 異 動 一 個 異 動 可 能 包 含 許 多 的 運 算 動 作, 所 以 資 料 庫 管 理 系 統 必 須 有 效 地 做 異 動 的 管 理, 以 防 止 同 時 執 行 的 異 動 因 交 錯 執 行 而 發 生 不 可 挽 救 的 錯 誤 而 管 理 這 些 異 動 時, 最 重 要 的 參 考 資 料 便 是 異 動 記 錄 5. 對 資 料 的 安 全 管 制 (Security Control) 一 般 作 法 包 括 : (1) 建 立 使 用 者 通 行 密 碼 (2) 針 對 資 料 的 新 增 (Insert) 刪 除 (Delete) 查 詢 (Select) 修 改 (Update) 等 權 利 分 別 訂 定 使 用 權 (3) 使 用 View( 視 界, 或 稱 概 觀 ) 來 隱 密 部 份 資 料 不 給 使 用 者 或 查 詢 6. 備 份 與 確 保 資 料 正 確 性 的 工 具 7. 提 供 使 用 者 獨 立 的 特 性 8. 提 供 DBA 用 來 管 理 系 統 與 資 料 庫 的 工 具 如 監 控 系 統 效 能 調 整 系 統 效 能 等 工 具 頁 次 :2
3 三 資 料 庫 的 資 料 結 構 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 資 料 庫 是 由 資 料 所 組 成, 而 這 些 資 料 可 分 為 位 元 (bit) 字 元 (character) 欄 位 field) 記 錄 (record) 檔 案 (file) 與 資 料 庫 (database) 等 幾 個 層 次 : 位 元 字 元 欄 位 記 錄 檔 案 在 電 腦 中 所 有 的 資 料 都 是 由 0 與 1 所 構 成, 然 後 由 8 個 bit 組 成 一 個 byte 構 成 字 元 的 單 位 一 個 或 數 個 字 元 可 以 構 成 一 個 欄 位 存 放 資 料, 而 一 個 或 數 個 欄 位 又 可 以 組 成 一 筆 記 錄 例 如 一 本 書 的 記 錄 包 括 書 號 書 名 作 者 與 價 格 等 欄 位 : 有 4 個 欄 位 書 號 書 名 作 者 價 格 由 欄 位 組 合 成 記 錄 每 個 欄 位 都 會 有 定 義 使 用 的 byte 數, 以 提 供 儲 存 資 料 的 空 間 例 如 一 些 書 目 資 料 的 記 錄 : F001 資 料 庫 系 統 應 用 張 三 200 F002 資 料 庫 設 計 實 務 李 四 450 兩 筆 記 錄 許 多 的 記 錄 會 存 放 在 檔 案 中, 將 這 些 檔 案 組 合 在 一 起 就 構 成 了 資 料 庫 基 本 上 在 資 料 庫 中 所 存 放 的 是 經 過 整 合 後 的 資 料, 可 避 免 資 料 的 重 複 而 且 便 於 修 改 及 管 理 頁 次 :3
4 四 資 料 庫 系 統 模 型 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 模 型 是 系 統 或 狀 態 之 完 整 抽 象 概 念 依 據 資 料 庫 系 統 的 演 進 和 結 構 的 差 異, 主 要 分 為 檔 案 式 階 層 式 網 路 式 和 關 聯 式 資 料 庫 模 型 1. 階 層 式 (Hierarchical Model)- 其 資 料 結 構 採 用 樹 狀 架 構 依 據 資 料 的 不 同 類 別, 將 資 料 分 門 別 類, 儲 存 在 不 同 階 層 之 下 階 層 式 資 料 庫 的 優 點 是 結 構 類 似 於 金 字 塔, 不 同 層 次 間 資 料 關 連 性 直 接 且 簡 單 ; 缺 點 則 是 因 為 資 料 以 縱 向 發 展, 橫 向 關 聯 難 以 建 立, 資 料 容 易 重 複 出 現, 造 成 管 理 不 便 付 款 方 式 Cash Visa Check MasterCard 客 戶 Gerardo Strom Edward Islas Lynda Tam Gerardo Strom Gerardo Strom Edward Islas Lynda Tam 商 品 Fan belt Motor Oil Brake light Fan belt Brake light Muffler Socket wrench set Muffler Motor Oil 2. 網 路 式 (Network Model)- 將 每 一 資 料 視 為 一 節 點 (node), 而 節 點 與 節 點 間 可 以 建 立 關 聯, 相 互 連 接 而 取 得 資 料 優 點 是 避 免 了 資 料 的 重 複 性 ; 缺 點 是 關 聯 性 較 複 雜, 尤 其 是 資 料 庫 變 得 越 來 越 大 的 時 候, 關 聯 性 的 維 護 會 變 得 非 常 麻 煩 付 款 方 式 Cash Visa Check MasterCard 客 戶 Gerardo Strom Edward Islas Lynda Tam 商 品 Socket wrench set Fan belt Motor Oil Muffler Brake light 3. 關 連 式 (Relational Model) 關 聯 是 資 料 庫 是 以 二 維 陣 列 來 儲 存 資 料, 依 照 行 與 列 的 關 係 形 成 的 記 錄 的 集 合 稱 之 為 資 料 表 格 (Table) 關 聯 是 資 料 庫 最 大 的 特 點 在 於 將 每 個 具 有 相 同 屬 性 頁 次 :4
5 的 資 料 獨 立 地 儲 存 在 一 個 表 格 中 對 任 何 一 個 表 格 而 言, 使 用 者 可 以 新 增 刪 除 修 改 資 料 表 中 的 任 何 資 料 它 解 決 了 階 層 式 資 料 庫 的 橫 向 關 聯 不 足 的 缺 點, 也 避 免 了 網 狀 式 資 料 庫 過 於 複 雜 的 問 題, 所 以 目 前 大 部 分 的 資 料 庫 都 是 採 用 關 聯 式 資 料 庫 系 統 的 模 型 頁 次 :5
6 五 關 聯 式 資 料 模 型 的 資 料 結 構 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 關 聯 式 名 詞 關 聯 表 (Relation) 屬 性 (Attribute) 值 組 (Tuple) 實 體 (Entity) 資 料 庫 名 詞 表 格 (Table) 欄 位 (Field) 欄 (Column) 記 錄 (Record) 列 (Row) 概 念 模 型 的 基 本 概 念 包 括 : 1. 實 體 (Entity) 客 觀 存 在 並 可 相 區 隔 的 事 務 稱 之 為 實 體 實 體 可 以 是 個 具 體 的 人 事 物, 也 可 以 是 抽 象 的 概 念 或 關 係, 例 如 一 位 職 員 一 位 學 生 一 個 部 門 一 門 課 學 生 的 一 次 選 課 部 門 的 一 次 訂 貨 老 師 與 系 所 的 工 作 關 聯 等 2. 屬 性 (Attribute) 實 體 所 具 有 的 某 一 個 特 性 稱 之 為 屬 性 一 個 實 體 可 以 包 含 若 干 個 屬 性, 例 如 學 生 實 體 可 以 由 學 號 姓 名 性 別 生 日 系 所 入 學 時 間 等 屬 性 組 成 3. 鍵 (Key) 唯 一 標 示 實 體 的 屬 性 集 稱 之 為 鍵 例 如 學 號 是 學 生 實 體 的 鍵, 學 號 可 以 代 表 特 定 的 某 一 位 學 生 4. 值 域 (Domain) 屬 性 取 值 的 範 圍 稱 為 該 屬 性 的 值 域 例 如 學 號 屬 性 的 值 域 為 10 位 數 的 正 整 數, 中 文 姓 名 屬 性 的 值 域 為 5 位 數 以 內 的 字 串 等, 成 績 屬 性 的 值 域 為 介 於 0 至 100 的 正 整 數 5. 關 係 (Relationship) 在 現 實 世 界, 事 物 內 部 間 或 事 物 與 事 物 之 間 常 存 在 有 關 係, 也 就 是 彼 此 間 的 關 聯 性, 這 些 關 係 再 資 訊 世 界 中 反 應 為 實 體 內 部 的 關 係 或 實 體 與 實 體 間 的 關 係 實 體 內 部 的 關 係 通 常 是 指 組 成 實 體 之 各 屬 性 的 關 係 ; 實 體 之 間 的 關 係 則 是 指 不 圖 實 體 之 間 的 關 聯 性 而 實 體 與 實 體 之 間 的 關 聯 性 可 以 分 為 下 列 三 種 : (1) 一 對 一 (1:1) 如 果 對 於 實 體 集 A 中 的 每 一 個 實 體, 在 實 體 集 B 中 至 多 有 一 個 實 體 與 之 相 關, 反 之 亦 然, 則 稱 實 體 集 A 與 實 體 集 B 具 有 一 對 一 關 係 例 如 一 個 班 級 只 有 一 位 導 師, 一 個 班 級 只 有 一 位 班 長, 則 導 師 與 班 級 之 關 係 具 有 一 對 一 關 係, 班 長 與 班 級 之 關 係 一 具 有 一 對 一 關 係 (2) 一 對 多 (1:n) 如 果 對 於 實 體 集 A 中 的 每 一 個 實 體, 在 實 體 集 B 中 至 有 n (n 0) 個 實 體 與 之 相 關, 反 之, 對 於 實 體 集 B 中 的 每 一 實 體, 在 實 體 集 A 中 最 多 只 有 一 個 實 體 與 之 相 關, 則 稱 實 體 集 A 頁 次 :6
7 與 實 體 集 B 具 有 一 對 多 關 係 例 如 一 個 班 級 有 多 位 學 生, 而 每 一 位 學 生 則 都 屬 於 某 一 班 級, 則 班 級 與 學 生 之 間 具 有 一 對 多 關 係 (3) 多 對 多 (m:n) 如 果 對 於 實 體 集 A 中 的 每 一 個 實 體, 在 實 體 集 B 中 至 有 n (n 0) 個 實 體 與 之 相 關, 反 之, 對 於 實 體 集 B 中 的 每 一 實 體, 在 實 體 集 A 中 亦 有 m (m 0) 個 實 體 與 之 相 關, 則 稱 實 體 集 A 與 實 體 集 B 具 有 多 對 多 關 係 一 門 課 程 有 多 位 同 學 選 修, 而 一 位 同 學 可 以 同 時 選 修 多 門 課 程, 則 課 程 與 學 生 之 間 具 有 多 對 多 關 係 在 關 聯 式 資 料 模 型 中, 資 料 結 構 是 以 表 格 式 的 方 式 來 組 織 資 料, 稱 之 為 關 聯 表 (Relation) 一 個 關 聯 表 有 一 個 關 聯 表 名 稱 (Relation name) 另 外, 關 聯 表 中 會 含 有 一 個 以 上 的 欄 位, 我 們 稱 這 些 欄 位 為 屬 性, 其 中 必 須 要 指 定 某 個 屬 性 子 集 (Attribute Subset) 為 主 鍵 (Primary key), 使 得 每 一 筆 記 錄 均 可 利 用 其 主 鍵 值 和 其 他 記 錄 來 區 別 之 將 一 個 關 聯 表 的 所 有 屬 性 集 合 起 來 稱 之 為 該 關 聯 表 的 屬 性 集 (Attribute set) 其 中 每 一 個 屬 性 都 會 具 有 屬 性 名 稱 (Attribute name) 與 資 料 類 型 (Data type), 每 個 資 料 型 態 都 會 有 其 所 屬 的 值 域 (Domain), 以 定 義 其 合 法 的 資 料 值 主 鍵 值 域 值 域 屬 性 名 稱 值 組 關 聯 表 屬 性 值 一 個 關 聯 表 的 屬 性 數 目 稱 為 該 關 聯 表 的 維 度 (Degree), 也 就 是 該 關 聯 表 之 屬 性 集 的 大 小 由 於 屬 性 集 是 一 個 集 合, 所 以 按 照 集 合 的 定 義, 我 們 可 以 知 道 :1. 在 一 個 關 聯 表 中 的 屬 性 名 稱 不 可 以 有 重 複 的 情 況 發 生 有 了 關 聯 表 綱 要 (Schema) 後, 我 們 便 可 將 資 料 存 入 關 聯 表 中, 存 入 的 單 位 是 一 筆 一 筆 的 記 錄 (Records), 而 一 筆 記 錄 是 由 許 多 屬 性 值 所 組 成 的 集 合, 在 關 聯 式 資 料 模 型 裡 稱 之 為 值 組 (Tuple) 所 以 一 個 關 聯 表 事 實 上 就 是 一 個 由 許 多 值 組 所 組 成 的 集 合, 而 關 聯 表 中 所 含 值 組 的 數 目 稱 之 為 該 關 聯 表 的 數 集 (Cardinality) 頁 次 :7
8 關 聯 表 的 特 性 : 2. 不 含 重 複 的 值 組 3. 值 組 之 間 是 沒 有 順 序 的 4. 屬 性 之 間 是 沒 有 順 序 的 5. 所 有 屬 性 值 都 是 單 元 值 (Atomic value), 不 可 以 是 一 個 集 合 頁 次 :8
9 六 關 連 式 資 料 庫 系 統 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 1. 表 格 : 關 連 式 資 料 庫 系 統 最 基 本 的 觀 念, 便 是 表 格 (Table 或 稱 Relation,file) 它 以 表 格 作 為 儲 存 單 位, 所 有 儲 存 在 資 料 庫 中 的 資 料, 都 以 表 格 形 式 處 理 一 個 表 格 是 儲 存 資 料 最 自 然 的 方 式, 表 格 由 行 (column 或 稱 field,attribute) 與 列 (row 或 稱 tuple,record) 所 組 成 每 一 行 儲 存 相 同 性 質 的 資 料, 每 一 列 則 包 含 許 多 不 同 性 質 的 資 料 項 目 每 一 列 又 稱 為 一 個 記 錄 (record), 每 一 行 可 視 為 記 錄 內 的 一 個 欄 位 (field) 2. 紀 錄 (Record) 欄 位 (Field) 和 內 容 值 (Value): 每 一 個 表 格 都 是 由 記 錄 和 欄 位 所 組 成 一 筆 記 錄 代 表 一 個 表 格 內 某 一 個 實 體 的 所 有 資 訊 ; 而 一 個 欄 位 則 是 儲 存 在 一 個 表 格 內 的 一 段 個 別 資 訊 3. 列 (Row) 和 行 (Column): 表 格 內 所 有 的 記 錄 和 欄 位 都 參 照 到 列 和 行, 如 上 圖 所 示, 關 聯 式 資 料 庫 的 表 格 通 常 都 是 以 格 狀 方 式 呈 現, 橫 向 的 列 代 表 表 格 的 記 錄, 而 縱 向 的 行 則 是 代 表 欄 位 而 行 與 列 交 叉 的 欄 位 則 稱 為 資 料 項 目 (Cell), 例 如 要 取 得 第 五 筆 記 錄 的 分 機 號 碼, 就 是 取 得 第 五 列 與 PhoneExt 行 相 交 的 欄 位 值, 也 就 是 該 筆 記 錄 之 PhoneExt 欄 位 的 資 料 項 目 內 容 4. 虛 值 (Null value): 對 每 一 筆 記 錄 而 言, 其 每 一 個 欄 位 均 應 存 有 一 實 際 的 資 料, 但 是 當 該 欄 位 沒 有 資 料 存 在 時 會 發 生 什 麼 情 形? 例 如 某 一 客 戶 表 格 專 用 來 存 放 客 戶 相 關 的 資 料, 其 中 有 一 欄 位 是 用 來 存 放 每 一 個 客 戶 的 傳 真 號 碼 但 是 如 果 該 客 戶 並 沒 有 或 不 知 道 傳 真 號 碼 時, 並 須 有 一 個 方 式 來 表 明 這 種 情 況 因 為 沒 有 資 料 和 空 資 料 是 不 一 樣 的, 例 如 一 個 字 串 (String) 內 容 是 空 的, 仍 表 示 有 此 一 字 串, 只 是 其 內 容 長 度 為 零 ; 而 沒 有 字 串 則 表 示 完 全 不 存 在 此 一 字 串 虛 值 也 就 是 代 表 完 全 不 存 在 的 意 思, 在 SQL Server 中 當 一 個 欄 位 的 內 容 是 Null 時, 就 表 示 該 欄 位 的 內 容 完 全 不 存 在, 如 果 您 常 式 對 一 個 有 Null 的 欄 位 做 計 算, 其 結 果 一 定 是 Null 頁 次 :9
10 5. 欄 位 屬 性 (Field properity): 表 格 中 每 一 個 欄 位 的 型 態 並 非 都 一 樣, 例 如 電 話 號 碼 和 生 日 欄 位 的 格 式 一 定 不 同, 因 此 資 料 庫 系 統 必 須 能 處 理 各 種 不 同 的 資 料 型 態, 在 SQL Server 裡 便 是 透 過 欄 位 屬 性 來 設 定 各 欄 位 處 理 的 資 料 型 態 種 類 如 下 圖, 顯 示 某 一 個 表 格 的 綱 要 (Schema) 資 訊, 顯 示 此 一 表 格 各 欄 位 所 能 儲 存 的 資 料 型 態 頁 次 :10
11 6. 視 界 (View): 雖 然 在 關 聯 式 資 料 庫 中 資 料 均 是 儲 存 在 表 格 內, 但 是 通 常 表 格 並 不 是 以 使 用 者 習 慣 的 次 序 來 呈 現, 例 如 資 料 庫 中 有 客 戶 檔 職 員 檔 訂 單 檔 和 訂 單 細 節 檔 等 等, 除 非 每 次 要 看 所 有 的 客 戶 資 料 或 是 訂 單 資 料, 否 則 類 似 下 列 其 情 形, 使 用 者 並 不 容 易 直 接 由 表 格 獲 知 所 需 的 資 訊 : (1) 要 查 看 各 個 訂 單 的 總 價 (2) 查 看 客 戶 資 料 要 依 據 各 客 戶 所 屬 國 家 分 別 來 檢 視 (3) 只 想 查 看 當 月 生 日 的 員 工 資 料 為 了 達 成 這 些 特 殊 的 需 求, 資 料 庫 提 供 了 一 個 工 具 稱 之 為 視 界 或 稱 概 觀 View 是 一 個 虛 擬 表 格, 是 從 實 際 的 表 格 中 透 過 查 詢 語 言 的 執 行 而 呈 現 出 來 的 虛 擬 表 格, 實 際 上 並 非 實 值 存 在 的 表 格 View 的 定 義 是 以 SELECT 敘 述 為 基 礎, 為 特 定 資 料 的 集 合 藉 由 View 來 存 取 資 料, 可 以 簡 化 查 詢 步 驟, 並 可 做 某 種 程 度 的 讀 取 權 限 控 制 頁 次 :11
12 七 鍵 值 類 型 1. 候 選 鍵 (Candidate Key): 主 鍵 是 一 個 唯 一 的 識 別 值 (Unique Identifier), 它 是 由 屬 性 集 的 子 集 所 構 成 其 實 在 一 個 關 聯 表 中 符 合 此 條 件 的 屬 性 子 集 可 能 會 有 好 幾 個, 這 些 屬 性 子 集 我 們 稱 之 為 候 選 鍵 而 主 鍵 便 是 由 一 堆 候 選 鍵 中 所 選 出 來 的 要 成 為 候 選 鍵 的 屬 性 子 集 必 須 要 具 備 下 列 兩 個 條 件 : (1) 唯 一 識 別 性 : 在 一 個 關 聯 表 中 絕 不 會 有 兩 個 值 組 的 屬 性 子 集 具 有 相 同 的 值 也 就 是 說 關 聯 表 中 各 值 組 的 屬 性 子 集 必 須 能 夠 唯 一 識 別 該 值 組 (2) 非 多 餘 性 (nonredundancy): 組 成 鍵 值 的 屬 性 必 須 全 部 存 在 才 能 達 成 唯 一 識 別 的 特 性 ( 最 小 性 : 一 個 屬 性 子 集 是 滿 足 唯 一 性 的 最 小 屬 性 子 集 合 ) 如 果 我 們 有 多 個 候 選 鍵, 在 選 擇 主 鍵 時 可 以 參 考 下 列 四 個 原 則 : (1) 選 擇 永 遠 不 會 變 更 其 值 的 屬 性 (2) 確 保 不 會 是 虛 值 的 屬 性 (3) 不 要 用 人 工 才 能 解 讀 的 編 號 鍵 值 例 如 假 設 某 公 司 旗 下 有 多 個 生 產 廠, 產 品 編 號 ML10045 中 的 ML 代 表 某 一 生 產 廠 代 碼, 但 該 生 產 廠 代 碼 必 須 透 過 另 一 代 碼 檔 轉 換 成 說 明 才 可 知 該 工 廠 名 稱, 若 將 來 該 代 碼 檔 修 改 或 資 料 異 動, 則 可 能 造 成 產 品 編 號 解 譯 (parsing) 錯 誤 (4) 儘 量 以 單 一 的 屬 性 來 代 替 整 筆 值 組 如 果 都 沒 有 適 合 的 欄 位 集, 可 以 考 慮 新 增 一 欄 位, 儲 存 唯 一 性 的 流 水 號 2. 替 代 鍵 (Alternate Key) 由 數 個 候 選 鍵 中 選 擇 其 中 一 個 作 為 主 鍵 時, 則 其 他 剩 下 來 的 候 選 鍵 便 稱 為 替 代 鍵 3. 主 鍵 (Primary Key) 主 鍵 是 由 一 組 欄 位 所 組 成, 用 來 區 別 表 格 中 的 每 一 筆 記 錄 凡 是 主 鍵 的 欄 位 就 不 能 是 虛 值 (NULL), 因 此 凡 是 宣 告 為 Primary Key 的 欄 位, 系 統 會 自 動 為 其 建 立 NOT NULL 的 限 制 ; 並 自 動 建 立 唯 一 索 引 (Unique Index) 宣 告 為 LONG 和 LONG RAW 資 料 型 態 的 欄 位 不 能 做 為 主 鍵, 4. 外 來 鍵 (Foreign Key) 資 料 相 互 之 間 一 致 性 限 制 功 能, 可 以 確 保 資 料 庫 資 料 的 一 致 資 料 相 互 間 一 致 性 限 制, 是 透 過 頁 次 :12
13 主 鍵 與 外 來 鍵 的 結 合 來 達 成 關 聯 式 表 格 間 的 關 係 必 須 藉 由 外 來 鍵 來 建 立, 因 為 對 某 一 表 格 的 外 來 鍵 而 言, 其 詳 細 的 資 料 是 儲 存 在 另 外 一 個 表 格 之 中, 因 此 稱 為 外 來 鍵 (Foreign key) 書 目 資 料 表 作 者 資 料 表 (Primary key) (Foreign key) (Foreign key) * 書 目 編 號 題 名 作 者 編 號 分 館 代 碼 : * 作 者 代 碼 作 者 姓 名 稱 謂 : (Primary key) 館 別 資 料 表 * 分 館 代 碼 分 館 名 稱 地 址 : (Primary key) 書 籍 編 號 與 作 者 編 號 欄 位 分 別 是 書 目 資 料 表 與 作 者 資 料 表 的 Primary key 為 了 建 立 兩 個 表 格 之 間 的 關 聯 性, 則 在 書 目 資 料 表 需 要 有 一 Foreign Key 對 應 到 作 者 資 料 表 的 Primary Key, 這 種 機 制 稱 之 為 參 考 完 整 性 (Referential Integrity) 外 來 鍵 的 值 必 須 來 自 於 其 所 參 考 到 的 表 格 當 自 行 輸 入 不 是 NULL 的 值, 並 且 該 值 不 存 在 其 所 參 考 表 格 的 記 錄 中 時, 系 統 會 拒 絕 該 資 料 的 輸 入, 如 此 可 避 免 打 斷 兩 個 表 格 之 間 的 關 聯 性 頁 次 :13
14 八 資 料 庫 系 統 處 理 架 構 之 演 進 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 1. 第 一 階 段 : 集 中 式 處 理 架 構 2. 第 二 階 段 : 主 / 從 式 架 構 3. 第 三 階 段 : 三 層 式 處 理 架 構 4. 第 四 階 段 : 同 質 性 分 散 式 處 理 架 構 5. 第 五 階 段 : 異 質 性 分 散 式 處 理 架 構 6.. 第 六 階 段 : 行 動 計 算 處 理 九 關 聯 式 資 料 庫 廠 商 1.Oracle 由 ORACLE 公 司 所 發 展, 在 台 灣 稱 之 為 美 商 甲 骨 文 公 司 ( 2.Informix-OnLine Informix SE(Standard Engine) 由 Informix Software 公 司 所 發 展, 在 台 灣 稱 為 英 孚 美 公 司 ( 現 已 由 IBM 所 併 購 3.Sybase SQL Server 由 Sybase 公 司 所 發 展, 在 台 灣 稱 為 賽 貝 斯 公 司 此 產 品 目 前 改 名 為 Sybase Adaptive Server ( 4.Ingres 最 早 由 加 州 柏 克 萊 校 區 的 M. Stonebraker 教 授 所 發 展, 而 後 成 為 資 料 庫 產 品, 現 在 是 Computer Associates(CA, 在 台 灣 稱 為 組 合 國 際 ) 的 一 個 部 門 ( 5.Microsoft SQL Server 由 Microsoft 公 司 所 發 展, 最 早 是 和 Sybase 合 作 發 展, 目 前 則 是 各 自 獨 立 發 展 ( 6.DB2 為 IBM 公 司 所 發 展 ( 7.Progress 由 Progress Software Corp. 發 展 ( 8.Gupta SQL Base 由 Gupta Corp. 發 展, 現 已 改 名 為 Centura SQL Base ( 9.DBMaker 是 由 國 內 凌 群 電 腦 公 司 所 發 展 ( 除 了 商 業 版 本 之 外, 國 際 間 亦 有 許 多 開 放 原 始 碼 的 非 商 業 使 用 免 費 資 料 庫 系 統, 如 : 1. PostgreSQL 最 初 由 加 州 大 學 伯 克 萊 分 校 計 算 機 科 學 系 開 發, 倡 導 了 很 多 物 件 導 向 的 觀 念 ( 2. MySQL TCX 公 司 發 展 的 資 料 庫 系 統 ( 後 被 sun( 昇 陽 ) 公 司 併 購 之 後 sun 被 Oracle 公 司 併 購, 現 MySQL 歸 屬 於 Oracle 公 司 ( 註 :MySQL 的 官 方 發 音 是 My Ess Que Ell, 不 是 MY-SEQUEL ) 頁 次 :14
15 十 什 麼 是 SQL 1.SQL(Structured Query Language) 是 在 關 連 式 資 料 庫 中, 定 義 和 處 理 資 料 的 標 準 語 言, 也 是 一 個 在 商 業 間, 應 用 最 廣 泛 的 資 料 庫 語 言 並 非 要 SQL 才 能 處 理 關 連 式 資 料 庫, 而 是 SQL 是 大 多 數 關 連 式 資 料 庫 的 標 準 介 面 2. 關 連 式 資 料 庫 必 須 藉 由 SQL 的 功 能, 支 援 執 行 資 料 的 定 義 (Definition) 處 理 (Manipulation) 和 控 制 (Control) 3.SQL 提 供 程 式 和 使 用 者 用 於 存 取 資 料 庫 系 統 內 資 料 的 標 準 命 令 集 十 一 SQL 的 起 源 1.SQL 最 早 起 始 於 1970 年, 由 IBM 在 San Jose, California 研 究 實 驗 室 的 E. F. Codd 發 表 將 資 料 組 成 表 格 的 資 料 關 連 模 型 的 查 詢 代 數 與 應 用 原 則 (Codd's Relational Algebra) 年, 同 一 實 驗 室 中 的 D. D. Chamberlin 和 R. F. Boyce 對 Codd's Relational Algebra 制 定 了 一 套 規 範 語 言 -SEQUEL(Structured English QUEry Language) 3. 兩 年 後,D. D. Chamberlin 將 發 展 的 新 版 本 SEQUEL/2 建 立 在 IBM 的 資 料 庫 管 理 系 統 System R 上 1980 年 時, 改 名 為 SQL 自 此, 隨 著 關 連 式 資 料 庫 管 理 系 統 的 發 展,SQL 廣 泛 的 被 應 用 在 各 種 資 料 庫 管 理 系 統 上 年 IBM 發 表 SQL/DS 後, 關 聯 式 資 料 庫 領 域 可 以 說 是 百 家 爭 鳴, 首 先 是 Relational Software 公 司 ( 後 來 更 名 為 Oracle) 發 表 第 一 個 關 聯 式 資 料 庫 管 理 系 統 (RDBMS), 並 結 合 SQL 成 為 第 一 代 上 市 發 行 RDBMS 的 主 流 十 二 SQL 標 準 1. 為 了 達 到 資 料 庫 定 義 與 應 用 模 組, 在 各 種 不 同 的 關 連 式 資 料 庫 管 理 系 統 間 的 可 攜 性, 以 及 提 供 關 連 式 資 料 庫 管 理 系 統, 在 發 展 上 的 共 通 準 則 由 ANSI 的 X3H2 小 組 負 責 訂 定 了 SQL 標 準 (ANSI SQL), 後 來 也 被 ISO 納 入 為 國 際 上 所 認 同 的 標 準 2. 目 前 最 新 SQL 標 準 為 SQL99 (ANSI X ) 3. 大 部 分 關 連 式 資 料 庫 管 理 系 統 遵 循 ANSI SQL 89 頁 次 :15
16 十 三 SQL 功 能 SQL 指 令 雖 稱 為 查 詢 語 言, 卻 涵 蓋 了 下 列 資 料 庫 語 言 基 本 的 功 能 : 1. 建 立 資 料 庫 及 其 表 格 欄 位 2. 增 加 刪 除 修 改 資 料 庫 的 資 料 內 容 3. 能 執 行 各 種 查 詢 (query) 資 料 的 動 作, 並 組 合 一 組 資 料 成 為 有 意 義 的 資 訊 十 四 SQL 指 令 集 SQL 指 令 包 含 許 多 處 理 資 料 庫 的 命 令, 這 些 指 令 集 依 功 能 區 分 為 三 部 份 : 1. 資 料 定 義 語 言 (Data Definition Language, 簡 稱 DDL): 用 定 義 資 料 庫 的 綱 要, 如 表 格 名 稱 所 含 有 的 欄 位 與 資 料 型 態 整 合 限 制 條 件 等 等 2. 資 料 處 理 語 言 (Data Manipulation Language, 簡 稱 DML): 用 來 處 理 資 料 庫 中 的 資 料, 包 括 資 料 的 新 增 (INSERT) 刪 除 (DELETE) 修 改 (UPDATE) 與 選 擇 (SELECT) 等 運 算 3. 交 易 控 制 語 言 (Transaction Control Language, 簡 稱 TCL 或 DCL): 用 來 處 理 資 料 庫 的 使 用 權 限 與 安 全 管 制 功 能 可 以 控 制 使 用 者 是 否 可 以 合 法 使 用 資 料 庫 是 否 可 以 合 法 對 資 料 庫 的 表 格 執 行 新 增 刪 除 新 增 維 護 或 選 擇 等 動 作 是 否 可 以 對 資 料 庫 做 備 份 等 等 的 管 制 有 些 人 將 SQL 戲 稱 為 Scarcely Qualifying as a Language ( 還 不 夠 格 稱 為 程 式 語 言 ) 這 麼 說 其 實 也 有 道 理,SQL 實 際 上 並 不 是 程 式 語 言, 而 可 以 視 為 一 種 資 料 庫 程 式 設 計 函 式 庫 就 像 一 般 我 們 都 稱 呼 SQL 的 指 令 為 查 詢 指 令, 但 這 也 並 不 表 示 SQL 中 所 有 指 令 的 內 容 都 在 對 資 料 庫 做 查 詢 的 動 作 頁 次 :16
17 十 五 欄 位 屬 性 ( 資 料 型 態 ) 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 建 立 SQL 的 表 格 時, 必 須 宣 告 各 行 欄 位 的 資 料 型 態 SQL Server 基 本 的 欄 位 資 料 型 態 包 括 : 資 料 型 態 說 明 BINARY 儲 存 二 進 位 資 料 DATE&TIME 儲 存 日 期 時 間 資 料 FLOAT 和 REAL 儲 存 浮 點 資 料 MONEY 儲 存 幣 值 資 料 TIMESTAMP 表 格 易 動 標 籤 IMAGE 儲 存 圖 形 資 料 CHAR 儲 存 字 串 資 料 DECIMAL 儲 存 定 數 字 資 料 INT 儲 存 整 數 資 料 BIT 儲 存 邏 輯 資 料 (0/1) TEXT 儲 存 大 量 文 字 資 料 1. BINARY 型 態 (1) binary[(n)] 此 型 態 欄 位 用 來 儲 存 binary 資 料 n 是 宣 告 的 長 度, 以 位 元 組 為 單 位,n 必 須 介 於 1 到 8000 之 間 (2) varbinary[(n)] verbinary 型 態 同 binary, 但 具 備 變 動 長 度 的 特 性 2. CHAR 型 態 (1) char[(n)] char 型 態 的 欄 位 用 來 儲 存 字 元 資 料, 最 多 可 儲 存 8000 個 字 元 只 要 一 經 宣 告, 不 管 輸 入 的 資 料 長 度 為 何, 將 固 定 佔 用 n 個 位 元 組 的 儲 存 空 間 如 果 輸 入 字 串 長 度 小 於 n 時, 若 該 欄 位 不 允 許 null 值, 則 系 統 會 將 不 足 部 分 補 空 白 ; 若 該 欄 位 允 許 null 值, 則 不 足 部 分 不 補 空 白 若 輸 入 資 料 超 過 宣 告 的 長 度, 則 其 超 出 部 分 會 被 截 掉 (2) varchar[(n)] varchar 型 態 同 char 型 態, 不 過 它 是 具 有 變 動 長 度 的 特 性 n 是 此 型 態 儲 存 資 料 的 最 大 允 許 長 度,n 的 範 圍 可 以 為 1 到 8000 此 型 態 資 料 實 際 佔 用 的 儲 存 空 間 視 其 輸 入 資 料 長 度 而 定, 但 是 輸 入 資 料 中 的 後 置 空 白 (trailing blanks) 部 分 將 不 會 被 存 入, 所 以 也 不 列 入 佔 用 空 間 記 數 註 :SQL Server 的 欄 位 若 需 要 儲 存 為 unicode 字 碼, 必 須 宣 告 為 : nvarchar 或 nchar 型 態, 其 中 n 表 示 national 之 意 頁 次 :17
18 3. DATE&TIME 型 態 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 此 型 態 用 來 儲 存 日 期 - 時 間 資 料 顯 示 時 內 定 的 顯 示 格 式 為 MM DD yyyy hh:mm AM( 或 PM) (1) Datetime 此 型 別 的 欄 位 使 用 兩 個 4 bytes 的 整 數 儲 存 資 料, 其 中 4 個 位 元 組 存 放 從 西 元 1900 年 1 月 1 日 到 該 日 之 前 或 之 後 所 經 過 的 天 數, 另 外 4 個 位 元 組 則 儲 存 從 零 時 起 至 該 時 間 所 經 過 的 微 秒 數 (milliseconds) 若 輸 入 資 料 省 略 時 間 部 分, 系 統 將 以 12:00:00:000AM 作 為 時 間 內 定 值 (2) Smalldatetime 同 datetime 型 態, 但 儲 存 的 資 料 較 不 精 確, 此 型 態 只 佔 用 4 個 位 元 組 的 儲 存 空 間 其 中 兩 個 位 元 組 用 來 儲 存 日 期, 另 兩 個 位 元 組 用 來 儲 存 時 間, 故 此 型 別 允 許 儲 存 的 日 期 範 圍 為 西 元 1990 年 1 月 1 日 至 西 元 2079 年 6 月 6 日, 精 確 度 到 分 鐘 4. FLOAT 和 REAL 型 態 float 和 real 型 態 的 欄 位 是 用 來 儲 存 無 法 以 有 限 位 數 表 示 的 數 值 資 料, 例 如 無 窮 小 數 (1) float[(n)] n 可 從 1 到 53, 表 示 此 型 態 的 二 進 位 精 確 度 其 值 的 範 圍 為 -1.79E+308 到 1.79E+308 (2) real[(n)] 和 float 型 態 相 同 n 可 為 1 到 7, 因 此 最 多 可 以 有 7 位 精 確 度, 其 值 範 圍 為 -3.40E+38 到 3.40E MONEY 型 態 money 型 態 的 資 料 是 一 具 有 4 位 小 數 的 decimal 型 態 數 值 輸 入 時 必 須 在 數 值 前 加 入 幣 別 符 號, 如 果 是 負 值 則 幣 別 符 號 後 面 加 - 符 號, 不 需 要 每 三 個 字 加 逗 號, 但 在 列 印 時 會 自 動 幫 你 加 印 逗 號 此 型 態 的 資 料 最 多 只 能 有 四 位 小 數 位 數, 如 果 需 要 更 多 小 數 位 數, 可 改 使 用 decimal 型 態 6. TIMESTAMP 型 態 雖 然 命 名 為 timestamp, 但 此 一 型 態 完 全 和 日 期 時 間 無 任 何 關 聯 它 相 當 於 binary(8) 或 varbinary(8) 型 別 但 是 它 有 一 重 要 的 特 性, 就 是 在 含 有 此 一 型 態 欄 位 的 row 每 次 被 UPDATE 或 INSERT 時, 此 欄 位 值 即 會 被 異 動, 而 且 在 同 一 資 料 庫 內 該 欄 位 值 是 唯 一 的 每 一 資 料 表 格 內 僅 能 有 一 個 timestamp 型 態 的 欄 位 而 且 必 須 以 timestamp 命 名 7. IMAGE 型 態 image 型 態 欄 位 用 來 儲 存 大 量 的 二 位 元 資 料 (binary data), 通 常 用 來 儲 存 圖 形 檔 此 一 型 態 的 欄 位 理 論 上 最 大 可 儲 存 2,147,483,647 個 位 元 組 的 資 料, 但 實 際 上 必 須 視 硬 碟 大 小 而 定 頁 次 :18
19 8. DECIMAL 型 態 對 於 SQLServer 而 言,decimal 和 numeric 視 為 相 同 的 型 態, 用 來 儲 存 具 有 小 數 點 而 且 數 值 確 定 的 數 值 不 像 float 和 real 是 用 來 儲 存 近 似 值 宣 告 的 方 式 為 : decimal[(p[,s])] numeric[(p[,s])] 對 SQL Server 而 言,decimal 和 numeric 視 為 相 同 的 資 料 型 態, 它 們 可 用 來 儲 存 具 有 小 數 點 的 數 值 不 像 float 和 real 是 用 來 儲 存 近 視 值,decimal 和 numeric 試 用 來 儲 存 確 定 的 值 s 表 示 小 數 位 數,p 表 示 精 確 度 (precision) 例 如 decimal(10,3) 表 示 共 有 七 位 整 數 三 位 小 數, 此 欄 位 精 確 度 為 十 位 若 未 指 定 時, 系 統 預 設 為 18 位 精 確 度, 內 定 小 數 位 數 為 0 9. INT 型 態 int 整 數 型 態 可 儲 存 2,147,483,648 到 2,147,483,647 間 的 整 數 smallint 型 態 可 儲 存 到 間 的 整 數 tinyint 型 態 可 儲 存 間 的 整 數 10. BIT 型 態 bit 型 態 的 欄 位 佔 用 一 個 位 元 組 的 空 間, 其 值 為 0 或 1 或 null 如 果 輸 入 異 於 0 或 1 的 值, 都 會 被 視 為 TEXT 型 態 text 型 態 欄 位 用 來 儲 存 任 何 文 字 資 料, 通 常 用 來 儲 存 一 些 memo 文 件 等 資 料 理 論 上 此 一 型 態 的 欄 位 最 大 可 儲 存 2,147,483,647 個 位 元 組 的 資 料, 但 實 際 上 必 須 視 硬 碟 大 小 而 定 頁 次 :19
20 十 六 SQL 命 令 1. 資 料 定 義 語 言 (DDL) ALTER CREATE DROP 更 改 建 立 刪 除 資 料 庫 的 表 格 (Table) 是 由 列 (row) 和 行 (column) 所 組 成 的 二 為 矩 陣, 可 以 使 用 CREATE TABLE 來 產 生 Table 一 旦 Table 產 生 後, 就 可 以 開 始 填 入 資 料 產 生 新 的 表 格 如 果 覺 得 有 不 妥 之 處, 想 改 變 Table 結 構 時, 可 使 用 ALTER TABLE 指 令 當 Table 沒 有 任 何 利 用 價 值 時, 可 使 用 DROP TABLE 將 它 從 資 料 庫 中 完 全 刪 除 掉 DDL 指 令 練 習 : (1) 建 立 表 格 CREATE TABLE ORD (ORDER_NUMBER INTEGER NOT NULL, CLIENT_NAME VARCHAR(10), SALES VARCHAR(10), ORDER_DATE DATETIME) (2) 增 加 新 的 欄 位 ALTER TABLE ORD ADD DESCRIPTION VARCHAR(20) DEFAULT 'NONE' ALTER TABLE ORD ADD TEMP VARCHAR(20) (3) 改 變 欄 位 的 型 態 ( 相 同 資 料 型 態, 但 長 度 增 加 ) ALTER TABLE ORD ALTER COLUMN CLIENT_NAME VARCHAR(30) (4) 刪 除 欄 位 ALTER TABLE ORD DROP COLUMN TEMP (5) 建 立 一 個 視 界 (VIEW) CREATE VIEW CODE_CITY AS SELECT CODE, DESCRIPTION FROM SYS_CODE WHERE CODE_TYPE= CITY ; (6) 刪 除 一 個 表 格 DROP TABLE ORD; (7) 刪 除 一 個 視 界 DROP VIEW CODE_CITY; 頁 次 :20
21 2. 資 料 處 理 語 言 (DML) 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) DELETE INSERT SELECT UPDATE 刪 除 新 增 選 擇 修 改 (1) 查 詢 功 能 簡 介 : SELECT 欄 位 項 目 FROM table 名 稱 [WHERE 查 詢 條 件 ] [GROUP BY 分 類 欄 位 項 目 ] [HAVING 查 詢 條 件 ] [ORDER BY 排 序 欄 位 項 目 ] 例 : 列 出 表 格 CUSTOMER 所 有 內 容 SELECT * FROM CUSTOMER; 例 : 列 出 表 格 CUSTOMER 中, 地 址 在 台 北 市 的 客 戶 姓 名 SELECT NAME FROM CUSTOMER WHERE CITY= 台 北 市 ; (2) WHERE 運 算 子 : WHERE 子 句 設 定 查 詢 的 條 件, 取 出 特 定 的 資 料 GROUP BY 子 句 是 從 WHERE 所 選 出 的 資 料 從 新 組 合, 這 些 組 合 是 根 據 GROUP BY 子 句 所 指 定 的 欄 位,HAVING 是 隸 屬 在 GROUP BY 子 句 內, 作 用 與 WHERE 類 似, 但 它 是 過 濾 由 GROUP BY 中 所 選 出 的 資 料 當 結 合 兩 個 表 格 作 為 複 合 查 詢 時 ( 稱 為 JOIN), 且 有 共 同 的 KEY 時,WHERE 條 件 必 須 加 以 限 定 各 表 格 的 KEY 需 相 等, 否 則 將 有 相 乘 的 結 果 產 生 CUSTOMER CUSTOMER_ID NAME CITY... INVOICE INVOICE_ID CUSTOMER_ID SALE_DATE... SELECT NAME,INVOICE_ID,SALE_DATE FROM CUSTOMER,INVOICE WHERE CUSTOMER.CUSTOMER_ID= INVOICE.CUSTOMER_ID; 頁 次 :21
22 (3) JOIN 使 用 別 名 的 技 巧 : 為 了 避 免 冗 長 的 table 名 稱, 我 們 可 以 定 義 table 的 別 名 (Alias), 這 table 的 別 名 是 使 用 較 短 名 稱 取 代 原 table 名 稱 例 如 : SELECT BRN, B.NAME, AUTHOR, P.* FROM BOOK B, PUBLISHER P WHERE B.PUBLISHER=P.PID 這 例 子 中 使 用 B 代 替 BOOK,P 代 替 PUBLISHER, 這 些 別 名 只 在 該 查 詢 命 令 內 有 效 (4) 虛 值 Null 如 果 一 列 的 某 行 缺 少 值, 就 說 該 行 是 空 值 (Null), 或 者 說 包 含 一 個 空 值 虛 值 可 出 現 在 任 何 型 態 的 行 上 要 測 試 一 個 虛 值, 只 能 使 用 比 較 操 作 IS NULL 和 IS NOT NULL 例 :SELECT * FROM CUSTOMER WHERE TELPHONE IS NULL; DML 指 令 練 習 (1) 修 改 功 能 簡 介 : UPDATE table 名 稱 SET ( 欄 位 名 稱, 欄 位 名 稱...)=( 子 查 詢 ) [WHERE 查 詢 條 件 ] UPDATE table 名 稱 SET 欄 位 1= 值 1, 欄 位 2= 值 2... [WHERE 查 詢 條 件 ] 例 : 某 銀 行 剛 和 VISA 發 卡 公 司 簽 下 合 同, 同 意 提 供 給 該 VISA 公 司 的 客 戶 10% 的 貸 款, 你 可 使 用 下 列 命 令 來 更 新 : UPDATE TRANSMASTER SET NET_AMOUNT=NET_AMOUNT*0.9 WHERE CUSTID = (SELECT CUSTID FROM CUSTOMER WHERE COMPANY= SA ); (2) 新 增 功 能 簡 介 : INSERT INTO table 名 稱 [( 欄 位 名 稱, 欄 位 名 稱...)] VALUES ( 欄 位 內 容, 欄 位 內 容...) (3) 刪 除 功 能 簡 介 : DELETE FROM table 名 稱 [WHERE 查 詢 條 件 ] 頁 次 :22
23 3. 交 易 控 制 語 言 (TCL): 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) COMMIT ROLLBACK 確 認 交 易 放 棄 交 易 Transaction 是 指 每 次 所 交 付 執 行 的 一 連 串 的 動 作, 而 這 些 動 作 形 成 一 個 工 作 單 位, 且 每 次 的 transaction 必 須 是 完 全 執 行, 或 完 全 不 執 行, 而 不 允 許 只 執 行 部 分 本 質 上 每 一 個 SQL 指 令 敘 述 即 是 一 個 transaction 例 如 : Update course set score=score*1.5 此 指 令 敘 述, 會 修 改 course 表 格 中 所 有 資 料, 要 就 全 部 做 完, 要 就 全 不 作, 而 不 會 只 做 一 半 萬 一 做 到 一 半, 系 統 當 機 時 怎 麼 辦? 當 資 料 庫 系 統 重 新 啟 動 時, 假 若 資 料 庫 未 損 毀, 則 系 統 會 執 行 一 個 復 原 (recovery) 的 動 作, 回 復 先 前 的 狀 態 ( 註 : 此 復 原 動 作 需 視 不 同 資 料 庫 系 統 而 有 不 同 動 作 模 式 ) TCL 指 令 包 括 :COMMIT, ROLLBACK, 藉 由 BEGIN TRANSACTION 啟 動 交 易 的 控 制 (1)COMMIT 結 束 當 前 交 易 (Transaction), 使 當 前 交 易 所 執 行 的 全 部 修 改 永 久 化, 同 時 刪 除 交 易 所 設 定 的 全 部 保 留 點 (Savepoint), 釋 放 該 交 易 執 行 中 所 建 立 的 鎖 (Lock) (2)ROLLBACK 結 束 交 易, 撤 銷 當 前 交 易 中 的 全 部 改 變, 刪 除 該 交 易 中 所 設 定 的 全 部 保 留 點, 釋 放 該 交 易 執 行 中 所 建 立 的 鎖 語 法 : BEGIN TRANSACTION name COMMIT TRANSACTION name ROLLBACK TRANSACTION SAVE TRANSACTION name ( 可 Rollback 至 此 name 所 異 動 的 部 分 ) 範 例 1 COMMIT 下 列 範 例 包 含 兩 個 指 令 敘 述, 一 個 是 修 改 學 生 姓 名, 一 個 是 新 增 該 生 修 習 科 目 : begin transaction 頁 次 :23
24 update student set name=' 張 叄 ' where id=' ' insert into course (id,subject,score) values (' ','LM',79) commit transaction 由 於 兩 個 指 令 敘 述 包 含 在 begin transaction 和 commit transaction 之 中, 資 料 庫 系 統 會 保 證 這 兩 個 指 令 一 定 會 完 全 做 完, 而 不 會 只 做 一 辦, 以 避 免 導 致 學 生 資 料 與 選 課 資 料 不 一 致 情 形 範 例 2 ROLLBACK 若 將 上 述 範 例 的 commit 更 換 成 rollback: begin transaction update student set name=' 張 三 ' where id=' ' delete from course where id= and subject= LM rollback transaction 當 系 統 遇 到 rollback 指 令 時, 便 會 復 原 所 有 的 資 料 變 動, 回 到 begin transaction 前 的 狀 態 範 例 3 儲 存 點 置 : 交 易 控 制 包 含 儲 存 點 儲 存 點 可 以 使 資 料 在 復 原 時, 復 原 至 先 前 特 定 的 SQL 敘 述 執 行 位 begin tran save tran item1 update student set name=' 張 參 豐 ' where id=' ' insert into course (id,subject,score) values (' ','LM',79) save tran item2 insert student values (' ',' 孫 九 ',' 台 北 縣 新 店 市 ','05/26/1982','M') insert into course values (' ','LM','80') insert into course values (' ','CO','75') save tran item3 update course set score='85' where id=' ' and subject='co' delete course where id=' ' -- rollback tran item3 -- rollback tran item2 -- rollback tran item1 commit tran 頁 次 :24
25 十 七 SQL 運 算 子 1. 算 術 運 算 子 : 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 運 算 子 說 明 範 例 + - 單 元 運 算 子, 表 示 一 個 正 或 負 的 運 算 式 SELECT * FROM employee WHERE salary<0 * / 二 元 運 算 子, 為 乘 除 運 算 SELECT salary, salary*1.05, (salary*1.05)+comm from employee + - 二 元 運 算 子, 為 加 減 運 算 SELECT salary + comm FROM % 餘 數 employee WHERE GETDATE() hiredate > 字 元 運 算 子 : 運 算 子 說 明 範 例 + 連 接 運 算 子 SELECT 姓 名 : +lastname FROM employee 3. 比 較 運 算 子 : 運 算 子 說 明 範 例 = 相 等 判 斷 SELECT * FROM employee WHERE salary = 35000!= <> 不 等 判 斷 SELECT * FROM employee WHERE > < >= <=!>!< 大 於 判 斷 小 於 判 斷 大 於 等 於 判 斷 小 於 等 於 判 斷 不 大 於 不 小 於 salary!= SELECT * FROM employee WHERE salary > SELECT * FROM employee WHERE salary >= IN 存 在 任 何 成 員 判 斷 SELECT * FROM employee WHERE job IN (670,671) NOT IN 不 存 在 任 何 成 員 判 斷 SELECT * FROM employee WHERE ANY ( 只 能 用 於 子 查 詢 ) salary NOT IN (SELECT salary FROM employee WHERE deptno=30) 對 一 值 與 一 個 表 格 中, 每 一 值 或 查 SELECT * FROM employee WHERE 詢 傳 回 的 每 一 值 做 比 較 在 該 運 算 salary=any (SELECT salary FROM 子 之 前 必 須 有 =,!=,<,>,<=, employee WHERE deptno=30) >= 運 算 子 頁 次 :25
26 SOME ( 只 能 用 於 子 查 詢 ) ALL [NOT] BETWEEN X AND Y EXISTS X [NOT] LIKE Y IS [NOT ] NULL [ 說 明 ] 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 只 要 有 任 一 個 成 立, 即 為 True 例 如 >ANY(1,2,3) 表 示 比 較 對 象 只 要 大 於 1, 2, 3 任 一 數, 也 就 表 示 只 需 大 於 1 即 成 立 [ 其 中 1,2,3 表 示 子 查 詢 之 結 果 ] 只 要 有 任 一 些 成 立, 即 為 True 表 示 方 法 類 似 ANY, 比 較 對 象 對 SELECT * FROM employee WHERE 表 格 中 所 有 值 都 成 立, 才 為 True salary > all (select (salary+comm) from 例 如 比 較 對 象 >ALL(1,2,3) 表 employee where comm >3500) 示 比 較 對 象 必 須 大 於 1, 2, and 3, 也 就 表 示 需 大 於 3 [ 其 中 1,2,3 表 示 子 查 詢 之 結 果 ] [ 不 ] 存 在 X 和 Y 區 間 的 判 斷 SELECT * FROM employee WHERE 子 查 詢 有 獲 得 任 意 數 目 的 資 料 集, 則 傳 回 true > ALL(1,2,3) Ł > 3 true 則 執 行 select 之 結 果 false 則 不 執 行 select 之 結 果 salary BETWEEN AND SELECT * FROM dept WHERE EXISTS (SELECT * FROM employee WHERE dept.id=employee.deptno) 切 截 查 詢, 在 Y 中 : 符 號 % 可 SELECT * FROM employee WHERE 包 含 任 何 0 個 或 多 個 字 元 ; _ firstname LIKE JA% 可 包 含 任 何 單 一 字 元 測 試 空 值 SELECT * FROM employee WHERE comm IS NULL > ANY(1,2,3) Ł > 1 ( 假 設 上 例 中 的 1,2,3 為 子 查 詢 結 果, 因 為 ALL, ANY 必 須 用 於 子 查 詢 結 果 判 斷, 而 IN 則 可 用 於 表 列 或 子 查 詢 結 果 之 判 斷 基 本 上 IN 敘 述 可 等 於 =ANY 敘 述 ) SELECT * FROM EMPLOYEE WHERE EXISTS (SELECT * FROM DEPT WHERE DEPT.ID=EMPLOYEE.DEPTNO AND LOCATION LIKE 一 樓 % ) 相 等 於 JOIN 查 詢 : SELECT EMPLOYEE.* FROM EMPLOYEE, DEPT WHERE EMPLOYEE.DEPT=DEPT.ID AND LOCATION LIKE 一 樓 % 頁 次 :26
27 十 八 SELECT 查 詢 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 檔 案 結 構 : (1) 學 生 修 課 資 訊 (2) 商 品 銷 售 資 訊 (3) 圖 書 採 購 資 訊 * 表 示 主 鍵 (Primary key) FK 表 示 外 來 鍵 (Foreign key) 表 示 外 來 鍵 指 向 資 料 的 來 源 頁 次 :27
28 1. 一 般 查 詢 SELECT NAME, AUTHOR, PRICE, PUBLISHER FROM BOOK SELECT * FROM BOOK SELECT DISTINCT PRICE FROM BOOK 2. 算 數 查 詢 SELECT NAME, PRICE, PRICE*0.8 FROM BOOK 3. 條 件 (WHERE) 子 句 查 詢 SELECT BRN, NAME, AUTHOR, PRICE FROM BOOK WHERE BRN > 105 SELECT BRN, NAME, AUTHOR, PRICE FROM BOOK WHERE BRN IN (101,102,103,104) SELECT BRN, NAME, AUTHOR, PRICE FROM BOOK WHERE BRN BETWEEN 101 AND 104 SELECT * FROM BOOKSTORE WHERE CITY LIKE 台 % SELECT ID, NAME, RANK, CITY FROM BOOKSTORE WHERE NOT ( RANK >=20 AND CITY LIKE 台 % ) SELECT ID, NAME, RANK FROM BOOKSTORE WHERE RANK NOT IN (20,30) SELECT ID, NAME, CITY FROM BOOKSTORE WHERE NOT (CITY IN ( 台 北 市, 台 南 市, 台 中 市 )) SELECT ID, NAME, RANK, CITY FROM BOOKSTORE WHERE RANK IN (20,30) AND CITY IN ( 台 北 市, 台 南 市, 台 中 市 ) 練 習 : 試 列 出 男 性 (M) 學 生 地 址 在 台 北 市 的 修 課 細 節 頁 次 :28
29 4. 合 併 查 詢 (JOIN) SELECT BOOK.NAME, ORDERS.* FROM BOOK, ORDERS WHERE BOOK.BRN=ORDERS.BRN SELECT B.NAME, S.NAME, QUANTITY, QUANTITY*PRICE FROM BOOK B, BOOKSTORE S, ORDERS O WHERE O.BRN=B.BRN AND O.VID=S.ID 5. 別 名 (Alias) 別 名 分 為 欄 位 別 名 ( 標 籤,Label) 與 表 格 別 名 欄 位 別 名 用 於 改 變 資 料 呈 現 時 的 欄 位 標 籤 內 容 ; 表 格 別 名 則 是 用 於 簡 化 SQL 內 表 格 名 稱 的 長 度 欄 位 別 名 宣 告 方 式 : select 欄 位 欄 位 別 名, 表 格 別 名 宣 告 方 式 :select 欄 位,. from 表 格 表 格 別 名, [ 注 意 ] 欄 位 別 名 表 格 別 名 有 效 範 圍 只 在 同 一 SQL 敘 述 內 有 效 ; 使 用 表 格 別 名, 則 該 SQL 敘 述 內 所 有 該 表 格 名 稱 均 要 使 用 該 別 名, 不 可 再 用 原 表 格 名 稱 6. 排 序 查 詢 (ORDER BY) DESC 由 大 至 小 排 序 ASC 由 小 至 大 排 序 ( 預 設 ) SELECT ID, NAME, RANK, CITY FROM BOOKSTORE ORDER BY ID DESC SELECT * FROM BOOK ORDER BY AUTHOR ASC, BRN DESC 7. 聚 合 查 詢 五 項 基 本 函 數 : 函 數 名 稱 說 明 COUNT 計 算 指 定 欄 位 之 資 料 集 數 目 SUM 計 算 欄 位 內 容 之 總 合 AVG 計 算 欄 位 內 容 之 平 均 值 MIN 計 算 欄 位 內 容 之 最 小 值 MAX 計 算 欄 位 內 容 之 最 大 值 計 算 學 生 檔 (STUDENT) 的 人 數 計 算 科 目 CO 所 有 修 課 的 人 數, 總 分, 平 均 成 績, 最 高 分, 最 低 分 計 算 學 生 王 五 的 所 有 修 課 數 目, 總 分, 平 均 成 績, 最 高 分, 最 低 分 頁 次 :29
30 8. 巢 狀 查 詢 (1) 子 查 詢 只 有 一 個 值 * 使 用 BOOKSTORE 檔 : SELECT NAME,RANK FROM BOOKSTORE WHERE RANK < (SELECT AVG(RANK) FROM BOOKSTORE) SELECT NAME,RANK FROM BOOKSTORE WHERE RANK = (SELECT MAX(RANK) FROM BOOKSTORE)-10 * 使 用 EMPLOYEE 檔 : 列 出 和 ( 姓 )Green 同 部 門 的 員 工 資 料 SELECT * FROM EMPLOYEE WHERE DEPTNO = (SELECT DEPTNO FROM EMPLOYEE WHERE LASTNAME='Green') 列 出 比 ( 姓 )Green 薪 水 少 的 員 工 資 料 SELECT * FROM EMPLOYEE WHERE SALARY < (SELECT SALARY FROM EMPLOYEE WHERE LASTNAME='Green') (2) 子 查 詢 傳 回 一 個 集 合 SELECT NAME FROM BOOKSTORE WHERE ID IN (SELECT VID FROM ORDERS WHERE BRN='101') SELECT NAME FROM BOOKSTORE, ORDERS WHERE BOOKSTORE.ID=ORDERS.VID AND BRN='101' SELECT NAME FROM BOOKSTORE WHERE EXISTS (SELECT * FROM ORDERS WHERE ORDERS.VID=BOOKSTORE.ID AND BRN='101') 找 出 沒 人 訂 購 書 的 書 局 SELECT * FROM BOOKSTORE WHERE ID NOT IN (SELECT VID FROM ORDERS) 找 出 沒 人 訂 購 的 書 SELECT * FROM BOOK WHERE BRN NOT IN (SELECT BRN FROM ORDERS) 等 於 SELECT * FROM BOOK WHERE NOT EXISTS (SELECT * FROM ORDERS WHERE BOOK.BRN=ORDERS.BRN) 頁 次 :30
31 列 出 薪 水 比 部 門 編 號 開 頭 為 2 的 員 工 平 均 薪 水 還 高 的 其 他 部 門 員 工 資 料 SELECT * FROM EMPLOYEE WHERE SALARY > (SELECT AVG(SALARY) FROM EMPLOYEE WHERE DEPTNO LIKE '2%') AND DEPTNO NOT LIKE '2%' 列 出 與 Green 相 同 部 門 或 薪 水 比 他 高 的 員 工 姓 名 部 門 名 稱 和 工 資 SELECT LastName+' '+FirstName, Description, Salary FROM EMPLOYEE, DEPT WHERE DEPT.ID=EMPLOYEE.DEPTNO AND (DEPTNO=(SELECT DEPTNO FROM EMPLOYEE WHERE LASTNAME='Green') OR SALARY > (SELECT SALARY FROM EMPLOYEE WHERE LASTNAME='Green')) [ 注 意 ] 括 號 時 機, 不 需 特 別 排 除 Green 9. 群 組 功 能 (GROUP BY) 執 行 注 意 原 則 1. 需 出 現 在 select, having, order by 之 後 的 一 般 性 欄 位 ( 非 聚 合 函 數 結 果 ), 必 須 一 定 要 在 group by 有 出 現 group by 的 欄 位, 才 能 使 用 於 select, having,order by 之 處 ; select sex,id,count(*) from student group by sex-- 錯 誤 2. 有 使 用 在 gorup by 分 組 的 欄 位, 可 以 不 一 定 要 出 現 於 select 之 處 ; select count(*) from student group by sex -- 可 以 不 列 出 sex 欄 位 3. 有 多 個 群 組 的 資 料 條 件, 使 用 在 group by 時, 不 需 分 先 後 次 序 ; ----ex. 列 出 依 據 課 目 性 別 分 別 計 算 學 生 人 數 與 平 均 分 數 select subject,sex,count(*),avg(score) from student,course where student.id=course.id group by sex, subject --sex, subject 先 後 次 序 更 換 不 會 影 響 結 果 4. 如 果 group by 的 欄 位 不 包 含 主 鍵, 需 考 量 是 否 有 同 名 的 疑 慮 若 有, 則 須 加 上 主 鍵 ----ex. 請 依 姓 名 分 別 列 出 各 學 生 的 平 均 成 績 與 修 課 數 update student set name=' 張 三 ' where id= 將 資 料 更 動 一 下 以 便 測 試 select name,count(*),avg(score) from student,course where student.id=course.id group by name -- 可 能 資 料 會 有 錯 誤 select name,count(*),avg(score) from student,course where student.id=course.id 頁 次 :31
32 group by name,student.id-- 須 加 上 主 鍵, 否 則 同 名 的 人 會 被 合 併 計 算 select * from course order by id 5. group by 表 示 系 統 掃 描 整 個 檔 案 之 後 才 能 群 聚 指 定 的 資 料, 因 此 可 以 在 select where order by 之 後 直 接 使 用 聚 合 函 數 ; select id,count(*) from course -- 錯 誤! 聚 合 函 數 不 可 與 一 般 欄 位 並 列 select id,count(*) from course group by id order by avg(score) --Correct! 6. having 與 where 均 是 用 於 條 件 判 斷 where 的 條 件 是 執 行 於 群 組 之 前 的 判 斷 ;having 的 條 件 則 是 執 行 於 群 組 後 的 判 斷 --ex. 求 住 在 台 北 地 區 男 女 生 人 數 select sex,count(*) from student where address like ' 台 北 %' group by sex --ex. 列 出 男 生 (sex='m') 中 修 課 數 超 過 3 門 的 學 生 姓 名 與 修 課 數 平 均 成 績 select name,count(*),avg(score) from student, course where student.id=course.id and sex='m' group by student.id, name having count(*)>3 求 訂 單 檔 中 各 書 被 訂 購 的 次 數 SELECT BRN, COUNT(BRN) FROM ORDERS GROUP BY BRN 求 各 書 被 訂 購 的 數 量 SELECT BRN, SUM(QUANTITY) FROM ORDERS GROUP BY BRN 列 出 訂 單 中 各 訂 購 商 購 買 各 種 書 本 的 數 量 SELECT VID,BRN,SUM(QUANTITY) FROM ORDERS GROUP BY VID,BRN ORDER BY VID,BRN 求 各 學 生 的 平 均 成 績 SELECT AVG(SCORE) FROM COURSE GROUP BY ID [ 注 意 ] 以 非 PK 分 組 之 不 足 之 處, 例 如 以 姓 名 分 組 頁 次 :32
33 求 學 生 中 男 生 女 生 的 人 數 SELECT SEX, COUNT(*) FROM STUDENT GROUP BY SEX 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 求 各 訂 購 商 訂 購 書 的 總 數, 列 出 時 請 列 出 訂 購 商 名 稱 SELECT ORDERS.VID, BOOKSTORE.NAME, SUM(QUANTITY) FROM ORDERS, BOOKSTORE WHERE ORDERS.VID=BOOKSTORE.ID GROUP BY ORDERS.VID, BOOKSTORE.NAME 10. 群 組 條 件 (HAVING) HAVING 之 前 一 定 要 有 GROUP BY 敘 述, 用 來 過 濾 掉 GROUP BY 之 條 件 (1) 列 出 訂 單 檔 中 各 商 品 購 買 總 數 超 過 20 的 訂 單 編 號 與 購 買 總 數 ( 依 訂 單 分 組 ) SELECT ID, SUM(QUANTITY) FROM ORDERS GROUP BY ID HAVING SUM(QUANTITY) >20 (2) 請 列 出 同 一 個 書 目 資 料 下 所 有 館 藏 總 和 被 借 超 過 20 次 的 書 目 編 號 書 名 與 作 者 SELECT BIB.BRN,TITLE FROM HOLDING,BIB WHERE HOLDING.BRN=BIB.BRN GROUP BY BIB.BRN, TITLE HAVING SUM(COUNT)>20 (3) [ 依 員 工 各 別 統 計 ] 列 出 本 月 ( 判 斷 年 度 月 份 ) 份 銷 售 單 價 總 計 超 過 的 員 工 姓 名 與 其 銷 售 金 額 總 計 ( 數 量 * 單 價 ) SELECT E.NAME, SUM(PRICE*COUNT) FROM SALES S,EMPLOYEE E WHERE S.ENO=E.ENO AND DATEPART(YY,SDATE)=DATEPART(YY,GETDATE()) AND DATEPART(MM,SDATE)=DATEPART(MM,GETDATE()) GROUP BY E.ENO, E.NAME HAVING SUM(PRICE) >0 [ 注 意 ]: 因 員 工 有 可 能 同 名 同 姓, 因 此 不 可 以 只 用 員 工 姓 名 作 GROUP BY 分 組 的 依 據 頁 次 :33
34 (4) 請 依 據 各 部 門 分 別 統 計 各 商 品 銷 售 數 量 超 過 100 份 部 門 名 稱 與 商 品 名 稱 [ 資 料 庫 無 此 檔 案 ] SELECT D.ID, P.NAME, SUM(COUNT) FROM SALES S, EMPLOYEE E, DEPT D, PRODUCT P WHERE S.ENO=E.ENO AND D.ID=E.DEPT AND S.PID=P.ID GROUP BY D.ID, P.ID, P.NAME HAVING SUM(COUNT) > 1000 (5) 列 出 修 課 人 數 最 多 的 老 師 姓 名 修 課 人 數 與 平 均 成 績 SELECT SUBJECT, J.DESCRIPTION,COUNT(*), AVG(SCORE) FROM COURSE S,SUBJECT J WHERE S.SUBJECT=J.ID GROUP BY SUBJECT,J.DESCRIPTION HAVING COUNT(*) >= ALL(SELECT COUNT(*) FROM COURSE GROUP BY SUBJECT) (6) 列 出 修 課 平 均 成 績 最 高 的 科 目 名 稱 與 老 師 姓 名 SELECT SUBJECT, J.DESCRIPTION, T.DESCRIPTION, AVG(SCORE) FROM COURSE S,SUBJECT J,TEACHER T WHERE S.SUBJECT=J.ID AND J.TEACHER=T.ID GROUP BY SUBJECT,J.DESCRIPTION, T.DESCRIPTION HAVING AVG(SCORE) >= ALL(SELECT AVG(SCORE) FROM COURSE GROUP BY SUBJECT) [ 練 習 ] (1) 列 出 家 住 在 台 北 的 男 生, 且 平 均 成 績 高 於 80 分 的 姓 名 地 址 平 均 成 績 與 修 課 數 (2) 列 出 部 門 人 數 超 過 4 人 以 上 的 部 門 編 號 人 數 與 最 高 最 低 的 薪 資 (3) 列 出 部 門 平 均 薪 水 超 過 的 員 工 資 料 群 組 之 後, 資 料 庫 系 統 便 以 組 為 單 位, 可 以 列 出 各 組 的 基 本 資 料, 但 無 法 列 出 各 組 內 容 的 細 節 如 果 要 列 出 群 組 後 各 組 的 細 節, 則 該 群 組 的 敘 述 要 以 子 查 詢 方 式 處 理 頁 次 :34
35 單 元 練 習 : ( 請 先 自 行 繪 出 STUDENT, COURSE, SUBJECT, TEACHER 四 個 表 格 的 檔 案 結 構 ) 1. 連 續 題 : (1) 列 出 各 科 修 課 人 數 (2) 列 出 學 生 的 修 課 科 目 數 量 平 均 成 績 (3) 列 出 修 課 人 數 超 過 8 人 的 修 課 科 目 代 碼 (4) 列 出 修 課 人 數 超 過 8 人 的 修 課 科 目 代 碼 學 生 姓 名 及 成 績 (5) 列 出 修 課 人 數 超 過 8 人 的 修 課 科 目 名 稱 學 生 姓 名 及 成 績 (6) 列 出 修 課 人 數 超 過 8 人 的 修 課 科 目 名 稱 學 生 姓 名 及 成 績, 並 依 科 目 名 稱 成 績 學 號 排 序 2. 列 出 學 生 平 均 成 績 低 於 80 分 的 學 生 學 號 姓 名 平 均 成 績 3. 列 出 科 目 平 均 成 績 高 於 75 分 的 科 目 名 稱 授 課 老 師 姓 名 平 均 分 數 4. 列 出 修 課 平 均 成 績 比 平 均 成 績 還 高 的 學 生 學 號 及 其 平 均 成 績 5. 列 出 修 課 男 生 女 生 的 平 均 成 績 6. 求 資 料 庫 分 數 最 高 學 生 的 所 有 科 目 成 績 7. 列 出 老 師 的 開 課 數 量 8. 列 出 有 開 課 成 功 的 老 師 姓 名 與 開 課 數 量 ( 與 第 7 題 比 較 ) 9. 列 出 老 師 的 姓 名 開 課 科 目 數 量 10. 列 出 老 師 的 姓 名 開 課 科 目 名 稱 各 科 目 修 課 學 生 人 數 修 課 的 平 均 成 績 頁 次 :35
36 9.XML SQL Server2000 提 供 在 SELECT 敘 述 執 行 並 輸 出 成 XML 的 功 能, 而 產 生 的 方 式 只 須 在 SELECT 敘 述 最 後 加 上 相 關 的 指 令 宣 告 即 可 指 令 宣 告 : FOR XML {RAW AUTO EXPLICIT [, XMLData] [, ELEMENTS] [, BINARY base64]} 關 鍵 字 說 明 : (1) FOR XML: 指 定 將 查 詢 結 果 輸 出 成 XML (2) RAW: 指 定 將 查 詢 結 果 每 一 列 資 料 以 通 用 的 <row> 元 素 表 示, 各 欄 位 內 容 以 屬 性 方 式 表 示 (3) AUTO: 指 定 將 多 種 表 格 查 詢 結 果 轉 換 成 一 個 XML 的 巢 狀 元 素, 各 欄 位 內 容 以 屬 性 方 式 表 示 ( 不 支 援 group by) (4) EXPLICIT: 傳 回 應 建 立 之 XML 樹 狀 形 式 (5) XMLData: 指 定 將 查 詢 結 果 產 生 之 XML 內 包 含 該 表 格 Schema 之 DTD (6) ELEMENTS: 指 定 將 查 詢 結 果 之 各 欄 位 以 元 素 型 態 傳 回 ( 須 配 合 AUTO) (7) BINARY base64: 指 定 將 傳 回 之 二 進 位 資 料 以 標 準 的 base64 編 碼 頁 次 :36
37 十 九 SQL 函 數 常 用 的 SQL Server 資 料 庫 函 數 : 名 稱 說 明 匯 總 函 數 : 計 算 表 格 內 某 一 欄 位 的 加 總 值 平 均 值 最 大 值 最 小 值 AVG() COUNT() MAX() MIN() SUM() GETDATE() DAY(date) MONTH(date) YEAR(date) DATEPART(datepart, date) select AVG(unit_price) from pur_item where prod_id= P001 select COUNT(*) from employee select prod_id,count(*) from sale_item group by prod_id having count(*) > 3 select * fom employee where salary = (select MAX(salary) from employee) select * fom employee where salary = (select MIN(salary) from employee) select order_date,sum(tot_amt),avg(tot_amt),count(*) from sales group by order_date order by order_date 日 期 函 數 取 得 系 統 日 期 select DAY( 05/21/2002 ) select MONTH( 05/21/2002 ) select MONTH( 05/21/2002 ) 語 法 : DATEPART( datepart 參 數, date) YEAR(YY) QUARTER(QQ) 1-4 MONTH(MM) 1-12 DAYOFYEAR(DY) DAY(DD) 1-31 WEEK(WK) 1-53 WEEKDAY(DW) 1-7( 星 期 日 - 星 期 六 ) HOUR( 不 能 用 HR) 0-23 MINUTE(MI) 0-59 SECOND(SS) 0-59 MILLISECOND(MS) 統 計 每 月 訂 單 總 額 與 訂 單 筆 數 : select DATEPART(MONTH, order_date),sum(tot_amt),count(*) from sales group by 頁 次 :37
38 DATEDIFF(datepart, startdate, enddate) DATEADD(datepart,number,date) DATENAME(datepart,date) DATEPART(MONTH,order_date) order by DATEPART(MONTH,order_date) 計 算 startdate 至 enddate 距 離 多 少 個 datepart 單 位 日 期 加 上 指 定 的 日 期 值 例 : DATEADD(DAY,10, 1996/12/24 ) 1997 年 1 月 3 日 DATEADD(MONTH,2, 1996/12/24 ) 1997 年 2 月 24 日 DATEADD(WEEK,3, 1996/12/24 ) 1997 年 1 月 14 日 顯 示 日 期 個 別 組 成 部 分 的 名 稱 例 : LEN(str) ASCII(str) CHAR(int) LOWER(str) UPPER(str) LTRIM(str) RTRIM(str) STR(float,[len,[decimal]]) DATENAME(YEAR, 1996/09/24 ) 1996 DATENAME(QUARTER, 1996/09/24 ) 3 DATENAME(WEEK, 1996/09/24 ) 39 DATENAME(WEEKDAY, 1996/09/24 ) Tuesday DATENAME(DAYOFYEAR, 1996/09/24 ) 268 字 串 函 數 求 字 串 內 容 的 長 度 求 字 串 最 左 字 元 的 ASCII 值 將 ASCII 值 轉 為 ASCII 碼 將 字 串 全 部 轉 為 小 寫 將 字 串 全 部 轉 為 大 寫 去 除 字 串 前 置 空 白 去 除 字 串 後 方 空 白 將 數 字 轉 為 字 串,len 為 字 串 總 長 度,decimal 為 小 數 位 數 STUFF(string1,start,len,string2) 將 string1 字 串 由 start 位 置 處 刪 除 len 個 字 元, 並 將 string2 字 串 由 start 處 插 入 RIGHT(str_expr, int_expr) LEFT(str_expr, int_expr) 從 字 串 的 最 右 邊 往 回 取 int_expr 個 字 元 從 字 串 的 最 左 邊 位 置 取 int_expr 個 字 元 RIGHT( abcdefgh,5) LEFT( abcdefg,5) 結 果 為 defgh 結 果 為 abcde SUBSTRING(str_expr,start,len) 由 字 串 左 邊 算 起 第 start 位 置 取 長 度 為 len 的 字 串 REPLACE(str_expr, str1,str2) 將 字 串 str_expr 的 內 容 為 str1 取 代 成 str2 例 :select name, replace(name,' 台 ',' 臺 ') from book 頁 次 :38
39 系 統 函 數 ISNULL(expr, val) 將 expr 中 為 NULL 值 者 以 val 值 取 代 SELECT SUM(SALARY+COMM), SUM(SALARY+ISNULL(COMM,0)) FROM EMPLOYEE 頁 次 :39
40 本 單 元 介 紹 流 程 : 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 建 立 檔 案 / 刪 除 檔 案 新 增 / 修 改 / 刪 除 紀 錄 (DDL) 異 動 管 理 (TCL) 建 立 視 界 / 索 引 二 十 資 料 建 立 1. 檔 案 建 立 CREATE TABLE [ database_name.[ owner ]. owner. ] table_name ( { < column_definition > column_name AS computed_column_expression < table_constraint > ::= [ CONSTRAINT constraint_name ] } ) [ { PRIMARY KEY UNIQUE } [,...n ] [ ON { filegroup DEFAULT } ] [ TEXTIMAGE_ON { filegroup DEFAULT } ] < column_definition > ::= { column_name data_type } [ COLLATE < collation_name > ] [ [ DEFAULT constant_expression ] [ IDENTITY [ ( seed, increment ) [ NOT FOR REPLICATION ] ] ] ] [ ROWGUIDCOL] [ < column_constraint > ] [...n ] < column_constraint > ::= [ CONSTRAINT constraint_name ] { [ NULL NOT NULL ] [ { PRIMARY KEY UNIQUE } [ CLUSTERED NONCLUSTERED ] [ WITH FILLFACTOR = fillfactor ] [ON {filegroup DEFAULT} ] ] ] [ [ FOREIGN KEY ] REFERENCES ref_table [ ( ref_column ) ] [ ON DELETE { CASCADE NO ACTION } ] [ ON UPDATE { CASCADE NO ACTION } ] [ NOT FOR REPLICATION ] ] CHECK [ NOT FOR REPLICATION ] ( logical_expression ) } < table_constraint > ::= [ CONSTRAINT constraint_name ] { [ { PRIMARY KEY UNIQUE } [ CLUSTERED NONCLUSTERED ] { ( column [ ASC DESC ] [,...n ] ) } [ WITH FILLFACTOR = fillfactor ] 頁 次 :40
41 [ ON { filegroup DEFAULT } ] ] FOREIGN KEY [ ( column [,...n ] ) ] REFERENCES ref_table [ ( ref_column [,...n ] ) ] [ ON DELETE { CASCADE NO ACTION } ] [ ON UPDATE { CASCADE NO ACTION } ] [ NOT FOR REPLICATION ] CHECK [ NOT FOR REPLICATION ] ( search_conditions ) } 2. DML 資 料 維 護 的 語 法 : 新 增 資 料 :INSERT INTO 檔 案 ( 欄 位, 欄 位, ) VALUES ( 資 料, 資 料, ) 修 改 資 料 :UPDATE 檔 案 SET 欄 位 = 資 料, 欄 位 = 資 料, WHERE 條 件 刪 除 資 料 :DELETE FROM 檔 案 WHERE 條 件 DML DDL TCL/DCL INSERT 新 增 CREATE ROLLBACK DELETE 刪 除 DROP COMMIT UPDATE 修 改 ALTER SELECT 選 擇 無 檔 案 建 立 的 基 本 語 法 : CREATE TABLE 檔 案 名 稱 ( 欄 位 名 稱 資 料 型 態 [ 限 制 ], ) 欄 位 名 稱 資 料 型 態 [ 限 制 ], [ 主 鍵 宣 告,] [ 外 來 鍵 宣 告 ] 3. 常 使 用 的 限 制 (Constraint) 宣 告 : (1) 宣 告 主 鍵 ( 當 該 檔 案 的 主 鍵 只 有 一 個 欄 位 時 ):PRIMARY KEY (2) 預 設 值 :DEFAULT 值 (3) 檢 查 ( 當 資 料 輸 入 時 驗 證 的 語 法 ):CHECK ( 條 件 ) (4) 不 允 許 虛 值 :NOT NULL 頁 次 :41
42 若 檔 案 的 主 鍵 包 含 不 只 一 個 欄 位, 則 主 鍵 必 須 單 獨 宣 告 ( 若 主 鍵 僅 一 個 欄 位, 亦 可 使 用 此 種 宣 告 方 式 ): PRIMARY KEY ( 欄 位, 欄 位, ), 若 該 檔 案 的 某 些 欄 位 為 外 來 鍵, 則 外 來 鍵 的 宣 告 為 : FOREIGN KEY ( 欄 位, 欄 位, ) REFERENCES 主 檔 檔 名 ( 欄 位, 欄 位, ) [ ON DELETE CASCADE ON UPDATE CASCADE] 例 : CREATE TABLE STUDENT ( ID VARCHAR(10) PRIMARY KEY, NAME VARCHAR(10) NOT NULL, AGE INT CHECK (AGE >10 AND AGE <60), BIRTH DATETIME DEFAULT GETDATE()); INSERT INTO STUDENT (ID,NAME,AGE) VALUES ('A001',' 張 三 ',20) INSERT INTO STUDENT (ID,NAME,BIRTH) VALUES ('A002',' 李 四 ','2/12/1981') INSERT INTO STUDENT (ID,NAME,AGE,BIRTH) VALUES ('A003',' 王 五 ',21,'4/8/1980') INSERT INTO STUDENT VALUES ('A004',' 錢 六 ',22,'7/1/1979') CREATE TABLE STUDENT_SCORE (ID VARCHAR(10), SUBJECT VARCHAR(10), SCORE INT CHECK (SCORE > 0 AND SCORE< 100), PRIMARY KEY (ID,SUBJECT), FOREIGN KEY (ID) REFERENCES STUDENT(ID) ON DELETE CASCADE); INSERT INTO STUDENT_SCORE VALUES ('A001','ENG',80); INSERT INTO STUDENT_SCORE VALUES ('A001','CHI',92); [ 新 增 資 料 之 錯 誤 練 習 ] (1) 遺 漏 欄 位 (2) 欄 位 與 資 料 型 態 不 符 (3) 輸 入 資 料 超 過 資 料 型 態 範 圍 (4) 超 過 CHECK 值 (5) 重 覆 KEY 值 (6) 輸 入 不 存 在 的 欄 位 (7) 輸 入 不 存 在 的 FOREIGN KEY 值 頁 次 :42
43 [ 比 較 ] (1) 能 否 執 行 INSERT INTO COURSE VALUES ('A005','ENG',70); (2) (2) DELETE FROM STUDENT WHERE ID= A001 之 後,COURSE 是 否 仍 存 在 A001 的 成 績 資 料? (3) 能 否 執 行 DROP TABLE STUDENT 4. 檔 案 修 改 ALTER TABLE 檔 名 修 改 類 型 欄 位 [ 範 例 ] alter table department add position varchar(20) // 新 增 一 個 欄 位 的 定 義 alter table department drop column position // 刪 除 一 個 欄 位 的 定 義 alter table department alter column position varchar(30) // 修 改 一 個 欄 位 的 定 義 5. 檔 案 刪 除 DROP TABLE tablename [ 練 習 ] 檔 案 建 立 及 建 立 的 先 後 順 序 (1) 建 立 27 頁 之 相 關 檔 案, 建 立 時 包 含 宣 告 Primary key, Foreign key, 並 考 慮 建 立 所 須 之 索 引 檔 (2) 逐 一 刪 除 檔 案 注 意 Foreign key 所 造 成 的 刪 除 次 序 限 制 6. SQL Server 存 取 使 用 Unicode 字 碼 雖 然 SQL Server 已 經 支 援 Unicode, 資 料 處 理 的 模 式 亦 是 依 據 字 元 而 非 位 元 組, 不 過 實 際 儲 存 資 料 是 若 非 指 名 使 用 Unicode, 系 統 預 設 仍 是 以 資 料 一 般 的 字 碼 處 理 ( 例 如 台 灣 就 會 以 Big5 字 碼 為 預 設 字 元 ) 參 考 下 列 範 例, 先 建 立 一 個 包 含 兩 個 欄 位 的 表 格, 其 中 NOTE 欄 位 宣 告 為 變 長 字 串, 長 度 9: CREATE TABLE TEMP (ID CHAR(3) PRIMARY KEY, NOTE VARCHAR(9) ); 接 著, 請 試 著 輸 入 下 列 資 料, 並 予 以 執 行 : INSERT INTO TEMP VALUES ('001',' 三 個 字 '); INSERT INTO TEMP VALUES ('002',' 四 個 words'); INSERT INTO TEMP VALUES ('003',' 這 有 五 個 字 '); 依 據 宣 告,NOTE 應 該 可 以 存 放 9 個 字 元 的 資 料, 但 實 際 輸 入 第 三 筆 資 料 時, 卻 出 現 下 列 訊 息 : 伺 服 器 : 訊 息 8152, 層 級 16, 狀 態 9, 行 1 頁 次 :43
44 字 串 或 二 進 位 資 料 會 被 截 斷 陳 述 式 已 經 結 束 表 示 已 經 超 過 允 許 長 度 若 是 以 函 數 LEN( ) 檢 查 資 料 內 容, 系 統 能 夠 很 正 確 地 依 據 字 元 數 目 計 算 出 : SELECT NOTE,LEN(NOTE) FROM TEMP 得 到 下 列 結 果 : SQL Server 如 何 存 取 Unicode 字 碼 的 方 法 : 1. 宣 告 的 欄 位 名 稱 必 須 使 用 'n', 如 nchar, nvarchar 2. 存 入 資 料 時 必 須 在 資 料 前 加 上 一 個 N 字 元 ( 必 須 大 寫 ) 例 如 : CREATE TABLE TEMP (sql integer, id nchar(5), name nvarchar(10), title varchar(10)) INSERT INTO TEMP VALUES (1, ' 山 东 ',' 包 兆 茏 ',' 经 理 ') INSERT INTO TEMP VALUES (2, N' 山 东 ',N' 包 兆 茏 ',N' 经 理 ') INSERT INTO TEMP VALUES (3, ' 山 東 ', N' 包 兆 茏 图 书 馆 ',N' 經 理 ') select * from Temp 的 結 果 如 下 : 山? 包 兆?? 理 2 山 东 包 兆 茏? 理 3 山 東 包 兆 茏 图 书 馆 經 理 可 以 看 出 輸 入 資 料 時 在 前 面 加 一 N 字 元, 就 算 是 該 欄 位 為 非 Unicode 亦 可 ( 如 範 例 中 的 title 欄 位, 並 非 宣 告 為 nvarchar) 縱 使 欄 位 宣 告 為 Unicode( nchar 或 nvarchar), 若 沒 在 字 串 前 加 上 'N' 字 元, 則 一 樣 不 會 存 入 Unicode 7. SQL Server 如 何 於 欄 位 自 動 編 流 水 號 (identify) 方 法 : 使 用 IDENTITY ( 起 始 值, 遞 增 ) ex. CREATE TABLE new_std ( id int IDENTITY(1,1), name varchar (20)); 之 後 可 不 需 指 定 id 欄 位 的 值, 則 系 統 會 補 上 流 水 號 若 欲 取 得 最 近 產 生 的 識 別 值 編 號, 可 使 用 : 頁 次 :44
45 SELECT IDENT_CURRENT(' 表 格 名 稱 '); 插 入 資 料 時 如 何 自 訂 識 別 值 的 值? 1. 開 啟 identity_insert set identity_insert 表 格 名 稱 on ; 2. 開 始 輸 入 資 料 3. 關 閉 identity_insert set identity_insert 表 格 名 稱 off ; 頁 次 :45
46 4. 視 界 (View) 建 立 VIEW 可 以 視 為 另 一 種 形 式 的 表 格 和 表 格 一 樣,VIEW 也 是 由 數 個 欄 位 定 義 所 組 成, 只 不 過 VIEW 的 欄 位 是 來 自 其 他 表 格 內 的 欄 位, 它 並 無 自 己 定 義 的 的 欄 位 使 用 者 可 以 對 VIEW 執 行 SELECT, INSERT, UPDATE 和 DELETE 的 動 作, 利 用 GRANT 指 令 將 視 界 的 使 用 權 開 放 給 特 定 的 使 用 者 等 等 CREATE VIEW [ < database_name >.[ owner.] view_name [ ( column [,...n ] ) ] [ WITH < view_attribute > [,...n ] ] AS select_statement [ WITH CHECK OPTION ] CREATE VIEW 指 令 中 的 SELECT 有 以 下 的 限 制 : (1) 不 能 使 用 order by, compute 或 compute by 語 句 (2) 不 能 使 用 union 語 句 (3) 不 能 使 用 into 語 句 視 界 檔 案 的 資 料 來 源, 且 視 界 檔 案 的 欄 位 必 須 與 SELECT 輸 出 結 果 的 欄 位 數 量 一 致 當 SELECT 輸 出 結 果 的 欄 位 名 稱 沒 有 重 複 且 均 有 名 稱 時, 可 以 省 略 視 界 檔 案 的 欄 位 宣 CREATE VIEW 視 界 檔 名 ( 欄 位, 欄 位, ) 告, 沿 用 原 先 的 欄 位 名 稱 AS SELECT 欄 位, 欄 位, FROM 檔 案, 檔 案, WHERE 練 習 1: STUDENT, COURSE, SUBJECT, TEACHER 表 格 之 間 有 建 立 foreign key 之 關 係 BOOK, ORDERS, BOOKSTORE, PUBLISHER 表 格 之 間 沒 有 建 立 foreign key 之 關 係 ( 參 見 p.27 之 檔 案 結 構 ) [ 比 較 ] (1) 建 立 單 純 的 VIEW 建 立 下 列 查 詢 的 VIEW 檔 : (1.1) 應 用 Orders 表 格 建 立 包 含 所 有 出 貨 日 期 距 訂 貨 日 期 超 過 100 天 資 料 的 VIEW (1.2) 應 用 Student, Course 表 格 建 立 包 含 所 有 學 生 姓 名 與 其 平 均 成 績 的 VIEW (2) 建 立 VIEW 的 VIEW (3) 透 過 join 所 結 合 的 VIEW 能 否 執 行 insert, update, delete 指 令 (3.1) 有 foreign key 情 況 之 資 料 異 動 結 果 頁 次 :46
47 (3.2) 沒 有 foreign key 情 況 之 資 料 異 動 結 果 (4) 透 過 aggregation 所 結 合 的 VIEW 能 否 執 行 insert, update, delete 指 令 5. 刪 除 視 界 DROP VIEW viewname 練 習 2: (1) 使 用 INFORMATION_SCHEMA.VIEWS 列 出 此 一 資 料 庫 有 哪 一 些 VIEW 表 格 (2) 使 用 INFORMATION_SCHEMA.TABLES 列 出 此 一 資 料 庫 有 哪 一 些 VIEW 表 格 (TABLE_TYPE 欄 位 內 容 :BASE TABLE/VIEW) 頁 次 :47
48 二 十 一 索 引 (Index) 資 料 庫 系 統 授 課 講 義 ( 世 新 資 傳 系 Seljuk) 對 關 連 式 資 料 庫,INDEX 是 相 當 重 要 的, 系 統 透 過 INDEX 直 接 指 向 我 們 所 需 的 資 料 其 存 在 資 料 庫 內 的 主 要 目 的 是 : 改 善 資 料 的 存 取 速 度 若 設 定 為 唯 一 性 的 索 引, 則 可 強 制 資 料 在 單 一 檔 案 內 的 唯 一 性 (1) 沒 有 INDEX, 資 料 庫 管 理 系 統 必 須 為 找 尋 一 筆 資 料, 而 掃 描 整 個 Table (2) 有 INDEX, 資 料 庫 透 過 管 理 系 統 所 管 理 的 索 引 表, 計 算 出 資 料 儲 存 在 Table 中 的 位 置 後, 直 接 讀 取 出 (3) 系 統 必 須 花 費 時 間 去 更 新 維 護 任 何 INDEX, 所 以 在 產 生 INDEX 之 前 必 須 確 定 需 要 任 何 對 Table 新 增 修 改 和 刪 除 動 作 均 會 觸 發 系 統 更 新 所 屬 的 INDEX, 因 此 越 多 的 INDEX 會 造 成 系 統 效 率 降 低 1. 建 立 新 索 引 檔 CREATE [ UNIQUE ] [ CLUSTERED NONCLUSTERED ] INDEX index_name ON { table view } ( column [ ASC DESC ] [,...n ] ) 索 引 檔 建 立 之 觀 念 : (1) 一 個 檔 案 (Table) 可 以 有 0~n 個 索 引 檔 (2) 索 引 檔 一 定 屬 於 某 一 個 Table (3) 索 引 檔 種 類 包 含 一 般 索 引 與 唯 一 性 索 引 (Unique) 兩 種, 唯 一 性 即 表 示 建 立 該 索 引 之 欄 位 內 容 不 可 重 複 (4) 宣 告 之 主 鍵 (Primary key), 系 統 會 自 動 依 據 主 鍵 欄 位 宣 告 一 個 唯 一 性 索 引 檔 系 統 管 理 者 (DBA) 可 依 實 際 所 需, 手 動 建 立 索 引 檔, 建 立 後 DBMS 會 依 檔 案 內 容 的 異 動 自 行 維 護 索 引 檔, 不 需 人 工 維 護 刪 除 檔 案 時,DBMS 系 會 自 動 刪 除 該 檔 案 所 屬 的 所 有 索 引 檔 (Table) 一 般 索 引 檔 宣 告 語 法 : CREATE INDEX 索 引 檔 名 ON 檔 案 名 稱 ( 欄 位 名 稱, 欄 位 名 稱, ) 唯 一 性 索 引 檔 宣 告 語 法 : CREATE UNIQUE INDEX 索 引 檔 名 ON 檔 案 名 稱 ( 欄 位 名 稱, 欄 位 名 稱, ) *UNIQUE 對 資 料 表 或 檢 視 表 建 立 一 個 唯 一 的 索 引 ( 亦 即 任 何 兩 個 資 料 列 都 不 許 可 有 相 同 索 引 值 的 索 引 ) 建 立 UNIQUE 索 引 時, 會 將 多 個 NULL 值 視 為 重 複 * 排 序 不 是 遞 增 asc 就 是 遞 減 desc, 若 未 註 明, 則 預 設 為 內 定 的 asc column_name 頁 次 :48
49 從 左 至 右 的 順 序 表 示 索 引 主 要 到 次 要 的 順 序 2. 刪 除 索 引 檔 DROP INDEX table.index 註 : 索 引 檔 案 資 訊 記 錄 於 系 統 檔 SYSINDEXES 內, 可 以 透 過 預 儲 程 序 SP_HELPINDEX 獲 知 特 定 某 一 個 表 格 的 索 引 檔, 或 使 用 SP_STATISTICS 列 出 特 定 某 一 個 表 格 索 引 檔 的 較 多 細 節 SP_HELPINDEX student 列 出 student 索 引 檔 的 index 明 細 SP_STATISTICS student 列 出 student 索 引 檔 的 index 明 細 ( 索 引 的 統 計 資 料 ) 頁 次 :49
50 二 十 二 預 儲 程 序 (Stored Procedure) 預 儲 程 序 是 儲 存 在 DBMS 內 的 資 料 庫 物 件, 在 SQL Server 的 預 儲 程 序 中 包 含 了 一 組 Transaction-SQL 敘 述 式 以 便 在 往 後 重 複 使 用 它 們 就 和 其 他 程 式 語 言 的 副 程 式 (subroutine) 及 函 數 (function) 擁 有 相 同 的 作 用 邏 輯 上 來 說, 預 儲 程 序 包 含 了 : (1) 一 個 檔 頭 (Header), 當 中 定 義 了 預 儲 程 序 的 名 稱 輸 入 和 輸 出 參 數, 以 及 一 些 其 他 的 處 理 選 項 你 可 以 把 它 想 像 成 一 個 API(Application Programming Interace) 或 預 儲 程 序 的 宣 告 (2) 一 個 主 體 (Body), 當 中 包 含 了 當 預 儲 程 序 被 呼 叫 時, 所 應 該 執 行 的 Transaction-SQL 敘 述 式 預 儲 程 序 的 檔 頭 和 主 體 是 由 AS 這 個 關 鍵 字 來 區 隔 預 儲 程 序 的 檔 頭 包 含 了 參 數 的 清 單, 而 每 個 參 數 之 間 則 使 用 逗 號 "," 加 以 區 隔 每 個 參 數 的 定 義 都 包 含 了 一 個 識 別 項 和 資 料 型 別 參 數 的 識 別 項 必 須 字 元 做 為 開 頭 1. 建 立 預 儲 程 序 語 法 : CREATE PROC[EDURE] procedure_name [{@parameter data_type} [ = default] [OUTPUT] ] [, n] AS sql-statement [ n] 範 例 : create proc varchar(50) as select * from bib where title=@tit 此 範 例 建 立 一 個 叫 做 gettitle 的 預 儲 程 序, 當 中 包 含 了 一 個 輸 入 參 數 當 gettitle 執 行 時, 它 會 傳 回 一 個 結 果 集 (resultset), 當 中 包 含 了 所 有 在 Bib 檔 案 中,Title 資 料 行 的 值 對 於 輸 入 參 數 的 所 有 紀 錄 預 儲 程 序 比 較 不 一 樣 的 地 方 是 它 們 的 實 際 設 計 預 儲 程 序 事 實 上 是 用 來 建 立 預 儲 程 序 的 Transact-SQL 敘 述 在 其 他 的 程 式 員 中, 程 序 只 是 列 出 所 有 的 動 作, 而 不 會 建 立 任 何 東 西 在 SQL Server 中, 預 儲 程 序 實 際 上 建 立 了 他 們 本 身 2. 刪 除 預 儲 程 序 Drop Proc gettitle 頁 次 :50
51 3. 修 改 預 儲 程 序 修 改 預 儲 程 序 的 一 種 方 式 是 重 新 建 立, 另 一 種 方 式 則 是 使 用 ALTER PROCEDURE 敘 述 來 修 改 預 儲 程 序 (1) 使 用 刪 除 在 新 增 方 式 : Drop proc gettitle go create proc int as select * from bib where price 如 果 不 確 定 一 個 預 儲 程 序 是 否 存 在 時, 可 以 先 撰 寫 一 段 程 式 來 加 以 檢 查 如 果 不 這 麼 做 的 話, 當 在 刪 除 一 個 並 不 存 在 的 預 儲 程 序 時,SQL Server 將 會 產 生 一 個 錯 誤 訊 息 if exists (select * from sysobjects where id=object_id('gettitle') and OBJECTPROPERTY(id,'isProcedure')=1) Drop proc gettitle go create proc int as select * from bib where price (1) 使 用 修 改 方 式 : Alter proc int as select * from bib where price 頁 次 :51
Database講義.docx
一 資 料 庫 系 統 資 料 庫 系 統 授 課 講 義 (Shien-chiang Yu) 在 一 個 資 料 庫 系 統 (Database System) 中 可 分 為 資 料 庫 (Database) 與 資 料 庫 管 理 系 統 (Database Management System, DBMS) 兩 個 部 份 資 料 庫 簡 單 的 說 就 是 一 群 經 過 電 腦 整 合 後
More information1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2
CHAPTER 1 Understanding Core Database Concepts 1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2 1 Understanding Core Database Concepts
More information學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘
ITE 資 訊 專 業 人 員 鑑 定 資 料 庫 系 統 開 發 與 設 計 實 務 試 卷 編 號 :IDS101 注 意 事 項 一 本 測 驗 為 單 面 印 刷 試 題, 共 計 十 三 頁 第 二 至 十 三 頁 為 四 十 道 學 科 試 題, 測 驗 時 間 90 分 鐘 : 每 題 2.5 分, 總 測 驗 時 間 為 90 分 鐘 二 執 行 CSF 測 驗 系 統 -Client
More informationuntitled
Database System Principle Database System Principle 1 SQL 3.1 SQL 3.2-3.3 3.4 3.5 3.6 Database System Principle 2 3.1 SQL SQL Structured Query Language SQL Database System Principle 3 SQL 3.1.1 SQL 3.1.2
More informationuntitled
OO 1 SQL Server 2000 2 SQL Server 2000 3 SQL Server 2000 DDL 1 2 3 DML 1 INSERT 2 DELETE 3 UPDATE SELECT DCL 1 SQL Server 2 3 GRANT REVOKE 1 2 1 2 3 4 5 6 1 SQL Server 2000 SQL Server SQL / Microsoft SQL
More information目錄
資 訊 素 養 線 上 教 材 單 元 五 資 料 庫 概 論 及 Access 5.1 資 料 庫 概 論 5.1.1 為 什 麼 需 要 資 料 庫? 日 常 生 活 裡 我 們 常 常 需 要 記 錄 一 些 事 物, 以 便 有 朝 一 日 所 記 錄 的 事 物 能 夠 派 得 上 用 場 我 們 能 藉 由 記 錄 每 天 的 生 活 開 銷, 就 可 以 在 每 個 月 的 月 底 知
More informationebook46-23
23 Access 2000 S Q L A c c e s s S Q L S Q L S Q L S E L E C T S Q L S Q L A c c e s s S Q L S Q L I N A N S I Jet SQL S Q L S Q L 23.1 Access 2000 SQL S Q L A c c e s s Jet SQL S Q L U N I O N V B A S
More information数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护
数 据 库 系 统 基 础 1/54 数 据 库 系 统 基 础 哈 尔 滨 工 业 大 学 2011.~2012. 数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护 数 据 库 系 统 基 础 3/54 第 6 章 数 据 库 管 理 与 维 护 6.1 数 据 库 管 理 员 的 基 本 职 责 6.2 数 据 库 存 储 与 性 能 管 理 6.3 数 据 库
More informationuntitled
http://idc.hust.edu.cn/~rxli/ 1.1 1.2 1.3 1.4 1.5 1.6 2 1.1 1.1.1 1.1.2 1.1.3 3 1.1.1 Data (0005794, 601,, 1, 1948.03.26, 01) (,,,,,) 4 1.1.1 Database DB 5 1.1.1 (DBMS) DDL ( Create, Drop, Alter) DML(
More information6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM
CHAPTER 6 SQL SQL SQL 6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM 3. 1986 10 ANSI SQL ANSI X3. 135-1986
More information目錄 C ontents Chapter MTA Chapter Chapter
目錄 C ontents Chapter 01 1-1 MTA...1-2 1-2...1-3 1-3...1-5 1-4...1-10 Chapter 02 2-1...2-2 2-2...2-3 2-3...2-7 2-4...2-11...2-16 Chapter 03 3-1...3-2 3-2...3-8 3-3 views...3-16 3-4...3-24...3-33 Chapter
More information习题1
习 题 1 数 据 库 系 统 基 本 概 念 1.1 名 词 解 释 DB DB 是 长 期 存 储 在 计 算 机 内 有 组 织 的 统 一 管 理 的 相 关 数 据 的 集 合 DB 能 为 各 种 用 户 共 享, 具 有 较 小 冗 余 度 数 据 间 联 系 紧 密 而 又 有 较 高 的 数 据 独 立 性 等 特 点 DBMS 是 位 于 用 户 与 操 作 系 统 之 间 的
More informationDB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( ) SQL ( ) DB2 SQL DB2 DB2 SQL DB2 DB2 SQL DB2 ( DB2 ) DB2 DB2 DB2 SQL DB2 (1) SQL (2) S
9 DB2 优化器 DB2 SQL select c1 c2 from ( DB2 )??? DB2?!?, no no DB2 I/O ( transrate overhead ) SQL DML (INSERT UPDATE DELETE) DB2 (access plan) DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( 728 747 ) SQL
More information项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059
项目 3 创建和管理表 表是数据库中最重要的基础对象 它包含数据库中的所有数据 其他数据库对象 例如索引和视图等 都是依赖于表而存在的 若要使用数据库来存储和组织数据 首先就需要创建表 在本项目中将通过 15 个任务来创建和管理表 主要内容包括表的设计 理解 SQL Server 2008 中的数据类型 以及创建和修改表等 任务 1 表的设计 任务描述 Office Visio 3.1 3.1 项目
More information123
資 訊 管 理 系 資 料 庫 教 學 帄 台 MTA 資 料 庫 國 際 證 照 題 庫 分 析 指 導 教 授 : 馮 曼 琳 教 授 組 員 名 單 : 陳 雅 紋 學 號 998C030 蔡 宥 為 學 號 998C114 陳 韋 婷 學 號 998C168 中 華 民 國 一 零 三 年 五 月 I 誌 謝 本 專 題 報 告 得 以 順 利 完 成, 首 先 要 感 謝 恩 師 馮 曼
More information幻灯片 1
沈 阳 工 业 大 学 2014 年 6 月 第 7 章 数 据 库 技 术 基 础 主 要 内 容 : 7.1 数 据 库 概 述 数 据 库 基 本 概 念 数 据 模 型 逻 辑 数 据 模 型 数 据 库 系 统 的 产 生 和 发 展 常 用 的 数 据 库 管 理 系 统 7.2 Access 2010 数 据 库 创 建 及 维 护 创 建 Access 2010 数 据 库 创 建
More informationebook 165-5
3 5 6 7 8 9 [ 3. 3 ] 3. 3 S Q L S Q 4. 21 S Q L S Q L 4 S Q 5 5.1 3 ( ) 78 5-1 3-8 - r e l a t i o n t u p l e c a r d i n a l i t y a t t r i b u t e d e g r e e d o m a i n primary key 5-1 3 5-1 S #
More informationSQL Server SQL Server SQL Mail Windows NT
... 3 11 SQL Server... 4 11.1... 7 11.2... 9 11.3... 11 11.4... 30 11.5 SQL Server... 30 11.6... 31 11.7... 32 12 SQL Mail... 33 12.1Windows NT... 33 12.2SQL Mail... 34 12.3SQL Mail... 34 12.4 Microsoft
More informationOracle Database 10g: SQL (OCE) 的第一堂課
商 用 資 料 庫 的 第 一 堂 課 中 華 大 學 資 訊 管 理 系 助 理 教 授 李 之 中 http://www.chu.edu.tw/~leecc 甲 骨 文 俱 樂 部 @Taiwan Facebook 社 團 https://www.facebook.com/groups/365923576787041/ 2014/09/15 問 題 一 大 三 了, 你 為 什 麼 還 在 這
More informationR D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w
1 1.1 D B M S To w e r C D 1. 1 968 I B M I M S 2 0 70 Cullinet Software I D M S I M S C O D A S Y L 1971 I D M S containing hierarchy I M S I D M S I M S I B M I M S I D M S 2 2. 18 R D B M S O R D B
More informationRUN_PC連載_12_.doc
PowerBuilder 8 (12) PowerBuilder 8.0 PowerBuilder PowerBuilder 8 PowerBuilder 8 / IDE PowerBuilder PowerBuilder 8.0 PowerBuilder PowerBuilder PowerBuilder PowerBuilder 8.0 PowerBuilder 6 PowerBuilder 7
More information教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表 中 的 行 从 表 中 删 除 行 描 述 约 束 创 建
2 第 二 讲 创 建 和 管 理 表 与 简 单 记 录 操 作 Copyright SWFC-CISC, 2013. All rights reserved. 教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表
More information第4单元 创建数据类型和表
138 MCSE 2000 SQL 2000 8.1 Stored Procedures Microsoft SQL Server 2000 ( ) 8.1.1 Transact-SQL SQL Server (System Stored Procedures,sp_), master ( sp_prefix ) (Local Stored Procedures), (Temporary Stored
More informationMicrosoft PowerPoint - Ch6
第 六 章 基 本 的 SQL 目 的 SQL 的 關 聯 模 式 SQL 的 資 料 定 義 語 言 CREATE TABLE DROP TABLE ALTER TABLE 基 本 的 SQL 查 詢 SELECT FROM WHERE SQL 的 更 新 INSERT UPDATE DELETE 6-1 目 的 關 聯 模 式 定 義 嚴 謹 簡 潔, 但 好 用 性 和 執 行 效 率 必 須
More information01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysa
6 01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS 6-1 06 228 6-1 SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysadmin 6-1 SQL Server 2008 SSIS SQL Server (dbo) master
More informationMicrosoft Word - 序+目錄.doc
ORACLE 公 司 的 專 業 認 證 是 當 今 市 場 上 公 認 價 值 最 高, 最 具 鑑 別 力 的 認 證 目 前 全 球 有 超 過 50 萬 以 上 人 已 透 過 Oracle Certification Program 取 得 專 業 認 證, 成 為 職 場 新 鮮 人 的 首 選 認 證, 它 具 有 以 下 三 大 優 勢 : 一 更 多 的 工 作 機 會, 二 更
More informationuntitled
Chapter 01 1.0... 1-2 1.1... 1-2 1.1.1...1-2 1.1.2...1-4 1.1.2.1... 1-6 1.1.2.2... 1-7 1.1.2.3... 1-7 1.1.2.4... 1-7 1.1.2.5... 1-8 1.1.2.6... 1-8 1.1.3??...1-8 1.1.4...1-9 1.2...1-12 1.3...1-14 1.4...1-17
More information國家圖書館典藏電子全文
EAI EAI Middleware EAI 3.1 EAI EAI Client/Server Internet,www,Jav a 3.1 EAI Message Brokers -Data Transformation Business Rule XML XML 37 3.1 XML XML XML EAI XML 1. XML XML Java Script VB Script Active
More information10
10 08 10 Periodical Report 1 4 8 1 1 4 8 Batch Job Index DBA Index SQL WHERE Execution Plan SQL 4 8 SQL 10.3 10.4 SQL 318 08 5 SQL SQL Server Oracle 20--03 16:30:52 2003163052 Orders_Big SQL T-SQL 20-01-01
More information四川省普通高等学校
四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9
More information基于UML建模的管理管理信息系统项目案例导航——VB篇
PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com
More informationuntitled
21 Visual FoxPro Visual FoxPro 6.0 11 Visual FoxPro Visual FoxPro CIP Visual FoxPro 2004 21 ISBN 7-03-014834-7 V Visual FoxPro TP311.138 CIP 2004 143035 16 100717 http://www.sciencep.com * 2004 12 7871092
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-814 Title : Sun Certified MySQL Associate Version : Demo 1 / 12 1.Adam works as a Database Administrator for a company. He creates a table
More information未命名
附录三 ADS- MySQL 基础语法偏表 类别语法偏类 MySQL 语法 ADS 语法备注 型 Utility DESCRIBE {DESCRIBE DESC} tbl_name [col_name wild] {DESCRIBE DESC} dbname.tbl_name EXPLAIN 负偏 {EXPLAIN} [explain_type] explainable_stmt {EXPLAIN}
More information( Version 0.4 ) 1
( Version 0.4 ) 1 3 3.... 3 3 5.... 9 10 12 Entities-Relationship Model. 13 14 15.. 17 2 ( ) version 0.3 Int TextVarchar byte byte byte 3 Id Int 20 Name Surname Varchar 20 Forename Varchar 20 Alternate
More information一 個 SQL Injection 實 例 的 啟 示 頁 2 / 6 因 此, 在 知 名 網 站 上 看 到 SQL Injection, 讓 人 驚 心, 卻 不 意 外 網 站 專 案 外 包 是 目 前 業 界 的 常 態, 而 在 價 格 取 勝 的 制 度 下, 低 價 得 標 的 S
一 個 SQL Injection 實 例 的 啟 示 頁 1 / 6 你 的 網 站 在 裸 奔 嗎? 一 個 SQL Injection 實 例 的 啟 示 作 者 : 李 明 儒 SQL Injection( 資 料 隱 碼 攻 擊 ) 問 題 早 就 不 是 什 麼 新 聞, 但 前 陣 子 在 一 個 頗 具 知 名 度 的 活 動 網 站 上, 赫 然 發 現 它 大 刺 刺 地 現 身!
More informationebook10-5
Oracle 7.x RDBMS 5 Oracle S Y S S Y S T E M O r a c l e 5.1 O r a c l e R D B M S O r a c l e O r a c l e 5.2 SYS SYSTEM S Y S S Y S T E M O r a c l e S Y S V $ D B A C O N N E C T R E S O U R C E S Y
More informationMicrosoft PowerPoint - 05-SQL3-advanced.ppt
SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum
More informationSQL: Interactive Queries (2)
SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum
More informationPowerPoint Presentation
数 据 库 培 训 项 目 研 究 Oracle 索 引 探 究 B*tree 索 引 与 位 图 索 引 的 特 点 作 者 : 赵 超 2008 年 12 月 18 日 实 验 环 境 Windows-server2003 内 存 :2G Oracle 10.2.0 ORACLE_SID=orcl 索 引 类 型 B*tree 索 引 ( 默 认 方 式 ) 位 图 索 引 (bitmap) 反
More informationMySQL資料庫教學
SQL: 結 構 化 查 詢 語 言 國 立 聯 合 大 學 資 訊 管 理 學 系 陳 士 杰 老 師 Outlines Database Languages SQL 資 料 型 態 Data Query Language, DQL ( 資 料 查 詢 語 言 ) Data Definition Language, DDL ( 資 料 定 義 語 言 ) Data Manipulation Language,
More information「人名權威檔」資料庫欄位建置表
( version 0.2) 1 3 3 3 3 5 6 9.... 11 Entities - Relationship Model..... 12 13 14 16 2 ( ) Int Varchar Text byte byte byte Id Int 20 Name Surname Varchar 20 Forename Varchar 20 Alternate Type Varchar 10
More informationebook 96-16
16 13 / ( ) 16-1 SQL*Net/Net8 SQL*Net/Net8 SQL*Net/Net8 16-1 / S Q L SQL*Net V2 N e t 8 S Q L * N e t N e t ( ) 16.1 S Q L O r a c l e S Q L 16 401 ) ( H R _ L I N K create database link p u b l i c (
More informationuntitled
1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider
More informationCDWA Mapping. 22 Dublin Core Mapping
(version 0.23) 1 3... 3 3 3 5 7 10 22 CDWA Mapping. 22 Dublin Core Mapping. 24 26 28 30 33 2 3 X version 0.2 ( ) 4 Int VarcharText byte byte byte Id Int 10 Management Main Code Varchar 30 Code Original
More information沒有投影片標題
Knowledge Information Database KID Curriculum Series Frank S.C. Tseng (http://www2.nkfust.edu.tw/~imfrank) 1 11.1 11.2 1NF 2NF 3NF BCNF 11.3 (Multi-Valued Dependency) 11.4 4NF ( ) 11.5 5NF (PJ/NF) 11.6
More informationMicrosoft Word - 2006年9月二级VF真卷.doc
机 密 启 用 前 2006 年 9 月 全 国 计 算 机 等 级 考 试 二 级 笔 试 试 卷 Visual FoxPro 数 据 库 程 序 设 计 27 注 意 事 项 一 考 生 应 严 格 遵 守 考 场 规 则, 得 到 监 考 人 员 指 令 后 方 可 作 答 二 考 生 拿 到 试 卷 后 应 首 先 将 自 己 的 姓 名 准 考 证 号 等 内 容 涂 写 在 答 题 卡
More information季刊9web.indd
在 全 国 现 场 会 上 成 功 展 示 全 国 烟 叶 收 购 暨 现 代 烟 草 农 业 建 设 现 场 会 7 月 6 日 至 8 日 在 昆 明 召 开 在 国 家 局 的 领 导 下, 由 我 司 技 术 开 发 的 烟 站 ( 单 元 ) 烟 叶 管 理 信 息 系 统 在 现 场 会 上 成 功 展 示, 并 得 到 参 会 领 导 及 代 表 们 的 关 注 与 认 可 该 系 统
More informationOracle高级复制配置手册_业务广告_.doc
Oracle 高 级 复 制 配 置 手 册 作 者 : 铁 钉 Q Q: 5979404 MSN: nail.cn@msn.com Mail: nail.cn@msn.com Blog: http://nails.blog.51cto.com Materialized View Replication 复 制 模 式 实 现 了 单 主 机 对 多 个 复 制 站 点 的 数 据 同 步. 在 主
More informationuntitled
1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider
More informationSP_ SP_03 JAVA...6 SP_10 SQL...8 SP_ SP_ SP_ SP_ SP_ SP_ SP_ SP_04.NET...33 SP_02 C...37 SP_05
1 SP_01...3 SP_03 JAVA...6 SP_10 SQL...8 SP_51...12 SP_32...15 SP_53...18 SP_20...21 SP_22...24 SP_21...27 SP_23...30 SP_04.NET...33 SP_02 C...37 SP_05 FLASH...39 SP_06...42 2 SP_01 1. 8. Excel 2. 9. PowerPoint
More informationebook 132-2
2 SQL Server 7.0 SQL Server SQL Server 7 SQL Server 7 5 2.1 SQL Server 7 SQL Server 7 SQL Server SQL Server SQL Server 2.1.1 SQL Server Windows NT/2000 Windows 95/98 ( r a n d o m access memory R A M )
More information0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT au_fname,au_ lname FROM authors ORDER BY
0 SQL SQL SELECT DISTINCT city, state FROM customers; SQL SQL DBMS SQL DBMS SQL 0-1 SQL SQL 0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT
More information一步一步教你搞网站同步镜像!|动易Cms
一 步 一 步 教 你 搞 网 站 同 步 镜 像! 动 易 Cms 前 几 天 看 见 论 坛 里 有 位 朋 友 问 一 个 关 于 镜 像 的 问 题, 今 天 刚 好 搞 到 了 一 个, 于 是 拿 出 来 和 大 家 一 起 分 享 了! 1. 介 绍 现 在 的 网 站 随 着 访 问 量 的 增 加, 单 一 服 务 器 无 法 承 担 巨 大 的 访 问 量, 有 没 有 什 么
More informationebook 165-1
1 2 A N S I / S PA R C 3 4 S Q L 1 1.1 1-1 C E L L A R 1-2 1-3 ( i n s e r t ) ( c h a n g e ) ( d e l e t e ) 3 4 5 1) 1-1 C E L L A R ( t a b l e ) (relational table) 1. 3 1. 6 2 1-1 CELLAR 1-2 1-3 /
More information第6章 数据库技术基础
第 六 章 数 据 库 技 术 基 础 本 章 要 点 数 据 库 系 统 概 述 关 系 数 据 库 数 据 库 设 计 数 据 库 系 统 概 述 数 据 管 理 技 术 的 发 展 数 据 管 理 技 术 的 发 展 分 三 个 阶 段 : 人 工 管 理 阶 段 文 件 系 统 管 理 阶 段 数 据 库 系 统 管 理 阶 段 数 据 库 系 统 概 述 数 据 库 数 据 库 管 理 系
More informationepub 61-6
6 We b 6.1 6.1.1 R e c o r d s e t 6-1 6-1 6.1.2 166 Dreamweaver UltraDev 6-2 6-2 6-3 3 6-3 I I S 6 167 Tr a i n M i s 6-4 6-4 6.1.3 10 000 1 K 10 000K 10 M 6-5 Dreamweaver UltraDev Repeat Region 6-5 168
More informationuntitled
-JAVA 1. Java IDC 20 20% 5 2005 42.5 JAVA IDC JAVA 60% 70% JAVA 3 5 10 JAVA JAVA JAVA J2EE J2SE J2ME 70% JAVA JAVA 20 1 51 2. JAVA SUN JAVA J2EE J2EE 3. 1. CSTP CSTP 2 51 2. 3. CSTP IT CSTP IT IT CSTP
More information回滚段探究
oracle oracle internal DBA oracle document oracle concepts oracle document oracle DBWR update t set object_id = '0' where object_id = '12344'; 1 row updated. commit; Commit complete. 0 12344 12344 0 10%
More informationstarter_pdfmerge
許 致 學 本 場 次 內 容 效 能 調 校 與 規 劃 SQL Server 2008 提 升 效 能 的 新 功 能 SQL Server 2008 效 能 調 校 工 具 效 能 不 佳 之 影 響 法 滿 足 使 用 者 需 求 無 業 生 產 力 客 戶 忠 誠 度 企 資 訊 人 員 績 效 不 彰 痛 醫 頭 腳 痛 醫 腳 頭 急 亂 投 醫 硬 體 升 級 不 一 定 可 以 獲
More informationuntitled
2006 6 Geoframe Geoframe 4.0.3 Geoframe 1.2 1 Project Manager Project Management Create a new project Create a new project ( ) OK storage setting OK (Create charisma project extension) NO OK 2 Edit project
More informationOracle9i 的查询优化
Oracle9i Oracle 2002 2 Oracle9i...4...4...4 Oracle?...4 SQL...5...6...6...6...7...8...9...9 CUBE...10...11...11...11 OR...12...12...14...14...15...15...16...16...18...18...18...19...19...19...20...20 OLAP...20...21...21
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,
More information錄...1 說...2 說 說...5 六 率 POST PAY PREPAY DEPOSIT 更
AX5000 Version 1.0 2006 年 9 錄...1 說...2 說...3...4 說...5 六...6 6.1 率...7 6.2 POST PAY...8 6.3 PREPAY DEPOSIT...9 6.4...10 6.5...11 更...12...12 LCD IC LED Flash 更 兩 RJ11 ( ) DC ON OFF ON 狀 狀 更 OFF 復 狀 說
More informationebook45-5
5 S Q L SQL Server 5.1 5-1 SQL Server 5-1 A B S A C O S A S I N ATA N AT N 2 C E I L I N G C O S C O T D E G R E E S E X P F L O O R L O G L O G 10 P I P O W E R R A D I A N S R A N D R O U N D S I G N
More informationOracle 4
Oracle 4 01 04 Oracle 07 Oracle Oracle Instance Oracle Instance Oracle Instance Oracle Database Oracle Database Instance Parameter File Pfile Instance Instance Instance Instance Oracle Instance System
More information科学计算的语言-FORTRAN95
科 学 计 算 的 语 言 -FORTRAN95 目 录 第 一 篇 闲 话 第 1 章 目 的 是 计 算 第 2 章 FORTRAN95 如 何 描 述 计 算 第 3 章 FORTRAN 的 编 译 系 统 第 二 篇 计 算 的 叙 述 第 4 章 FORTRAN95 语 言 的 形 貌 第 5 章 准 备 数 据 第 6 章 构 造 数 据 第 7 章 声 明 数 据 第 8 章 构 造
More informationuntitled
1 .NET 料.NET 料 料來 類.NET Data Provider SQL.NET Data Provider System.Data.SqlClient 料 MS-SQL OLE DB.NET Data Provider System.Data.OleDb 料 Dbase FoxPro Excel Access Oracle Access ODBC.NET Data Provider 料
More informationFront 2 Polar F11 ( ) : Polar F11 Polar F11 Polar F11 Polar (Keeps U Fit - Own Workout Program) Polar Polar F11 Polar F11 Polar F11 Polar (
Front 1 - Polar F11 Light OK Back Front 2 Polar F11 ( ) : Polar F11 Polar F11 Polar F11 Polar (Keeps U Fit - Own Workout Program) Polar Polar F11 Polar F11 Polar F11 Polar (www.polarfitnesstrainer.com)
More information精 品 库 我 们 的 都 是 精 品 _www.jingpinwenku.com (8) 数 据 库 数 据 库 系 统 和 数 据 库 管 理 系 统 之 问 的 关 系 是 ( ) A) 数 据 库 包 括 数 据 库 系 统 和 数 据 库 管 理 系 统 B) 数 据 库 系 统 包 括
更 多 内 容 请 查 看 精 品 文 库 网 www.jingpinwenku.com 全 国 计 算 机 等 级 考 试 全 真 模 拟 试 卷 (4) 二 级 Visual FoxPro ( 考 试 时 间 120 分 钟, 满 分 100 分 ) 一 选 择 题 ( 每 小 题 1 分, 共 40 分 )(1) 算 法 是 指 ( ) A) 计 算 机 程 序 B) 解 决 问 题 的 计
More informationMicrosoft Word - 正文.doc
3 Access 3.1 SharePoint SharePoint SharePoint 3.6 1 1.15 1 3.1 3.2 1 3.1 40 Access 3.2 2 ID / 3.3 3 3.4 3.5 3.3 / 3.4 3.5 3 41 4 / 6 3.6 3.6 5 1 40 24 3.7 3.7 6 3.8 * 3.8 2 42 Access 1.16 1 3.1 / 1 3.9
More informationPowerPoint Presentation
Visual Basic 2005 學 習 範 本 第 7 章 陣 列 的 活 用 7-1 陣 列 當 我 們 需 要 處 理 資 料 時, 都 使 用 變 數 來 存 放 資 料 因 為 一 個 變 數 只 能 代 表 一 個 資 料, 若 需 要 處 理 100 位 同 學 的 成 績 時, 便 要 使 用 100 個 不 同 的 變 數 名 稱, 這 不 但 會 增 加 變 數 名 稱 命 名
More information基于ECO的UML模型驱动的数据库应用开发1.doc
ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip
More informationuntitled
rxli@public.wh.hb.cn http://idc.hust.edu.cn/~rxli/ 2 3 ( ) (Distributed System) Integrated System () 4 5 6 System Integration 7 8 Integrated System 9 1.1 CIMS IDEF CSCW STEP MIS MRPII ERP CRM SCM MIS:
More informationZENworks 11 SP4
ZENworks 11 SP4 2015 年 7 月 本 自 述 文 件 中 的 信 息 与 Novell ZENworks 11 Support Pack 4 版 本 相 关 第 1 节 安 装 ( 第 1 页 ) 第 2 节 计 划 升 级 到 ZENworks 11 SP4 ( 第 1 页 ) 第 3 节 升 级 ( 第 2 页 ) 第 4 节 新 功 能 ( 第 2 页 ) 第 5 节 ZENworks
More information使用SQL Developer
使 用 SQL Developer 达 成 的 目 标 / 方 案 1 创 建 一 个 新 的 数 据 库 连 接 ; 2 在 SQL Developer 中 查 看 数 据 库 对 象 的 信 息 修 改 数 据 ; 3 在 SQL Developer 中 创 建 表 ; 4 在 SQL Developer 中 创 建 索 引 ; 5 在 SQL Developer 中 创 建 函 数 ; 6 在
More information前 言 学 习 计 算 机 的 我 们 无 时 无 刻 不 在 和 数 据 打 交 道, 怎 么 有 效 的 管 理 这 些 数 据 变 成 我 们 必 须 要 谈 论 的 话 题 这 个 问 题 也 正 是 本 书 需 要 探 讨 的 问 题 : 数 据 库 技 术, 目 前 的 数 据 技 术
2010 开 发 者 智 慧 之 mysql 数 据 库 作 者 :TelesLi 思 想 有 多 远 就 可 以 走 多 远 2010 前 言 学 习 计 算 机 的 我 们 无 时 无 刻 不 在 和 数 据 打 交 道, 怎 么 有 效 的 管 理 这 些 数 据 变 成 我 们 必 须 要 谈 论 的 话 题 这 个 问 题 也 正 是 本 书 需 要 探 讨 的 问 题 : 数 据 库 技
More information上海市本科教学质量年度报告
上 海 市 本 科 教 学 质 量 年 度 报 告 数 据 内 涵 说 明 V2.0 版 上 海 市 教 委 高 教 处 上 海 喆 思 (2015.07.02) 目 录 一 基 本 统 计 挃 标 说 明... 4 二 挃 标 解 释... 4 1. 全 日 制 在 校 本 科 生 数 及 占 在 校 生 总 数 的 比 例 ( 学 年 )... 4 2. 当 年 本 科 招 生 与 业 总 数
More informationebook 165-6
6 6.1 C o d d 5.1, 6.1 3 r e s t r i c t p r o j e c t j o i n 6. 1 C o d d 6-1 8 o r i g i n a l C o d d 8 8 6. 10 C o d d 8 6-1 8 1) u n i o n i n t e r s e c t i o n d i ff e r e n c e Cartesian product
More informationOracle高级复制冲突解决机制的研究
Oracle dbms_rectifier_diff Oracle : eygle (eygle.com@gmail.com dbms_rectifier_diff Oracle dbms_rectifier_diff : http://www.eygle.com/archives/2005/01/eoadbms_rectifi.html DIFFERENCES Oracle dbms_rectifier_diff.differences
More information前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii
前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii C# 7 More Effective C# C# C# C# C# C# Common Language Runtime CLR just-in-time
More information目錄... ivv...vii Chapter DETECT
... ivv...vii Chapter 1 1.1... 5 1.2... 6 1.3 DETECT... 11 1.3.1... 12 1.3.1.1...12 1.3.1.2...13 1.3.1.3...14 1.3.1.4...15 1.3.1.5...15 1.3.1.6...16 1.3.2 DETECT... 17 1.3.3... 19 1.3.4... 20... 22 Chapter
More informationMicrosoft Word - 100118002.htm
100 年 度 11800 電 腦 軟 體 應 用 乙 級 技 術 士 技 能 檢 定 學 科 測 試 試 題 本 試 卷 有 選 擇 題 80 題, 每 題 1.25 分, 皆 為 單 選 選 擇 題, 測 試 時 間 為 100 分 鐘, 請 在 答 案 卡 上 作 答, 答 錯 不 倒 扣 ; 未 作 答 者, 不 予 計 分 准 考 證 號 碼 : 姓 名 : 選 擇 題 : 1. (3)
More information(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor
1 4.1.1.1 (Load) 14 1.1 1 4.1.1.2 (Save) 14 1.1.1 1 4.1.2 (Buffer) 16 1.1.2 1 4.1.3 (Device) 16 1.1.3 1 4.1.3.1 (Select Device) 16 2 4.1.3.2 (Device Info) 16 2.1 2 4.1.3.3 (Adapter) 17 2.1.1 CD-ROM 2 4.1.4
More information第四章 SQL 介紹
第 四 章 SQL 介 紹 黃 仁 鵬 2009/3/26 資 料 庫 系 統 理 論 與 實 務 - 使 用 Oracle 1 4-1 資 料 庫 共 通 的 語 言 -SQL 像 大 多 數 資 料 庫 相 同,ORACLE 只 會 說 一 種 共 通 的 語 言, 而 這 種 語 言 就 是 SQL (Structural Query Language, 結 構 化 查 詢 語 言 ) 2009/3/26
More informationuntitled
ArcSDE ESRI ( ) High availability Backup & recovery Clustering Replication Mirroring Standby servers ArcSDE % 95% 99.9% 99.99% 99.999% 99.9999% 18.25 / 8.7 / 52.5 / 5.25 / 31.8 / Spatial Geodatabase
More information1. 访 问 最 新 发 行 公 告 信 息 jconnect for JDBC 7.0 1. 访 问 最 新 发 行 公 告 信 息 最 新 版 本 的 发 行 公 告 可 以 从 网 上 获 得 若 要 查 找 在 本 产 品 发 布 后 增 加 的 重 要 产 品 或 文 档 信 息, 请 访
发 行 公 告 jconnect for JDBC 7.0 文 档 ID:DC74874-01-0700-01 最 后 修 订 日 期 :2010 年 3 月 2 日 主 题 页 码 1. 访 问 最 新 发 行 公 告 信 息 2 2. 产 品 摘 要 2 3. 特 殊 安 装 说 明 2 3.1 查 看 您 的 jconnect 版 本 3 4. 特 殊 升 级 指 导 3 4.1 迁 移 3
More information数据分析技术介绍
DW OLAP DM ,,, :, DW OLAP DM DW OLAP DM DW OLAP DM 80 " "William H.Inmon Data mart " " Meta Data ( ) ETL ETL Extract Transform Cleansing Load ETL Oracle Oracle (CWM) (OEM) 9i Application Server 9i
More information3.1 num = 3 ch = 'C' 2
Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 1Z0-007 Title : Introduction to Oracle9i: SQL Version : DEMO 1 / 10 1. What does the FORCE option for creating a view do? A.creates a view
More information支付宝2011年 IT资产与费用预算
OceanBase 支 持 ACID 的 可 扩 展 关 系 数 据 库 qushan@alipay.com 2013 年 04 月 关 系 数 据 库 发 展 1970-72:E.F.Codd 数 据 库 关 系 模 式 20 世 纨 80 年 代 第 一 个 商 业 数 据 库 Oracle V2 SQL 成 为 数 据 库 行 业 标 准 可 扩 展 性 Mainframe: 小 型 机 =>
More informationebook 185-6
6 Red Hat Linux DB2 Universal Database 6.1 D B 2 Red Hat D B 2 Control Center D B 2 D B 2 D B 2 6.1 DB2 Universal Database [DB2]6.1 D B 2 O LT P O L A P D B 2 I B M P C We e k D B 2 D B 2 L i n u x Windows
More informationValue Chain ~ (E-Business RD / Pre-Sales / Consultant) APS, Advanc
Key @ Value Chain fanchihmin@yahoo.com.tw 1 Key@ValueChain 1994.6 1996.6 2000.6 2000.10 ~ 2004.10 (E- RD / Pre-Sales / Consultant) APS, Advanced Planning & Scheduling CDP, Collaborative Demand Planning
More informationBus Hound 5
Bus Hound 5.0 ( 1.0) 21IC 2007 7 BusHound perisoft PC hound Bus Hound 6.0 5.0 5.0 Bus Hound, IDE SCSI USB 1394 DVD Windows9X,WindowsMe,NT4.0,2000,2003,XP XP IRP Html ZIP SCSI sense USB Bus Hound 1 Bus
More information自动化接口
基 于 文 件 的 数 据 交 换 的 注 意 事 项 1 SPI 2 COMOS Automation 操 作 手 册 通 用 Excel 导 入 3 通 过 OPC 客 户 端 的 过 程 可 视 化 4 SIMIT 5 GSD 6 05/2016 V 10.2 A5E37093378-AA 法 律 资 讯 警 告 提 示 系 统 为 了 您 的 人 身 安 全 以 及 避 免 财 产 损 失,
More informationA API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内
A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内 容 分 发 网 络 Alibaba Cloud Content Delivery Network 一
More informationf2.eps
前 言, 目 录 产 品 概 况 1 SICAM PAS SICAM 电 力 自 动 化 系 统 配 置 和 使 用 说 明 配 置 2 操 作 3 实 时 数 据 4 人 机 界 面 5 SINAUT LSA 转 换 器 6 状 态 与 控 制 信 息 A 版 本 号 : 08.03.05 附 录, 索 引 安 全 标 识 由 于 对 设 备 的 特 殊 操 作 往 往 需 要 一 些 特 殊 的
More informationjdbc:hsqldb:hsql: jdbc:hsqldb:hsqls: jdbc:hsqldb:http: jdbc:hsqldb:https: //localhost //192.0.0.10:9500 / /dbserver.somedomain.com /an_alias /enrollme
sh -x path/to/hsqldb start > /tmp/hstart.log 2>&1 第 4 章 高 级 话 题 4.1 本 章 目 的 许 多 在 论 坛 或 邮 件 组 中 重 复 出 现 的 问 题 将 会 在 本 文 档 中 进 行 解 答 如 果 你 打 算 在 应 用 程 序 中 使 用 HSQLDB 的 话, 那 么 你 应 该 好 好 阅 读 一 下 本 文 章 本 章
More information計畫書封面範例
致 理 技 術 學 院 資 訊 管 理 系 專 題 期 末 報 告 書 藝 網 情 深 學 生 : 陳 暐 儒 (19810202) 陳 志 蒂 (19810138) 李 翊 菡 (19810117) 陳 志 萱 (19810237) 林 宛 柔 (19810218) 胡 肇 群 (19810213) 本 成 果 報 告 書 經 審 查 及 口 試 合 格 特 此 證 明 指 導 老 師 : 中 華
More information2 SGML, XML Document Traditional WYSIWYG Document Content Presentation Content Presentation Structure Structure? XML/SGML 3 2 SGML SGML Standard Gener
SGML HTML XML 1 SGML XML Extensible Markup Language XML SGML Standard Generalized Markup Language, ISO 8879, SGML HTML ( Hypertext Markup Language HTML) (Markup Language) (Tag) < > Markup (ISO) 1986 SGML
More information