注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫(kù)SQL SeverSQL編程風(fēng)格

SQL編程風(fēng)格

SQL編程風(fēng)格

定 價(jià):¥39.00

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

ISBN: 9787115185822 出版時(shí)間: 2008-10-01 包裝: 平裝
開本: 大16開 頁(yè)數(shù): 194 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書目錄

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

本目錄推薦

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