10-4-1CREATETABLE新增关联表.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10-4-1CREATETABLE新增关联表

第10章 SQL定義、操作與控制指令 10-1 SQL語言的基礎 10-2 SQL查詢工具 10-3 資料庫的實體資料模型 10-4 資料定義語言 10-5 資料操作語言 10-6 資料控制語言 10-7 產生SQL Server指令碼精靈 10-1 SQL語言的基礎 10-1-1 SQL結構化查詢語言 10-1-2 關聯式資料庫管理系統的查詢最佳化 10-1-1 SQL結構化查詢語言-說明 「SQL」(Structured Query Language)的全名是結構化查詢語言,筆者簡稱為SQL語言,SQL語言是「ANSI」(American National Standards Institute)制定的標準資料庫語言,其版本分為: 1989年的ANSI-SQL 89 1992年制定的ANSI-SQL 92,也稱為SQL 2,這是目前關聯式資料庫的標準語言 最新版ANSI-SQL 99稱為SQL 3,適用在物件關聯或導向式資料庫的SQL語言。 10-1-1 SQL結構化查詢語言-種類 SQL語言依指令功能,可以分成三類,如下所示: 資料定義語言DDL(Data Definition Language):建立資料表、視界和索引等的SQL指令。 資料操作語言DML(Data Manipulation Language):資料表記錄插入、刪除、更新和查詢指令。 資料控制語言DCL(Data Control Language):資料庫安全管理的權限設定指令。 10-1-2 關聯式資料庫管理系統的查詢最佳化-執行順序圖例 SQL指令需要轉換成低階機器語言指令來執行查詢,其轉換的步驟即查詢處理模組(Query Processor)子系統的執行順序,如下圖所示: 10-1-2 關聯式資料庫管理系統的查詢最佳化-SQL查詢的步驟 第一步:在查詢剖析器檢查SQL語言的語法是否正確,且驗證屬性和關聯表名稱是否存在。 第二步:在查詢最佳化模組將它轉換成中間格式關聯式代數建立的「查詢樹」(Query Tree),然後執行最佳化處理產生「執行計劃」(Execution Plan)。 第三步:使用RDBMS提供的選擇、合併、投影等關聯代數運算子的演算法,從執行計劃產生所需的程式碼。 第四步:使用直譯或編譯方式將程式碼轉換成機器語言後,就可以執行SQL指令產生查詢結果。 10-1-2 關聯式資料庫管理系統的查詢最佳化-查詢樹(Query Tree) 查詢樹(Query Tree)是一棵關聯式代數運算式的樹狀結構,查詢樹的節點規則,如下所示: 關聯表是樹的葉節點(Leaf Nodes)。 關聯式代數運算子是中間節點(Internal Nodes)。 10-1-2 關聯式資料庫管理系統的查詢最佳化-查詢樹圖例 SELECT Students.name, Classes.room FROM Students, Classes WHERE Students.sid = Classes.sid and Students.GPA = 3.0 and Classes.c_no = ‘CS222’ 10-1-2 關聯式資料庫管理系統的查詢最佳化-查詢最佳化模組 查詢最佳化模組(Query Optimizer)的功能是在最佳化查詢樹,讓查詢樹執行的更有效率。 最佳化的作法有很多種,最簡單的方式是將查詢樹的節點轉換成更有效率且相等功能的節點,這些最佳化規則稱為啟發式查詢最佳化(Heuristic Query Optimization)技術。 10-1-2 關聯式資料庫管理系統的查詢最佳化-查詢最佳化技術1 啟發式查詢最佳化(Heuristic Query Optimization):這是規則基礎的最隹化,使用關聯式代數已知的轉換規則產生最有效率的執行計劃,例如:將卡笛生乘積運算和之後的選擇運算以合併運算來取代。 造句法式查詢最佳化(Syntactical Query Optimization):以查詢樹自行造句找出所有同等功能的可能關聯式代數運算式,其最佳化的依據主要在評估是否有索引可以改進執行效率,以便找出最佳的執行計劃。 10-1-2 關聯式資料庫管理系統的查詢最佳化-查詢最佳化技術2 成本基礎式查詢最佳化(Cost-Based Query Optimization):使用RDBMS各種資訊評估使用那一種順序執行關聯式代數運算式擁有最低的成本,以找出最有效率的存取方式,這是SQL Server和目前大多數RDBMS採用的最佳化技術。 語意式查詢最佳化(Semantic Query Optimization):語意式查詢最佳化需要查詢最佳化模組了解資料庫綱要,可以自行依所知的系統限制來簡化或刪除查詢結果是空集合的部分查詢,而且可以自行評估是

文档评论(0)

75986597 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档