> 需求分析是做項目中的極為重要的一環,而作為整個項目中的'血液'--數據,更是重中之重。viso,workbench,phpmyadmin等軟件可以幫我們更好的處理數據分析問題。
## 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圖,數據模型,數據字典是對分析數據結構和維護數據庫非常有幫助的,千萬不要怕麻煩