成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MYSQL數據庫命名與其設計規范

數據庫 MySQL
以下的文章主要是介紹MYSQL數據庫命名與其設計規范,以下就是其具體方案的描述,希望在你今后的學習中會有所幫助。

你是否對獲得MYSQL數據庫命名與其設計規范 的實際操作感到十分頭疼?如果是這樣子的話,以下的文章將會給你相應的解決方案,以下的文章主要是介紹獲得MYSQL數據庫命名與其設計規范 的方案,以下就是相關內容的具體描述。

1) 標準化和規范化

數據的標準化有助于消除數據庫中的數據冗余。標準化有好幾種形式,但Third Normal Form(3NF)通常被認為在性能、擴展性和數據完整性方面達到了最好平衡。簡單來說,遵守3NF 標準的數據庫的表設計原則是:

“One Fact in One Place”即某個表只包括其本身基本的屬性,當不是它們本身所具有的屬性時需進行分解。表之間的關系通過外鍵相連接。它具有以下特點:有一組表專門存放通過鍵連接起來的關聯數據。

 

舉例:某個存放客戶及其有關定單的3NF 數據庫就可能有兩個表:Customer和Order。Order表不包含定單關聯客戶的任何信息,但表內會存放一個鍵值,該鍵指向Customer表里包含該客戶信息的那一行。

 

事實上,為了效率的緣故,對表不進行標準化有時也是必要的。

 

2) 數據驅動

 

采用數據驅動而非硬編碼的方式,許多策略變更和維護都會方便得多,大大增強系統的靈活性和擴展性。

 

舉例,假如用戶界面要訪問外部數據源(文件、XML 文檔、其他數據庫等),不妨把相應的連接和路徑信息存儲在用戶界面支持表里。還有,如果用戶界面執行工作流之類的任務(發送郵件、打印信箋、修改記錄狀態等),那么產生工作流的數據也可以存放在數據庫里。角色權限管理也可以通過數據驅動來完成。事實上,如果過程是數據驅動的,你就可以把相當大的責任推給用戶,由用戶來維護自己的工作流過程。

 

3) 考慮各種變化

 

在設計數據庫的時候考慮到哪些數據字段將來可能會發生變更。

 

舉例,姓氏就是如此(注意是西方人的姓氏,比如女性結婚后從夫姓等)。所以,在建立系統存儲客戶信息時,在單獨的一個數據表里存儲姓氏字段,而且還附加起始日和終止日等字段,這樣就可以跟蹤這一數據條目的變化。

 

 

2.數據庫涉及字符規范

 

采用26個英文字母(區分大小寫)和0-9這十個自然數,加上下劃線'_'組成,共63個字符.不能出現其他字符(注釋除外).

注意事項:

 

1) 以上MYSQL數據庫命名都不得超過30個字符的系統限制.變量名的長度限制為29(不包括標識字符@).

 

2) 數據對象、變量的命名都采用英文字符,禁止使用中文命名.絕對不要在對象名的字符之間留空格.

 

3) 小心保留詞,要保證你的字段名沒有和保留詞、數據庫系統或者常用訪問方法沖突

 

5) 保持字段名和類型的一致性,在命名字段并為其指定數據類型的時候一定要保證一致性.假如數據類型在一個表里是整數,那在另一個表里可就別變成字符型了.

 

 

3.數據庫MYSQL數據庫命名規范

 

數據庫,數據表一律使用前綴

正式數據庫名使用小寫英文以及下劃線組成,盡量說明是那個應用或者系統在使用的.比如:

 

  1. web_19floor_net  
  2. web_car 

 

 

備份數據庫名使用正式庫名加上備份時間組成,如:

 

  1. web_19floor_net_20070403  
  2. web_car_20070403 

 

 

4.數據庫表MYSQL數據庫命名規范

數據表名使用小寫英文以及下劃線組成,盡量說明是那個應用或者系統在使用的.

相關應用的數據表使用同一前綴,如論壇的表使用cdb_前綴,博客的數據表使用supe_前綴,前綴名稱一般不超過5字

 

比如:

 

 

  1. web_user  
  2. web_group  
  3. supe_userspace 

 

 

備份數據表名使用正式表名加上備份時間組成,如:

 

  1. web_user_20070403  
  2. web_group_20070403  
  3. supe_userspace_20070403 

 

 

5.字段MYSQL數據庫命名規范

字段名稱使用單詞組合完成,首字母小寫,后面單詞的首字母大寫,最好是帶表名前綴.

如 web_user 表的字段:

 

 

  1. userId  
  2. userName  
  3. userPassword 

 

 

表與表之間的相關聯字段要用統一名稱,

如 web_user 表里面的 userId 和 web_group 表里面的 userId 相對應

 

6.字段類型規范

規則:用盡量少的存儲空間來存數一個字段的數據.

 

比如能用int的就不用char或者varchar

 

能用tinyint的就不用int

 

能用varchar(20)的就不用varchar(255)

 

時間戳字段盡量用int型,如created:表示從'1970-01-01 08:00:00'開始的int秒數,采用英文單詞的過去式;gmtCreated:表示datetime類型的時間,即形如'1980-01-01 00:00:00'的時間串,Java中對應的類型為Timestamp

 

7.數據庫設計文檔規范

所有數據庫設計要寫成文檔,文檔以模塊化形式表達.大致格式如下:

'-------------------------------------------

' 表名: web_user

 

' 作者: Aeolus(傻魚)

 

' 日期: 2007-04-11

 

' 版本: 1.0

 

' 描述: 保存用戶資料

 

' 具體內容:

 

' UserID int,自動增量 用戶代碼

 

' UserName char(12) 用戶名字

 

' ......

 

'--------------------------------------------

 

 

8.索引使用原則:

 

1) 邏輯主鍵使用唯一的成組索引,對系統鍵(作為存儲過程)采用唯一的非成組索引,對任何外鍵列采用非成組索引.考慮數據庫的空間有多大,表如何進行訪問,還有這些訪問是否主要用作讀寫.

2) 大多數數據庫都索引自動創建的主鍵字段,但是可別忘了索引外鍵,它們也是經常使用的鍵,比如運行查詢顯示主表和所有關聯表的某條記錄就用得上.

 

3) 不要索引blob/text等字段,不要索引大型字段(有很多字符),這樣作會讓索引占用太多的存儲空間.

 

4) 不要索引常用的小型表

 

不要為小型數據表設置任何鍵,假如它們經常有插入和刪除操作就更別這樣作了.對這些插入和刪除操作的索引維護可能比掃描表空間消耗更多的時間.

 

9.sql語句規范

所有sql關鍵詞全部大寫,比如SELECT,UPDATE,FROM,ORDER,BY等,所有的表名和庫名都要用``包含

如:

 

SELECT COUNT(*) FROM `cdb_members` WHERE `userName` = 'aeolus';

 

10.其他設計技巧

1) 避免使用觸發器

 

觸發器的功能通常可以用其他方式實現.在調試程序時觸發器可能成為干擾.假如你確實需要采用觸發器,你最好集中對它文檔化.

 

2) 使用常用英語(或者其他任何語言)而不要使用編碼或者拼音首字母縮寫

 

在創建下拉菜單、列表、報表時最好按照英語名排序.假如需要編碼或者拼音首字母縮寫,可以在旁邊附上用戶知道的英語.

 

3) 保存常用信息

 

讓一個表專門存放一般數據庫信息非常有用.在這個表里存放數據庫當前版本、最近檢查/修復(對Access)、關聯設計文檔的名稱、客戶等信息.這樣可以實現一種簡單機制跟蹤數據庫,當客戶抱怨他們的數據庫沒有達到希望的要求而與你聯系時,這樣做對非客戶機/服務器環境特別有用.

 

4) 包含版本機制

 

在數據庫中引入版本控制機制來確定使用中的數據庫的版本.時間一長,用戶的需求總是會改變的.最終可能會要求修改數據庫結構.把版本信息直接存放到數據庫中更為方便.

 

5) 編制文檔

 

對所有的快捷方式、MYSQL數據庫命名規范、限制和函數都要編制文檔.

 

采用給表、列、觸發器等加注釋的數據庫工具.對開發、支持和跟蹤修改非常有用.

 

對數據庫文檔化,或者在數據庫自身的內部或者單獨建立文檔.這樣,當過了一年多時間后再回過頭來做第2 個版本,犯錯的機會將大大減少.

 

6) 測試、測試、反復測試

 

建立或者修訂數據庫之后,必須用用戶新輸入的數據測試數據字段.最重要的是,讓用戶進行測試并且同用戶一道保證選擇的數據類型滿足商業要求.測試需要在把新數據庫投入實際服務之前完成.

 

7) 檢查設計

 

在開發期間檢查數據庫設計的常用技術是通過其所支持的應用程序原型檢查數據庫.換句話說,針對每一種最終表達數據的原型應用,保證你檢查了數據模型并且查看如何取出數據.

 

 

 【編輯推薦】

  1. MySQL字符的編碼轉換問題詳解
  2. MySQL參數設置如何解決瓶頸效應?
  3. MySQL force Index 強制索引概述
  4. MySQL 5.0基礎的基本內容的介紹
  5. MySQL數字類型中的三種常用種類
責任編輯:佚名 來源: 互聯網
相關推薦

2010-04-12 15:53:09

Oracle

2014-08-29 10:24:05

SQL Server

2021-01-26 13:31:48

數據庫關系型數據庫冗余

2011-08-12 14:18:38

SQL Server數設計規范

2010-04-19 12:35:01

Oracle數據庫設計

2024-04-25 09:14:57

數據庫Mysql阿里巴巴

2009-01-13 10:50:19

數據庫設計規范化

2019-10-12 00:39:23

MySQL數據庫Oracle

2015-07-28 10:33:17

.NETERP系統

2015-08-04 09:20:42

.NET數據庫設計規范

2010-04-27 16:31:41

Oracle數據庫

2011-03-21 13:41:20

數據庫開發規范

2021-04-22 05:43:22

索引設計SET

2019-11-07 14:46:09

數據庫MySQL命令

2024-04-09 08:55:54

MySQL產品模型

2009-10-22 12:50:32

校園綜合布線系統

2021-04-21 08:09:50

iOSApp設計iPhone

2009-02-03 13:06:17

日常維護規范MySQL

2019-01-02 11:10:40

MySQL數據庫數據庫設計

2023-07-24 16:08:17

測試開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一级二级视频 | 国产精品高潮呻吟久久 | 91久久精 | 黄色大片免费网站 | 99精品久久久久久中文字幕 | av黄色片在线观看 | 天天澡天天狠天天天做 | 国产一区二区电影 | 欧美在线色 | 成人精品一区亚洲午夜久久久 | av中文字幕网站 | 国产永久免费 | 国产毛片久久久久久久久春天 | 亚洲国产精品视频 | 成年人国产在线观看 | 狠狠色综合久久婷婷 | 免费毛片网站 | 一区在线视频 | 成人av网站在线观看 | 台湾a级理论片在线观看 | 羞羞的视频在线 | av在线黄 | 国产在线精品一区二区三区 | 国产福利在线 | 色狠狠一区 | 国产成人精品一区二区三 | av在线影院 | 日本精品一区二区 | 久久亚洲天堂 | 日日夜夜精品视频 | 久久久123 | 男女午夜激情视频 | 在线观看国产网站 | 奇米av | 欧美日本韩国一区二区 | 一区二区三区不卡视频 | 日韩视频―中文字幕 | 久久九九色 | 国产精品欧美一区喷水 | 日韩欧美在线不卡 | 国产久 |