注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡數(shù)據(jù)庫SQL SeverSQL編程風格

SQL編程風格

SQL編程風格

定 價:¥39.00

作 者: (美)塞科 著,米全喜 譯
出版社: 人民郵電出版社
叢編項: 圖靈程序設(shè)計叢書
標 簽: SQL

ISBN: 9787115185822 出版時間: 2008-10-01 包裝: 平裝
開本: 大16開 頁數(shù): 194 字數(shù):  

內(nèi)容簡介

  《圖靈程序設(shè)計叢書·SQL編程風格》針對數(shù)據(jù)庫的設(shè)計與編程提出了一系列規(guī)則和建議,內(nèi)容涵蓋命名規(guī)范、代碼版式、鍵的設(shè)計、數(shù)據(jù)編碼方案、編碼風格、視圖和存儲過程的使用以及SQL 中的思考方式和一些試探法等多方面。這些規(guī)則都給出了原理說明和例外情況,并列舉了大量示例。通過閱讀《圖靈程序設(shè)計叢書·SQL編程風格》,讀者可以加深對SQL 思維方式的理解,改善SQL 編程風格,并編寫出可讀性強、可移植且易于維護的SQL 代碼。此外,書中的規(guī)則對于公司內(nèi)部制定編程規(guī)范也具有很好的借鑒作用?!秷D靈程序設(shè)計叢書·SQL編程風格》適合數(shù)據(jù)庫管理人員和開發(fā)人員閱讀,也可作為高等院校計算機專業(yè)師生的參考教材。

作者簡介

  Joe Celko世界著名的數(shù)據(jù)庫專家,曾經(jīng)擔任ANSI SQL標準委員會成員達10年之久,他也是世界上讀者數(shù)量最多的SOL圖書作者之一。他曾撰寫過一系列專欄,并通過他的新聞組支持了數(shù)據(jù)庫編程技術(shù)以及ANSI/ISO標準的發(fā)展。除本書外,他還撰寫了多部SQL經(jīng)典著作,包括《SQL解惑(第2版)》(人民郵電出版社,2008)和《SOL權(quán)威指南》(即將由人民郵電出版社出版)。

圖書目錄

第1章 名稱與數(shù)據(jù)元素 
 1.1 名稱 
  1.1.1 注意名稱長度 
  1.1.2 在名稱中避免使用所有特殊字符 
  1.1.3 避免使用引號分隔標識符 
  1.1.4 實施大寫規(guī)則以避免大小寫區(qū)分問題 
 1.2 遵循ISO-11179標準命名規(guī)范 
  1.2.1 SQL的ISO-11179 
  1.2.2 抽象級別 
  1.2.3 避免使用描述性前綴 
  1.2.4 制定標準化的后綴 
  1.2.5 表和視圖名稱應當是遵循業(yè)界標準的、集合、類或復數(shù)名稱 
  1.2.6 相關(guān)名基本上也要遵循與其他名稱相同的命名規(guī)則 
  1.2.7 關(guān)系表名應當是常用描述術(shù)語 
  1.2.8 元數(shù)據(jù)模式訪問對象的名稱可以包含結(jié)構(gòu)信息 
 1.3 命名數(shù)據(jù)元素時遇到的問題 
  1.3.1 避免模糊名稱 
  1.3.2 避免名稱在不同的地方改變 
  1.3.3 不要使用專有暴露的物理定位符 
第2章 字體、標點和間距 
 2.1 版式與代碼 
  2.1.1 名稱中只使用大小寫字母、數(shù)字和下劃線 
  2.1.2 列名、參數(shù)和變量等標量小寫 
  2.1.3 模式對象名首字母大寫 
  2.1.4 保留字大寫 
  2.1.5 避免使用駝峰命名法 
 2.2 單詞間距 
 2.3 遵循規(guī)范標點規(guī)則 
 2.4 使用完全保留字 
 2.5 如果在使用的SQL產(chǎn)品中有標準保留字,就不要使用專有保留字 
 2.6 如果有標準語句,就不要使用專有語句 
 2.7 疏排版面的隔空白道和垂直間距 
 2.8 縮進 
 2.9 使用行間距將語句分組 
第3章 數(shù)據(jù)定義語言 
 3.1 將默認值放到合適的地方 
 3.2 默認值的類型應當與列的類型相同 
 3.3 不要使用專有數(shù)據(jù)類型 
 3.4 將PRIMARY KEY聲明放在CREATE TABLE語句的開頭 
 3.5 將列按照邏輯順序排列并按照邏輯組聚合 
 3.6 將參考約束和操作在數(shù)據(jù)類型下面縮進 
 3.7 在產(chǎn)品代碼中為約束命名 
 3.8 將CHECK()約束放在所檢查的內(nèi)容附近 
  3.8.1 對數(shù)值考慮使用范圍約束 
  3.8.2 對于字符值考慮使用LIKE和SIMILAR TO約束 
  3.8.3 時間值是有長短的 
  3.8.4 避免使用REAL和FLOAT數(shù)據(jù)類型 
 3.9 將多列約束盡可能靠近這些列 
 3.10 將表級別的CHECK()約束放到表聲明的最后 
 3.11 對多表約束使用CREATE ASSERTION 
 3.12 使CHECK()約束的目的唯一 
 3.13 每個表都必須有鍵才能稱為表 
  3.13.1 自動編號不是關(guān)系型鍵 
  3.13.2 文件不是表 
  3.13.3 鍵的屬性 
 3.14 不要分割屬性 
  3.14.1 分割為多個表 
  3.14.2 分割為多個列 
  3.14.3 分割為多個行 
 3.15 不要對RDBMS使用面向?qū)ο蟮脑O(shè)計 
  3.15.1 表不是對象實例 
  3.15.2 對RDBMS不要使用EAV設(shè)計 
第4章 尺度與測量 
 4.1 測度論 
  4.1.1 范圍與顆粒度 
  4.1.2 范圍 
  4.1.3 顆粒度、準確度和精度 
 4.2 尺度類型 
  4.2.1 名義尺度 
  4.2.2 種類尺度 
  4.2.3 絕對尺度 
  4.2.4 順序尺度 
  4.2.5 級別尺度 
  4.2.6 間距尺度 
  4.2.7 比例尺度 
 4.3 使用尺度 
 4.4 尺度轉(zhuǎn)換 
 4.5 導出單位 
 4.6 標點與標準單位 
 4.7 在數(shù)據(jù)庫中使用尺度的一般準則 
第5章 數(shù)據(jù)編碼方案 
 5.1 不好的編碼方案 
 5.2 編碼方案類型 
  5.2.1 枚舉編碼 
  5.2.2 測量編碼 
  5.2.3 縮寫編碼 
  5.2.4 算法編碼 
  5.2.5 層次編碼 
  5.2.6 向量編碼 
  5.2.7 拼接編碼 
 5.3 設(shè)計編碼方案的一般準則 
  5.3.1 現(xiàn)有的編碼標準 
  5.3.2 允許擴展 
  5.3.3 使用顯式的丟失值避免NULL 
  5.3.4 為終端用戶轉(zhuǎn)換編碼 
  5.3.5 在數(shù)據(jù)庫中保存編碼 
 5.4 多字符集 
第6章 編碼選擇 
 6.1 選擇標準構(gòu)造,不要選擇專有構(gòu)造 
  6.1.1 使用標準OUTER JOIN語法 
  6.1.2 中綴INNER JOIN和CORSS JOIN語法是可選的,但是很好用 
  6.1.3 使用ISO時間語法 
  6.1.4 使用標準和可移植的函數(shù) 
 6.2 選擇緊湊格式,不要選擇松散格式 
  6.2.1 避免使用多余的括號 
  6.2.2 使用CASE系列表達式 
  6.2.3 避免使用冗余表達式 
  6.2.4 尋找緊湊格式 
 6.3 使用注釋 
  6.3.1 存儲過程 
  6.3.2 控制語句注釋 
  6.3.3 對子句的注釋 
 6.4 避免優(yōu)化器提示 
 6.5 觸發(fā)器的優(yōu)先級不應當高于DRI操作 
 6.6 使用SQL存儲過程 
 6.7 避免在數(shù)據(jù)庫中使用用戶定義函數(shù)和擴展 
  6.7.1 多語言問題 
  6.7.2 可移植性問題 
  6.7.3 優(yōu)化問題 
 6.8 避免使用過度的輔助索引 
 6.9 避免使用關(guān)聯(lián)子查詢 
 6.10 避免使用UNION 
 6.11 測試SQL 
  6.11.1 測試NULL所有可能的組合 
  6.11.2 檢查并測試所有的CHECK()約束 
  6.11.3 注意字符列 
  6.11.4 測試大小 
第7章 如何使用視圖 
 7.1 視圖的命名規(guī)范與表一樣 
 7.2 視圖提供行和列級別的安全性 
 7.3 視圖確保了有效訪問路徑 
 7.4 視圖對用戶隱藏了復雜性 
 7.5 視圖確保了正確的數(shù)據(jù)派生 
 7.6 視圖將表和/或列重新命名 
 7.7 視圖實施復雜的完整性約束 
 7.8 可更新的視圖 
  7.8.1 WITH CHECK OPTION子句 
  7.8.2 INSTEAD OF觸發(fā)器 
 7.9 每個視圖都要有創(chuàng)建的原因 
 7.10 避免視圖的數(shù)量快速增長 
 7.11 將視圖與基表同步 
 7.12 不恰當?shù)厥褂靡晥D 
  7.12.1 用于域支持的視圖 
  7.12.2 單個解決方案的視圖 
  7.12.3 不要為每個基表都創(chuàng)建視圖 
 7.13 學習使用物化的視圖 
第8章 如何編寫存儲過程 
 8.1 大多數(shù)SQL 4GL都不是用于應用程序的 
 8.2 基本軟件工程 
  8.2.1 內(nèi)聚 
  8.2.2 耦合 
 8.3 使用傳統(tǒng)的結(jié)構(gòu)化編程 
 8.4 避免可移植性問題 
  8.4.1 避免創(chuàng)建臨時表 
  8.4.2 避免使用游標 
  8.4.3 面向集合的構(gòu)造優(yōu)于過程化代碼 
 8.5 標量與結(jié)構(gòu)化參數(shù)的對比 
 8.6 避免使用動態(tài)SQL 
  8.6.1 性能 
  8.6.2 SQL注入 
第9章 試探法 
 9.1 將規(guī)格說明表達為清晰的語句 
 9.2 在名詞的后面加上“……的集合” 
 9.3 從問題語句中刪除行為動詞 
 9.4 仍然可以使用存根 
 9.5 不要擔心數(shù)據(jù)的顯示 
 9.6 第一次嘗試需要特別處理 
  9.6.1 不要舍不得扔掉你對DDL的第一次嘗試 
  9.6.2 保存你對DML的第一次嘗試 
 9.7 不要以方框和箭頭的方式思考 
 9.8 畫圓圈和集合圖 
 9.9 學習方言 
 9.10 假設(shè)WHERE子句是“巨型變形蟲” 
 9.11 使用新聞組和因特網(wǎng) 
第10章 以SQL的方式思考 
 10.1 不好的SQL編程方式與過程化語言 
 10.2 把列當作字段思考 
 10.3 以過程化而不是說明性的方式思考 
 10.4 模式應該看起來像輸入格式 
附錄A 資源 
附錄B 參考文獻 
索引

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號