[ER圖,數據建模與數據字典](http://www.cnblogs.com/nixi8/p/4513790.html)
> 需求分析是做項目中的極為重要的一環,而作為整個項目中的'血液'--數據,更是重中之重。viso,workbench,phpmyadmin等軟件可以幫我們更好的處理數據分析問題。
[TOC=1,3]
## ER圖
?E-R方法是“實體-聯系方法”(Entity-Relationship Approach)的簡稱。它是描述現實世界概念結構模型的有效方法。是表示概念模型的一種方式,**用矩形表示實體型,矩形框內寫明實體名;用橢圓表示實體的屬性,并用無向邊將其與相應的實體型連接起來,屬性如果有下劃線的話,就表示該屬性為主鍵屬性;用菱形表示實體型之間的聯系,在菱形框內寫明聯系名(實體和實體之間的關系),并用無向邊分別與有關實體型連接起來,同時在無向邊旁標上聯系的類型(1:1,1:n或m:n)**?
### 實體之間聯系
聯系可分為以下 3 種類型:
(1) 一對一聯系(1 ∶1)
例如,一個部門有一個經理,而每個經理只在一個部門任職,則部門與經理的聯系是一對一的。
(2) 一對多聯系(1 ∶N)
例如,某校教師與課程之間存在一對多的聯系“教”,即每位教師可以教多門課程,但是每門課程只能由一位教師來教
(3) 多對多聯系(M ∶N)
例如,圖1表示學生與課程間的聯系(“學”)是多對多的,即一個學生可以學多門課程,而每門課程可以有多個學生來學。聯系也可能有屬性。例如,學生“ 學” 某門課程所取得的成績,既不是學生的屬性也不是課程的屬性。由于“成績” 既依賴于某名特定的學生又依賴于某門特定的課程,所以它是學生與課程之間的聯系“學”的屬性。
> 推薦使?**億圖圖示專家或viso**?來畫ER圖
## 數據建模

> 使用workbench軟件可以很方便的建立數據模型,當然workbench不僅僅可以用來建模,還可以用來管理數據庫.但通常我們只用來建模,管理數據庫用navcate等更為方便的工具;
> 軟件很簡單,只不過是英文版本的,貌似市面上還沒有出現中文版的,其實軟件能用英文版的盡量使用英文版的
##### 簡單的圖示使用說明







### 數據字典
在使用數據字典前,要保證sql的注釋務必要詳情
~~~
CREATE TABLE `sc_role` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL DEFAULT '角色名稱',
`parentid` smallint(6) NOT NULL COMMENT '父角色ID',
`status` tinyint(1) unsigned NOT NULL COMMENT '狀態',
`remark` varchar(255) NOT NULL COMMENT '備注',
`create_time` int(11) unsigned NOT NULL COMMENT '創建時間',
`update_time` int(11) unsigned NOT NULL COMMENT '更新時間',
`listorder` int(3) NOT NULL DEFAULT '0' COMMENT '排序字段',
PRIMARY KEY (`id`),
KEY `parentId` (`parentid`),
KEY `status` (`status`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='角色信息列表';
~~~
然后可以通過phpmyadmin來導出數據字典
phpAdmin是一個用php語言寫的B/S架構,其配置文件在其應用的根目錄config.inc.php;在該文件中可以設置數據庫鏈接的一些信息

> ER圖,數據模型,數據字典是對分析數據結構和維護數據庫非常有幫助的,千萬不要怕麻煩
- 數據庫
- CAP定理
- 關系模型
- 關系數據庫
- NoSQL
- ODBC
- JDBC
- ODBC、JDBC和四種驅動類型
- mysql
- 安裝與配置
- CentOS 7 安裝 MySQL
- 優化
- 比較全面的MySQL優化參考
- 1、硬件層相關優化
- 1.1、CPU相關
- 1.2、磁盤I/O相關
- 2、系統層相關優化
- 2.1、文件系統層優化
- 2.2、其他內核參數優化
- 3、MySQL層相關優化
- 3.1、關于版本選擇
- 3.2、關于最重要的參數選項調整建議
- 3.3、關于Schema設計規范及SQL使用建議
- 3.4、其他建議
- 后記
- Mysql設計與優化專題
- ER圖,數據建模與數據字典
- 數據中設計中的范式與反范式
- 字段類型與合理的選擇字段類型
- 表的垂直拆分和水平拆分
- 詳解慢查詢
- mysql的最佳索引攻略
- 高手詳解SQL性能優化十條經驗
- 優化SQL查詢:如何寫出高性能SQL語句
- MySQL索引原理及慢查詢優化
- 數據庫SQL優化大總結之 百萬級數據庫優化方案
- 數據庫性能優化之SQL語句優化1
- 【重磅干貨】看了此文,Oracle SQL優化文章不必再看!
- MySQL 對于千萬級的大表要怎么優化?
- MySQL 數據庫設計總結
- MYSQL性能優化的最佳20+條經驗
- 數據操作
- 數據語句操作類型
- DCL
- 修改Mysql數據庫名的5種方法
- DML
- 連接
- 連接2
- DDL
- 數據類型
- 字符集
- 表引擎
- 索引
- MySQL理解索引、添加索引的原則
- mysql建索引的幾大原則
- 淺談mysql的索引設計原則以及常見索引的區別
- 常用工具簡介
- QA
- MySQL主機127.0.0.1與localhost區別總結
- 視圖(view)
- 觸發器
- 自定義函數和存儲過程的使用
- 事務(transaction)
- 范式與反范式
- 常用函數
- MySQL 數據類型 詳解
- Mysql數據庫常用分庫和分表方式
- 隔離級別
- 五分鐘搞清楚MySQL事務隔離級別
- mysql隔離級別及事務傳播
- 事務隔離級別和臟讀的快速入門
- 數據庫引擎中的隔離級別
- 事務隔離級別
- Innodb中的事務隔離級別和鎖的關系
- MySQL 四種事務隔離級的說明
- Innodb鎖機制:Next-Key Lock 淺談
- SQL函數和存儲過程的區別
- mongo
- MongoDB設置訪問權限、設置用戶
- redis
- ORM
- mybatis
- $ vs #
- mybatis深入理解(一)之 # 與 $ 區別以及 sql 預編譯
- 電商設計
- B2C電子商務系統研發——概述篇
- B2C電子商務系統研發——商品數據模型設計
- B2C電子商務系統研發——商品模塊E-R圖建模
- B2C電子商務系統研發——商品SKU分析和設計(一)
- B2C電子商務系統研發——商品SKU分析和設計(二)
- 數據庫命名規范--通用