使用角色實(shí)體定義屬于某類(lèi)別的列[字段]
在需要對(duì)屬于特定類(lèi)別或者具有特定角色的事物做定義時(shí),可以用角色實(shí)體來(lái)創(chuàng)建特定的時(shí)間關(guān)聯(lián)關(guān)系,從而可以實(shí)現(xiàn)自我文檔化。
這里的含義不是讓 PERSON 實(shí)體帶有 Title 字段,而是說(shuō),為什么不用 PERSON 實(shí)體和 PERSON_TYPE 實(shí)體來(lái)描述人員呢?比方說(shuō),當(dāng) John Smith, Engineer 提升為 John Smith, Director 乃至最后爬到 John Smith, CIO 的高位,而所有你要做的不過(guò)是改變兩個(gè)表 PERSON 和 PERSON_TYPE 之間關(guān)系的鍵值,同時(shí)增加一個(gè)日期/時(shí)間字段來(lái)知道變化是何時(shí)發(fā)生的。這樣,你的 PERSON_TYPE 表就包含了所有 PERSON 的可能類(lèi)型,比如 Associate、Engineer、Director、CIO 或者 CEO 等。
還有個(gè)替代辦法就是改變 PERSON 記錄來(lái)反映新頭銜的變化,不過(guò)這樣一來(lái)在時(shí)間上無(wú)法跟蹤個(gè)人所處位置的具體時(shí)間。
采用常用實(shí)體命名機(jī)構(gòu)數(shù)據(jù)
組織數(shù)據(jù)的最簡(jiǎn)單辦法就是采用常用名字,比如:PERSON、ORGANIZATION、ADDRESS 和 PHONE 等等。當(dāng)你把這些常用的一般名字組合起來(lái)或者創(chuàng)建特定的相應(yīng)副實(shí)體時(shí),你就得到了自己用的特殊版本。開(kāi)始的時(shí)候采用一般術(shù)語(yǔ)的主要原因在于所有的具體用戶(hù)都能對(duì)抽象事物具體化。
有了這些抽象表示,你就可以在第 2 級(jí)標(biāo)識(shí)中采用自己的特殊名稱(chēng),比如,PERSON 可能是 Employee、Spouse、Patient、Client、Customer、Vendor 或者 Teacher 等。同樣的,ORGANIZATION 也可能是 MyCompany、MyDepartment、Competitor、Hospital、Warehouse、Government 等。最后 ADDRESS 可以具體為 Site、Location、Home、Work、Client、Vendor、Corporate 和 FieldOffice 等。
采用一般抽象術(shù)語(yǔ)來(lái)標(biāo)識(shí)“事物”的類(lèi)別可以讓你在關(guān)聯(lián)數(shù)據(jù)以滿(mǎn)足業(yè)務(wù)要求方面獲得巨大的靈活性,同時(shí)這樣做還可以顯著降低數(shù)據(jù)存儲(chǔ)所需的冗余量。
用戶(hù)來(lái)自世界各地
在設(shè)計(jì)用到網(wǎng)絡(luò)或者具有其他國(guó)際特性的數(shù)據(jù)庫(kù)時(shí),一定要記住大多數(shù)國(guó)家都有不同的字段格式,比如郵政編碼等,有些國(guó)家,比如新西蘭就沒(méi)有郵政編碼一說(shuō)。
相關(guān)推薦:2010年全國(guó)計(jì)算機(jī)等考二級(jí)C:程序設(shè)計(jì)實(shí)戰(zhàn)匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |