新聞中心
一、引言

公司主營業(yè)務(wù):成都網(wǎng)站制作、網(wǎng)站設(shè)計、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出閬中免費做網(wǎng)站回饋大家。
現(xiàn)在,在計算機(jī)技術(shù)得到迅速發(fā)展的今天,數(shù)以億計的中文和英文文章存放在互聯(lián)網(wǎng)上,這就要求我們有能力對這些文章進(jìn)行翻譯,以滿足人們的需求。然而,由于英漢語言之間的巨大差異,英漢互譯的難度也不容小覷。為了克服這一困難,我們可以借助數(shù)據(jù)庫技術(shù),通過對英漢互譯數(shù)據(jù)庫表的設(shè)計,使得翻譯工作更加高效化、準(zhǔn)確化。本文就圍繞著“英漢互譯數(shù)據(jù)庫表設(shè)計的關(guān)鍵步驟”展開探討。
二、選擇適合的數(shù)據(jù)庫管理系統(tǒng)
在進(jìn)行英漢互譯數(shù)據(jù)庫表設(shè)計之前,需要首先選擇一款適合的數(shù)據(jù)庫管理系統(tǒng)。根據(jù)實際需求和技術(shù)水平,可以選擇MySQL、Oracle、SQL Server等多種數(shù)據(jù)庫管理系統(tǒng)。這些系統(tǒng)各有優(yōu)缺點,需要根據(jù)實際情況進(jìn)行選擇。例如,MySQL是一款開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),具有穩(wěn)定、可靠和易于使用等優(yōu)點,同時也有很好的擴(kuò)展性,因此非常適合中小型企業(yè)和網(wǎng)站使用。而Oracle是一款功能強(qiáng)大的商業(yè)化數(shù)據(jù)庫管理系統(tǒng),具有高可用性、高性能和高安全性等特點,適合大型企業(yè)和高性能應(yīng)用場景。
三、確定英漢互譯數(shù)據(jù)庫表的數(shù)據(jù)結(jié)構(gòu)
在確定英漢互譯數(shù)據(jù)庫表的數(shù)據(jù)結(jié)構(gòu)時,可以考慮將其設(shè)計為三個表:英文表、中文表和翻譯表。英文表和中文表分別用于存儲英文和中文的單詞或詞組,而翻譯表則用于存儲這些英文和中文之間的相互翻譯關(guān)系。
英文表和中文表的數(shù)據(jù)結(jié)構(gòu)可以相同,都可以包括單詞或詞組的ID、單詞或詞組的內(nèi)容、單詞或詞組的詞性、發(fā)音等屬性。例如,英文表可以包括如下屬性:
ID:單詞或詞組的唯一標(biāo)識符;
Content:單詞或詞組的內(nèi)容;
Part of speech:單詞或詞組的詞性;
Pronunciation:單詞或詞組的發(fā)音。
翻譯表可以包括如下屬性:
ID:翻譯關(guān)系的唯一標(biāo)識符;
ID1:英文或中文的ID;
ID2:中文或英文的ID;
Relation:英文和中文之間的翻譯關(guān)系,可以包括同義詞、反義詞、詞組等。
四、創(chuàng)建英漢互譯數(shù)據(jù)庫表
在確定好英漢互譯數(shù)據(jù)庫表的數(shù)據(jù)結(jié)構(gòu)之后,就可以創(chuàng)建相應(yīng)的數(shù)據(jù)庫表了。在創(chuàng)建表時,需要注意以下幾個關(guān)鍵因素:
表的命名和注釋:表的命名應(yīng)具有可讀性和可理解性,方便后期對表的管理和維護(hù)。同時,對表進(jìn)行注釋可以幫助開發(fā)人員更好地理解和使用表。
字段數(shù)據(jù)類型和長度:在創(chuàng)建表時需要確定字段的數(shù)據(jù)類型和長度,以保證數(shù)據(jù)存儲的準(zhǔn)確性和整潔性。
主鍵和約束:合理使用主鍵和約束可以保證數(shù)據(jù)的唯一性和安全性,防止出現(xiàn)數(shù)據(jù)冗余和數(shù)據(jù)丟失。
五、表的索引優(yōu)化
在英漢互譯數(shù)據(jù)庫表設(shè)計中,表的索引優(yōu)化是非常重要的一環(huán)。通過合理的索引優(yōu)化,可以大大提高查詢速度和性能。在進(jìn)行索引優(yōu)化時,需要注意以下幾點:
選擇合適的索引類型:可以選擇B-Tree索引、Hash索引和全文索引等多種索引類型,根據(jù)實際需求和場景進(jìn)行選擇。
為重復(fù)的索引減少索引數(shù)量:重復(fù)的索引會浪費存儲空間,同時也會影響查詢效率,因此需要注意為重復(fù)的索引減少索引數(shù)量。
優(yōu)化索引的長度:索引長度越長,查詢效率也越低,因此需要合理優(yōu)化索引的長度,以達(dá)到更優(yōu)查詢效果。
六、數(shù)據(jù)備份和恢復(fù)
當(dāng)我們創(chuàng)建好英漢互譯數(shù)據(jù)庫表后,需要考慮如何進(jìn)行數(shù)據(jù)備份和恢復(fù),以方便出現(xiàn)數(shù)據(jù)丟失或其他情況時快速恢復(fù)數(shù)據(jù)。備份和恢復(fù)時,需要注意以下幾點:
選擇合適的數(shù)據(jù)備份方式:可以選擇全量備份、增量備份和差異備份等多種備份方式,根據(jù)實際需求和場景進(jìn)行選擇。
備份數(shù)據(jù)時注意文件命名和路徑:文件命名和路徑應(yīng)具有清晰和易于辨認(rèn)的特點,方便對備份數(shù)據(jù)的管理和維護(hù)。
備份數(shù)據(jù)的周期和時間:備份數(shù)據(jù)的周期和時間需要根據(jù)實際情況進(jìn)行規(guī)劃和安排,以充分保障數(shù)據(jù)的安全性和完整性。
七、
設(shè)計英漢互譯數(shù)據(jù)庫表是現(xiàn)代化翻譯工作的必要環(huán)節(jié)。通過合理的設(shè)計和優(yōu)化,可以大大提高翻譯工作的效率和準(zhǔn)確性,更好地滿足人們的需求。在進(jìn)行英漢互譯數(shù)據(jù)庫表設(shè)計時,需要注意以上關(guān)鍵步驟,以達(dá)到更優(yōu)效果。同時,在翻譯過程中也需要注重質(zhì)量和效率的平衡,不斷提高自己的技術(shù)水平和翻譯水平。
相關(guān)問題拓展閱讀:
- 數(shù)據(jù)庫如何設(shè)計
- 如何進(jìn)行數(shù)據(jù)庫的設(shè)計?
數(shù)據(jù)庫如何設(shè)計
數(shù)據(jù)庫設(shè)計的基本步驟
按照規(guī)范設(shè)計的方法,考慮數(shù)據(jù)庫及其應(yīng)用系統(tǒng)開發(fā)全過程,將數(shù)據(jù)庫設(shè)計分為以下6個階段
1.需求分析
2.概念結(jié)構(gòu)設(shè)計
3.邏輯結(jié)構(gòu)設(shè)計
4.物理結(jié)構(gòu)設(shè)計
5.數(shù)據(jù)庫實施
6.數(shù)據(jù)庫的運(yùn)行和維護(hù)
數(shù)據(jù)庫設(shè)計通常分為6個階段1分析用戶的需求,包括數(shù)據(jù)、功能和性能需求;2概念結(jié)構(gòu)設(shè)計:主要采用E-R模型進(jìn)行設(shè)計,包括畫E-R圖;3邏輯結(jié)構(gòu)設(shè)計:指頌通過將轉(zhuǎn)換成表,實現(xiàn)從E-R模型到關(guān)系模型的轉(zhuǎn)換;4:主要是為所設(shè)計的數(shù)據(jù)庫選擇合適的和存取路徑;5數(shù)據(jù)庫的實施:包括編程、測試和試運(yùn)行;6數(shù)據(jù)庫運(yùn)行與維護(hù):系統(tǒng)的運(yùn)行與數(shù)據(jù)庫的日常維護(hù)。),主要討論其中的第3個階段,即邏輯設(shè)計。
在數(shù)據(jù)庫設(shè)計過程中,需求分析和概念設(shè)計可以獨立于任何數(shù)據(jù)庫管理系統(tǒng)進(jìn)行,邏輯設(shè)計和物理設(shè)計與選用的DAMS密切相關(guān)。
1.需求分析階段(常用自頂向唯冊鄭下)
進(jìn)行數(shù)據(jù)庫設(shè)計首先必須準(zhǔn)確了解和分析用戶需求(包括數(shù)據(jù)與處理)。需求分析是整個設(shè)計過程的基礎(chǔ),也是最困難,最耗時的一步。需求分析是否做得充分和準(zhǔn)確,決定了在其上構(gòu)建數(shù)據(jù)庫大廈的速度與質(zhì)量。需求分析做的不好,會導(dǎo)致整個數(shù)據(jù)庫設(shè)計返工重做。
需求分析的任務(wù),是通過詳細(xì)調(diào)查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新的系統(tǒng)功能,新系統(tǒng)還得充分考慮今后可能的擴(kuò)充與改變,不僅僅能夠按當(dāng)前應(yīng)用需求來設(shè)計。
調(diào)查的重點是,數(shù)據(jù)與處理。達(dá)到信息要求,處理要求,安全性和完整性要求。
分析方法常用SA(Structured Analysis) 結(jié)構(gòu)化分析方法,SA方法從最上層的系統(tǒng)組織結(jié)構(gòu)入手,采用自頂向下,逐層分解的方式分析系統(tǒng)。
數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)系,在SA方法中,處理過程的處理邏輯常常借助判定表或判定樹來描述。在處理功能逐步分解的同事,系統(tǒng)中的數(shù)據(jù)也逐級分解,形成若干層次的數(shù)據(jù)流圖。系統(tǒng)中的數(shù)據(jù)則借助數(shù)據(jù)字典(data dictionary,DD)來描述。數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的,數(shù)據(jù)字典通常包括數(shù)據(jù)項,數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流,數(shù)據(jù)存儲,和處理過程5個階段。
2.概念結(jié)構(gòu)設(shè)計階段(常用自底向上)
概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,它通過對用戶需求進(jìn)行綜合,歸納與抽象,形成了一個獨立于具體DBMS的概念模型。
設(shè)計概念結(jié)構(gòu)通常有四類方法:
自頂向下。即首先定義全局概念結(jié)構(gòu)的框架,再逐步細(xì)化。
自底向上。即首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后再將他們集成起來,得到全局概念結(jié)構(gòu)。
逐步擴(kuò)張。首先定義最重姿和要的核心概念結(jié)構(gòu),然后向外擴(kuò)張,以滾雪球的方式逐步生成其他的概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)。
混合策略。即自頂向下和自底向上相結(jié)合。
3.邏輯結(jié)構(gòu)設(shè)計階段(E-R圖)
邏輯結(jié)構(gòu)設(shè)計是將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并將進(jìn)行優(yōu)化。
在這階段,E-R圖顯得異常重要。大家要學(xué)會各個實體定義的屬性來畫出總體的E-R圖。
各分E-R圖之間的沖突主要有三類:屬性沖突,命名沖突,和結(jié)構(gòu)沖突。
E-R圖向關(guān)系模型的轉(zhuǎn)換,要解決的問題是如何將實體性和實體間的聯(lián)系轉(zhuǎn)換為關(guān)系模式,如何確定這些關(guān)系模式的屬性和碼。
4.物理設(shè)計階段
物理設(shè)計是為邏輯數(shù)據(jù)結(jié)構(gòu)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方法)。
首先要對運(yùn)行的事務(wù)詳細(xì)分析,獲得選擇物理數(shù)據(jù)庫設(shè)計所需要的參數(shù),其次,要充分了解所用的RDBMS的內(nèi)部特征,特別是系統(tǒng)提供的存取方法和存儲結(jié)構(gòu)。
常用的存取方法有三類:1.索引方法,目前主要是B+樹索引方法。2.聚簇方法(Clustering)方法。3.是HASH方法。
5.數(shù)據(jù)庫實施階段
數(shù)據(jù)庫實施階段,設(shè)計人員運(yùn)營DBMS提供的數(shù)據(jù)庫語言(如sql)及其宿主語言,根據(jù)邏輯設(shè)計和物理設(shè)計的結(jié)果建立數(shù)據(jù)庫,編制和調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行。
6.數(shù)據(jù)庫運(yùn)行和維護(hù)階段
數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后,即可投入正式運(yùn)行,在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中必須不斷地對其進(jìn)行評價,調(diào)整,修改。
數(shù)據(jù)庫設(shè)計5步驟
Five Steps to design the Database
1.確定entities及relationships
a) 明確宏觀行為。數(shù)據(jù)庫是用來做什么的?比如,管理雇員的信息。
b) 確定entities。對于一系列的行為,確定所管理信息所涉及到的主題范圍。這將變成table。比如,雇用員工,指定具體部門,確定技能等級。
c) 確定relationships。分析行為,確定tables之間有何種關(guān)系。比如,部門與雇員之間存在一種關(guān)系。給這種關(guān)系命名。
d) 細(xì)化行為。從宏觀行為開始,現(xiàn)在仔細(xì)檢查這些行為,看有哪些行為能轉(zhuǎn)為微觀行為。比如,管理雇員的信息可細(xì)化為:
·增加新員工
·修改存在員工信息
·刪除調(diào)走的員工
e) 確定業(yè)務(wù)規(guī)則。分析業(yè)務(wù)規(guī)則,確定你要采取哪種。比如,可能有這樣一種規(guī)則,一個部門有且只能有一個部門領(lǐng)導(dǎo)。這些規(guī)則將被設(shè)計到數(shù)據(jù)庫的結(jié)構(gòu)中。
====================================================================
范例:
ACME是一個小公司,在5個地方都設(shè)有辦事處。當(dāng)前,有75名員工。公司準(zhǔn)備快速擴(kuò)大規(guī)模,劃分了9個部門,每個部門都有其領(lǐng)導(dǎo)。
為有助于尋求新的員工,人事部門規(guī)劃了68種技能,為將來人事管理作好準(zhǔn)備。員工被招進(jìn)時,每一種技能的專業(yè)等級都被確定。
定義宏觀行為
一些ACME公司的宏觀行為包括:
● 招聘員工
● 解雇員工
● 管理員工個人信息
● 管理公司所需的技能信息
● 管理哪位員工有哪些技能
● 管理部門信息
● 管理辦事處信息
確定entities及relationships
我們可以確定要存放信息的主題領(lǐng)域(表)及其關(guān)系,并創(chuàng)建一個基于宏觀行為及描述的圖表。
我們用方框來代表table,用菱形代表relationship。我們可以確定哪些relationship是一對多,一對一,及多對多。
這是一個E-R草圖,以后會細(xì)化。
細(xì)化宏觀行為
以下微觀行為基于上面宏觀行為而形成:
● 增加或刪除一個員工
● 增加或刪除一個辦事處
● 列出一個部門中的所有員工
● 增加一項技能
● 增加一個員工的一項技能
● 確定一個員工的技能
● 確定一個員工每項技能的等級
● 確定所有擁有相同等級的某項技能的員工
● 修改員工的技能等級
這些微觀行為可用來確定需要哪些table或relationship。
確定業(yè)務(wù)規(guī)則
業(yè)務(wù)規(guī)則常用于確定一對多,一對一,及多對多關(guān)系。
相關(guān)的業(yè)務(wù)規(guī)則可能有:
● 現(xiàn)在有5個辦事處;最多允許擴(kuò)展到10個。
● 員工可以改變部門或辦事處
● 每個部門有一個部門領(lǐng)導(dǎo)
● 每個辦事處至多有3個號碼
● 每個號碼有一個或多個擴(kuò)展
● 員工被招進(jìn)時,每一種技能的專業(yè)等級都被確定。
● 每位員工擁有3到20個技能
● 某位員工可能被安排在一個辦事處,也可能不安排辦事處。
2.確定所需數(shù)據(jù)
要確定所需數(shù)據(jù):
a) 確定支持?jǐn)?shù)據(jù)
b) 列出所要跟蹤的所有數(shù)據(jù)。描述table(主題)的數(shù)據(jù)回答這些問題:誰,什么,哪里,何時,以及為什么
c) 為每個table建立數(shù)據(jù)
d) 列出每個table目前看起來合適的可用數(shù)據(jù)
e) 為每個relationship設(shè)置數(shù)據(jù)
f) 如果有,為每個relationship列出適用的數(shù)據(jù)
確定支持?jǐn)?shù)據(jù)
你所確定的支持?jǐn)?shù)據(jù)將會成為table中的字段名。比如,下列數(shù)據(jù)將適用于表Employee,表Skill,表Expert In。
Employee
Skill
Expert In
ID
ID
Level
Last Name
Name
Date acquired
First Name
Description
Department
Office
Address
如果將這些數(shù)據(jù)畫成圖表,就像:
需要注意:
● 在確定支持?jǐn)?shù)據(jù)時,請一定要參考你之前所確定的宏觀行為,以清楚如何利用這些數(shù)據(jù)。
● 比如,如果你知道你需要所有員工的按姓氏排序的列表,確保你將支持?jǐn)?shù)據(jù)分解為名字與姓氏,這比簡單地提供一個名字會更好。
● 你所選擇的名稱更好保持一致性。這將更易于維護(hù)數(shù)據(jù)庫,也更易于閱讀所輸出的報表。
● 比如,如果你在某些地方用了一個縮寫名稱Emp_status,你就不應(yīng)該在另外一個地方使用全名(Empolyee_ID)。相反,這些名稱應(yīng)當(dāng)是Emp_status及Emp_id。
● 數(shù)據(jù)是否與正確的table相對應(yīng)無關(guān)緊要,你可以根據(jù)自己的喜好來定。在下節(jié)中,你會通過測試對此作出判斷。
3.標(biāo)準(zhǔn)化數(shù)據(jù)
標(biāo)準(zhǔn)化是你用以消除數(shù)據(jù)冗余及確保數(shù)據(jù)與正確的table或relationship相關(guān)聯(lián)的一系列測試。共有5個測試。本節(jié)中,我們將討論經(jīng)常使用的3個。
關(guān)于標(biāo)準(zhǔn)化測試的更多信息,請參考有關(guān)數(shù)據(jù)庫設(shè)計的書籍。
標(biāo)準(zhǔn)化格式
標(biāo)準(zhǔn)化格式是標(biāo)準(zhǔn)化數(shù)據(jù)的常用測試方式。你的數(shù)據(jù)通過之一遍測試后,就被認(rèn)為是達(dá)到之一標(biāo)準(zhǔn)化格式;通過第二遍測試,達(dá)到第二標(biāo)準(zhǔn)化格式;通過第三遍測試,達(dá)到第三標(biāo)準(zhǔn)化格式。
如何標(biāo)準(zhǔn)格式:
1. 列出數(shù)據(jù)
2. 為每個表確定至少一個鍵。每個表必須有一個主鍵。
3. 確定relationships的鍵。relationships的鍵是連接兩個表的鍵。
4. 檢查支持?jǐn)?shù)據(jù)列表中的計算數(shù)據(jù)。計算數(shù)據(jù)通常不保存在數(shù)據(jù)庫中。
5. 將數(shù)據(jù)放在之一遍的標(biāo)準(zhǔn)化格式中:
6. 從tables及relationships除去重復(fù)的數(shù)據(jù)。
7. 以你所除去數(shù)據(jù)創(chuàng)建一個或更多的tables及relationships。
8. 將數(shù)據(jù)放在第二遍的標(biāo)準(zhǔn)化格式中:
9. 用多于一個以上的鍵確定tables及relationships。
10. 除去只依賴于鍵一部分的數(shù)據(jù)。
11. 以你所除去數(shù)據(jù)創(chuàng)建一個或更多的tables及relationships。
12. 將數(shù)據(jù)放在第三遍的標(biāo)準(zhǔn)化格式中:
13. 除去那些依賴于tables或relationships中其他數(shù)據(jù),并且不是鍵的數(shù)據(jù)。
14. 以你所除去數(shù)據(jù)創(chuàng)建一個或更多的tables及relationships。
數(shù)據(jù)與鍵
在你開始標(biāo)準(zhǔn)化(測試數(shù)據(jù))前,簡單地列出數(shù)據(jù),并為每張表確定一個唯一的主鍵。這個鍵可以由一個字段或幾個字段(連鎖鍵)組成。
主鍵是一張表中唯一區(qū)分各行的一組字段。Employee表的主鍵是Employee ID字段。Works In relationship中的主鍵包括Office Code及Employee ID字段。給數(shù)據(jù)庫中每一relationship給出一個鍵,從其所連接的每一個table中抽取其鍵產(chǎn)生。
RelationShip
Key
Office
*Office code
Office address
Phone number
Works in
*Office code
*Employee ID
Department
*Department ID
Department name
Heads
*Department ID
*Employee ID
Assoc with
*Department ID
*EmployeeID
Skill
*Skill ID
Skill name
Skill description
Expert In
*Skill ID
*Employee ID
Skill level
Date acquired
Employee
*Employee ID
Last Name
First Name
Social security number
Employee street
Employee city
Employee state
Employee phone
Date of birth
將數(shù)據(jù)放在之一遍的標(biāo)準(zhǔn)化格式中
● 除去重復(fù)的組
● 要測試之一遍標(biāo)準(zhǔn)化格式,除去重復(fù)的組,并將它們放進(jìn)他們各自的一張表中。
● 在下面的例子中,Phone Number可以重復(fù)。(一個工作人員可以有多于一個的號碼。)將重復(fù)的組除去,創(chuàng)建一個名為Telephone的新表。在Telephone與Office創(chuàng)建一個名為Associated With的relationship。
將數(shù)據(jù)放在第二遍的標(biāo)準(zhǔn)化格式中
● 除去那些不依賴于整個鍵的數(shù)據(jù)。
● 只看那些有一個以上鍵的tables及relationships。要測試第二遍標(biāo)準(zhǔn)化格式,除去那些不依賴于整個鍵的任何數(shù)據(jù)(組成鍵的所有字段)。
● 在此例中,原Employee表有一個由兩個字段組成的鍵。一些數(shù)據(jù)不依賴于整個鍵;例如,department name只依賴于其中一個鍵(Department ID)。因此,Department ID,其他Employee數(shù)據(jù)并不依賴于它,應(yīng)移至一個名為Department的新表中,并為Employee及Department建立一個名為Assigned To的relationship。
將數(shù)據(jù)放在第三遍的標(biāo)準(zhǔn)化格式中
● 除去那些不直接依賴于鍵的數(shù)據(jù)。
● 要測試第三遍標(biāo)準(zhǔn)化格式,除去那些不是直接依賴于鍵,而是依賴于其他數(shù)據(jù)的數(shù)據(jù)。
● 在此例中,原Employee表有依賴于其鍵(Employee ID)的數(shù)據(jù)。然而,office location及office phone依賴于其他字段,即Office Code。它們不直接依賴于Employee ID鍵。將這組數(shù)據(jù),包括Office Code,移至一個名為Office的新表中,并為Employee及Office建立一個名為Works In的relationship。
4.考量關(guān)系
當(dāng)你完成標(biāo)準(zhǔn)化進(jìn)程后,你的設(shè)計已經(jīng)差不多完成了。你所需要做的,就是考量關(guān)系。
考量帶有數(shù)據(jù)的關(guān)系
你的一些relationship可能集含有數(shù)據(jù)。這經(jīng)常發(fā)生在多對多的關(guān)系中。
遇到這種情況,將relationship轉(zhuǎn)化為一個table。relationship的鍵依舊成為table中的鍵。
考量沒有數(shù)據(jù)的關(guān)系
要實現(xiàn)沒有數(shù)據(jù)的關(guān)系,你需要定義外部鍵。外部鍵是含有另外一個表中主鍵的一個或多個字段。外部鍵使你能同時連接多表數(shù)據(jù)。
有一些基本原則能幫助你決定將這些鍵放在哪里:
一對多 在一對多關(guān)系中,“一”中的主鍵放在“多”中。此例中,外部鍵放在Employee表中。
一對一 在一對一關(guān)系中,外部鍵可以放進(jìn)任一表中。如果必須要放在某一邊,而不能放在另一邊,應(yīng)該放在必須的一邊。此例中,外部鍵(Head ID)在Department表中,因為這是必需的。
多對多 在多對多關(guān)系中,用兩個外部鍵來創(chuàng)建一個新表。已存的舊表通過這個新表來發(fā)生聯(lián)系。
5.檢驗設(shè)計
在你完成設(shè)計之前,你需要確保它滿足你的需要。檢查你在一開始時所定義的行為,確認(rèn)你可以獲取行為所需要的所有數(shù)據(jù):
● 你能找到一個路徑來等到你所需要的所有信息嗎?
● 設(shè)計是否滿足了你的需要?
● 所有需要的數(shù)據(jù)都可用嗎?
如果你對以上的問題都回答是,你已經(jīng)差不多完成設(shè)計了。
最終設(shè)計
最終設(shè)計看起來就像這樣:
設(shè)計數(shù)據(jù)庫的表屬性
數(shù)據(jù)庫設(shè)計需要確定有什么表,每張表有什么字段。此節(jié)討論如何指定各字段的屬性。
對于每一字段,你必須決定字段名,數(shù)據(jù)類型及大小,是否允許NULL值,以及你是否希望數(shù)據(jù)庫限制字段中所允許的值。
選擇字段名
字段名可以是字母、數(shù)字或符號的任意組合。然而,如果字段名包括了字母、數(shù)字或下劃線、或并不以字母打頭,或者它是個關(guān)鍵字(詳見關(guān)鍵字表),那么當(dāng)使用字段名稱時,必須用雙引號括起來。
為字段選擇數(shù)據(jù)類型
SQL Anywhere支持的數(shù)據(jù)類型包括:
整數(shù)(int, integer, allint)
小數(shù)(decimal, numeric)
浮點數(shù)(float, double)
字符型(char, varchar, long varchar)
二進(jìn)制數(shù)據(jù)類型(binary, long binary)
日期/時間類型(date, time, timestamp)
用戶自定義類型
關(guān)于數(shù)據(jù)類型的內(nèi)容,請參見“SQL Anywhere數(shù)據(jù)類型”一節(jié)。字段的數(shù)據(jù)類型影響字段的更大尺寸。例如,如果你指定ALLINT,此字段可以容納32,767的整數(shù)。INTEGER可以容納2,147,483,647的整數(shù)。對CHAR來講,字段的更大值必須指定。
長二進(jìn)制的數(shù)據(jù)類型可用來在數(shù)據(jù)庫中保存例如圖像(如位圖)或者文字編輯文檔。這些類型的信息通常被稱為二進(jìn)制大型對象,或者BLOBS。
關(guān)于每一數(shù)據(jù)類型的完整描述,見“SQL Anywhere數(shù)據(jù)類型”。
系統(tǒng)磨做架構(gòu)師:數(shù)據(jù)庫系統(tǒng)瞎橋衡之?dāng)?shù)據(jù)庫設(shè)計方法、基本步消叢驟和需求分析
如何進(jìn)行數(shù)據(jù)庫的設(shè)計?
數(shù)據(jù)庫設(shè)計(Database Design)是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造更優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的應(yīng)用需求(信息要求和處理要求)。
在數(shù)據(jù)庫領(lǐng)域內(nèi),常常把使用數(shù)據(jù)庫的各類系統(tǒng)統(tǒng)稱為數(shù)據(jù)庫應(yīng)用系統(tǒng)。
一、數(shù)據(jù)庫和信息系統(tǒng)
(1)數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ),把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來,提供存儲、維護(hù)、檢索數(shù)據(jù)的
功能,使信息系統(tǒng)可以方便、及時、準(zhǔn)確地從數(shù)據(jù)庫中獲得所需的信息。
(2)數(shù)據(jù)庫是信息系統(tǒng)的各個部分能否緊密地結(jié)合在一起以及如何結(jié)合的關(guān)鍵所在。
(3)數(shù)據(jù)庫設(shè)計是信息系統(tǒng)開發(fā)和建設(shè)的重要組成部分。
(4)數(shù)據(jù)庫設(shè)計人員應(yīng)該具備的技術(shù)和知識:
數(shù)據(jù)庫的基本知識和數(shù)據(jù)沖睜庫設(shè)計技術(shù)
計算機(jī)科學(xué)的基礎(chǔ)知識和程序設(shè)計的方法和技巧
軟件工程的原理和方法
應(yīng)用領(lǐng)域的知識
二、數(shù)據(jù)庫設(shè)計的特點
數(shù)據(jù)庫建設(shè)是硬件、軟件和干件的結(jié)合
三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù)
技術(shù)與管理的界面稱之為“干件”
數(shù)據(jù)庫設(shè)計應(yīng)該與應(yīng)用系統(tǒng)設(shè)計相結(jié)合
結(jié)構(gòu)(數(shù)據(jù))設(shè)計:設(shè)計數(shù)據(jù)庫框架或數(shù)據(jù)庫結(jié)構(gòu)
行為(處理)設(shè)計:設(shè)計應(yīng)用程序、事務(wù)處理等
結(jié)構(gòu)和行為分離的設(shè)計
傳統(tǒng)的散扮歲軟件工程忽視對應(yīng)用中數(shù)據(jù)語義的分析和抽象,只要有可能就盡量推遲數(shù)據(jù)結(jié)構(gòu)設(shè)計的決策早期的數(shù)據(jù)庫設(shè)計致力于數(shù)據(jù)模型和建模方法研究,忽視缺握了對行為的設(shè)計
如圖:
三、數(shù)據(jù)庫設(shè)計方法簡述
手工試湊法
設(shè)計質(zhì)量與設(shè)計人員的經(jīng)驗和水平有直接關(guān)系
缺乏科學(xué)理論和工程方法的支持,工程的質(zhì)量難以保證
數(shù)據(jù)庫運(yùn)行一段時間后常常又不同程度地發(fā)現(xiàn)各種問題,增加了維護(hù)代價
規(guī)范設(shè)計法
手工設(shè)計方
基本思想
過程迭代和逐步求精
規(guī)范設(shè)計法(續(xù))
典型方法:
(1)新奧爾良(New Orleans)方法:將數(shù)據(jù)庫設(shè)計分為四個階段
S.B.Yao方法:將數(shù)據(jù)庫設(shè)計分為五個步驟
I.R.Palmer方法:把數(shù)據(jù)庫設(shè)計當(dāng)成一步接一步的過程
(2)計算機(jī)輔助設(shè)計
ORACLE Designer 2023
SYBASE PowerDesigner
四、數(shù)據(jù)庫設(shè)計的基本步驟
數(shù)據(jù)庫設(shè)計的過程(六個階段)
1.需求分析階段
準(zhǔn)確了解與分析用戶需求(包括數(shù)據(jù)與處理)
是整個設(shè)計過程的基礎(chǔ),是最困難、最耗費時間的一步
2.概念結(jié)構(gòu)設(shè)計階段
是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵
通過對用戶需求進(jìn)行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型
3.邏輯結(jié)構(gòu)設(shè)計階段
將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型
對其進(jìn)行優(yōu)化
4.數(shù)據(jù)庫物理設(shè)計階段
為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方法)
5.數(shù)據(jù)庫實施階段
運(yùn)用DBMS提供的數(shù)據(jù)語言、工具及宿主語言,根據(jù)邏輯設(shè)計和物理設(shè)計的結(jié)果
建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行
6.數(shù)據(jù)庫運(yùn)行和維護(hù)階段
數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后即可投入正式運(yùn)行。
在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中必須不斷地對其進(jìn)行評價、調(diào)整與修改
設(shè)計特點:
在設(shè)計過程中把數(shù)據(jù)庫的設(shè)計和對數(shù)據(jù)庫中數(shù)據(jù)處理的設(shè)計緊密結(jié)合起來將這兩個方面的需求分析、抽象、設(shè)計、實現(xiàn)在各個階段同時進(jìn)行,相互參照,相互補(bǔ)充,以完善兩方面的設(shè)計
設(shè)計過程各個階段的設(shè)計描述:
如圖:
五、數(shù)據(jù)庫各級模式的形成過程
1.需求分析階段:綜合各個用戶的應(yīng)用需求
2.概念設(shè)計階段:形成獨立于機(jī)器特點,獨立于各個DBMS產(chǎn)品的概念模式(E-R圖)
3.邏輯設(shè)計階段:首先將E-R圖轉(zhuǎn)換成具體的數(shù)據(jù)庫產(chǎn)品支持的數(shù)據(jù)模型,如關(guān)系模型,形成數(shù)據(jù)庫邏輯模式;然后根據(jù)用戶處理的要求、安全性的考慮,在基本表的基礎(chǔ)上再建立必要的視圖(View),形成數(shù)據(jù)的外模式
4.物理設(shè)計階段:根據(jù)DBMS特點和處理的需要,進(jìn)行物理存儲安排,建立索引,形成數(shù)據(jù)庫內(nèi)模式
六、數(shù)據(jù)庫設(shè)計技巧
1. 設(shè)計數(shù)據(jù)庫之前(需求分析階段)
1) 理解客戶需求,詢問用戶如何看待未來需求變化。讓客戶解釋其需求,而且隨著開發(fā)的繼續(xù),還要經(jīng)常詢問客戶保證其需求仍然在開發(fā)的目的之中。
2) 了解企業(yè)業(yè)務(wù)可以在以后的開發(fā)階段節(jié)約大量的時間。
3) 重視輸入輸出。
在定義數(shù)據(jù)庫表和字段需求(輸入)時,首先應(yīng)檢查現(xiàn)有的或者已經(jīng)設(shè)計出的報表、查詢和視圖(輸出)以決定為了支持這些輸出哪些是必要的表和字段。
舉例:假如客戶需要一個報表按照郵政編碼排序、分段和求和,你要保證其中包括了單獨的郵政編碼字段而不要把郵政編碼糅進(jìn)地址字段里。
4) 創(chuàng)建數(shù)據(jù)字典和ER 圖表
ER 圖表和數(shù)據(jù)字典可以讓任何了解數(shù)據(jù)庫的人都明確如何從數(shù)據(jù)庫中獲得數(shù)據(jù)。ER圖對表明表之間關(guān)系很有用,而數(shù)據(jù)字典則說明了每個字段的用途以及任何可能存在的別名。對SQL 表達(dá)式的文檔化來說這是完全必要的。
5) 定義標(biāo)準(zhǔn)的對象命名規(guī)范
數(shù)據(jù)庫各種對象的命名必須規(guī)范。
2. 表和字段的設(shè)計(數(shù)據(jù)庫邏輯設(shè)計)
表設(shè)計原則
1) 標(biāo)準(zhǔn)化和規(guī)范化
數(shù)據(jù)的標(biāo)準(zhǔn)化有助于消除數(shù)據(jù)庫中的數(shù)據(jù)冗余。標(biāo)準(zhǔn)化有好幾種形式,但Third Normal Form(3NF)通常被認(rèn)為在性能、擴(kuò)展性和數(shù)據(jù)完整性方面達(dá)到了更好平衡。簡單來說,遵守3NF 標(biāo)準(zhǔn)的數(shù)據(jù)庫的表設(shè)計原則是:“One Fact in One Place”即某個表只包括其本身基本的屬性,當(dāng)不是它們本身所具有的屬性時需進(jìn)行分解。表之間的關(guān)系通過外鍵相連接。它具有以下特點:有一組表專門存放通過鍵連接起來的關(guān)聯(lián)數(shù)據(jù)。
舉例:某個存放客戶及其有關(guān)定單的3NF 數(shù)據(jù)庫就可能有兩個表:Customer 和Order。Order 表不包含定單關(guān)聯(lián)客戶的任何信息,但表內(nèi)會存放一個鍵值,該鍵指向Customer 表里包含該客戶信息的那一行。
事實上,為了效率的緣故,對表不進(jìn)行標(biāo)準(zhǔn)化有時也是必要的。
2) 數(shù)據(jù)驅(qū)動
采用數(shù)據(jù)驅(qū)動而非硬編碼的方式,許多策略變更和維護(hù)都會方便得多,大大增強(qiáng)系統(tǒng)的靈活性和擴(kuò)展性。
舉例,假如用戶界面要訪問外部數(shù)據(jù)源(文件、XML 文檔、其他數(shù)據(jù)庫等),不妨把相應(yīng)的連接和路徑信息存儲在用戶界面支持表里。還有,如果用戶界面執(zhí)行工作流之類的任務(wù)(發(fā)送郵件、打印信箋、修改記錄狀態(tài)等),那么產(chǎn)生工作流的數(shù)據(jù)也可以存放在數(shù)據(jù)庫里。角色權(quán)限管理也可以通過數(shù)據(jù)驅(qū)動來完成。事實上,如果過程是數(shù)據(jù)驅(qū)動的,你就可以把相當(dāng)大的責(zé)任推給用戶,由用戶來維護(hù)自己的工作流過程。
3) 考慮各種變化
在設(shè)計數(shù)據(jù)庫的時候考慮到哪些數(shù)據(jù)字段將來可能會發(fā)生變更。
舉例,姓氏就是如此(注意是西方人的姓氏,比如女性結(jié)婚后從夫姓等)。所以,在建立系統(tǒng)存儲客戶信息時,在單獨的一個數(shù)據(jù)表里存儲姓氏字段,而且還附加起始日和終止日等字段,這樣就可以跟蹤這一數(shù)據(jù)條目的變化。
字段設(shè)計原則
4) 每個表中都應(yīng)該添加的3 個有用的字段
dRecordCreationDate,在VB 下默認(rèn)是Now(),而在SQL Server ? 下默認(rèn)為GETDATE()
sRecordCreator,在SQL Server 下默認(rèn)為NOT NULL DEFAULT ? USER
nRecordVersion,記錄的版本標(biāo)記;有助于準(zhǔn)確說明記錄中出現(xiàn)null 數(shù)據(jù)或者丟失數(shù)據(jù)的原因 ?
5) 對地址和采用多個字段
描述街道地址就短短一行記錄是不夠的。Address_Line1、Address_Line2 和Address_Line3 可以提供更大的靈活性。還有,號碼和郵件地址更好擁有自己的數(shù)據(jù)表,其間具有自身的類型和標(biāo)記類別。
6) 使用角色實體定義屬于某類別的列
在需要對屬于特定類別或者具有特定角色的事物做定義時,可以用角色實體來創(chuàng)建特定的時間關(guān)聯(lián)關(guān)系,從而可以實現(xiàn)自我文檔化。
舉例:用PERSON 實體和PERSON_TYPE 實體來描述人員。比方說,當(dāng)John Smith, Engineer 提升為John Smith, Director 乃至最后爬到John Smith, CIO 的高位,而所有你要做的不過是改變兩個表PERSON 和PERSON_TYPE 之間關(guān)系的鍵值,同時增加一個日期/時間字段來知道變化是何時發(fā)生的。這樣,你的PERSON_TYPE 表就包含了所有PERSON 的可能類型,比如Associate、Engineer、Director、CIO 或者CEO 等。還有個替代辦法就是改變PERSON 記錄來反映新頭銜的變化,不過這樣一來在時間上無法跟蹤個人所處位置的具體時間。
7) 選擇數(shù)字類型和文本類型盡量充足
在SQL 中使用allint 和tinyint 類型要特別小心。比如,假如想看看月銷售總額,總額字段類型是allint,那么,如果總額超過了$32,767 就不能進(jìn)行計算操作了。
而ID 類型的文本字段,比如客戶ID 或定單號等等都應(yīng)該設(shè)置得比一般想象更大。假設(shè)客戶ID 為10 位數(shù)長。那你應(yīng)該把數(shù)據(jù)庫表字段的長度設(shè)為12 或者13 個字符長。但這額外占據(jù)的空間卻無需將來重構(gòu)整個數(shù)據(jù)庫就可以實現(xiàn)數(shù)據(jù)庫規(guī)模的增長了。
8) 增加刪除標(biāo)記字段
在表中包含一個“刪除標(biāo)記”字段,這樣就可以把行標(biāo)記為刪除。在關(guān)系數(shù)據(jù)庫里不要單獨刪除某一行;更好采用清除數(shù)據(jù)程序而且要仔細(xì)維護(hù)索引整體性。
3. 選擇鍵和索引(數(shù)據(jù)庫邏輯設(shè)計)
鍵選擇原則:
1) 鍵設(shè)計4 原則
為關(guān)聯(lián)字段創(chuàng)建外鍵。 ?
所有的鍵都必須唯一。 ?
避免使用復(fù)合鍵。 ?
外鍵總是關(guān)聯(lián)唯一的鍵字段。 ?
2) 使用系統(tǒng)生成的主鍵
設(shè)計數(shù)據(jù)庫的時候采用系統(tǒng)生成的鍵作為主鍵,那么實際控制了數(shù)據(jù)庫的索引完整性。這樣,數(shù)據(jù)庫和非人工機(jī)制就有效地控制了對存儲數(shù)據(jù)中每一行的訪問。采用系統(tǒng)生成鍵作為主鍵還有一個優(yōu)點:當(dāng)擁有一致的鍵結(jié)構(gòu)時,找到邏輯缺陷很容易。
3) 不要用用戶的鍵(不讓主鍵具有可更新性)
在確定采用什么字段作為表的鍵的時候,可一定要小心用戶將要編輯的字段。通常的情況下不要選擇用戶可編輯的字段作為鍵。
4) 可選鍵有時可做主鍵
把可選鍵進(jìn)一步用做主鍵,可以擁有建立強(qiáng)大索引的能力。
索引使用原則:
索引是從數(shù)據(jù)庫中獲取數(shù)據(jù)的更高效方式之一。95%的數(shù)據(jù)庫性能問題都可以采用索引技術(shù)得到解決。
1) 邏輯主鍵使用唯一的成組索引,對系統(tǒng)鍵(作為存儲過程)采用唯一的非成組索引,對任何外鍵列采用非成組索引。考慮數(shù)據(jù)庫的空間有多大,表如何進(jìn)行訪問,還有這些訪問是否主要用作讀寫。
2) 大多數(shù)數(shù)據(jù)庫都索引自動創(chuàng)建的主鍵字段,但是可別忘了索引外鍵,它們也是經(jīng)常使用的鍵,比如運(yùn)行查詢顯示主表和所有關(guān)聯(lián)表的某條記錄就用得上。
3) 不要索引memo/note 字段,不要索引大型字段(有很多字符),這樣作會讓索引占用太多的存儲空間。
4) 不要索引常用的小型表
不要為小型數(shù)據(jù)表設(shè)置任何鍵,假如它們經(jīng)常有插入和刪除操作就更別這樣作了。對這些插入和刪除操作的索引維護(hù)可能比掃描表空間消耗更多的時間。
4. 數(shù)據(jù)完整性設(shè)計(數(shù)據(jù)庫邏輯設(shè)計)
1) 完整性實現(xiàn)機(jī)制:
實體完整性:主鍵
參照完整性:
父表中刪除數(shù)據(jù):級聯(lián)刪除;受限刪除;置空值
父表中插入數(shù)據(jù):受限插入;遞歸插入
父表中更新數(shù)據(jù):級聯(lián)更新;受限更新;置空值
DBMS對參照完整性可以有兩種方法實現(xiàn):外鍵實現(xiàn)機(jī)制(約束規(guī)則)和觸發(fā)器實現(xiàn)機(jī)制
用戶定義完整性:
NOT NULL;CHECK;觸發(fā)器
2) 用約束而非商務(wù)規(guī)則強(qiáng)制數(shù)據(jù)完整性
采用數(shù)據(jù)庫系統(tǒng)實現(xiàn)數(shù)據(jù)的完整性。這不但包括通過標(biāo)準(zhǔn)化實現(xiàn)的完整性而且還包括數(shù)據(jù)的功能性。在寫數(shù)據(jù)的時候還可以增加觸發(fā)器來保證數(shù)據(jù)的正確性。不要依賴于商務(wù)層保證數(shù)據(jù)完整性;它不能保證表之間(外鍵)的完整性所以不能強(qiáng)加于其他完整性規(guī)則之上。
3) 強(qiáng)制指示完整性
在有害數(shù)據(jù)進(jìn)入數(shù)據(jù)庫之前將其剔除。激活數(shù)據(jù)庫系統(tǒng)的指示完整性特性。這樣可以保持?jǐn)?shù)據(jù)的清潔而能迫使開發(fā)人員投入更多的時間處理錯誤條件。
4) 使用查找控制數(shù)據(jù)完整性
控制數(shù)據(jù)完整性的更佳方式就是限制用戶的選擇。只要有可能都應(yīng)該提供給用戶一個清晰的價值列表供其選擇。這樣將減少鍵入代碼的錯誤和誤解同時提供數(shù)據(jù)的一致性。某些公共數(shù)據(jù)特別適合查找:國家代碼、狀態(tài)代碼等。
5) 采用視圖
為了在數(shù)據(jù)庫和應(yīng)用程序代碼之間提供另一層抽象,可以為應(yīng)用程序建立專門的視圖而不必非要應(yīng)用程序直接訪問數(shù)據(jù)表。這樣做還等于在處理數(shù)據(jù)庫變更時給你提供了更多的自由。
5. 其他設(shè)計技巧
1) 避免使用觸發(fā)器
觸發(fā)器的功能通??梢杂闷渌绞綄崿F(xiàn)。在調(diào)試程序時觸發(fā)器可能成為干擾。假如你確實需要采用觸發(fā)器,你更好集中對它文檔化。
2) 使用常用英語(或者其他任何語言)而不要使用編碼
在創(chuàng)建下拉菜單、列表、報表時更好按照英語名排序。假如需要編碼,可以在編碼旁附上用戶知道的英語。
3) 保存常用信息
讓一個表專門存放一般數(shù)據(jù)庫信息非常有用。在這個表里存放數(shù)據(jù)庫當(dāng)前版本、最近檢查/修復(fù)(對Access)、關(guān)聯(lián)設(shè)計文檔的名稱、客戶等信息。這樣可以實現(xiàn)一種簡單機(jī)制跟蹤數(shù)據(jù)庫,當(dāng)客戶抱怨他們的數(shù)據(jù)庫沒有達(dá)到希望的要求而與你聯(lián)系時,這樣做對非客戶機(jī)/服務(wù)器環(huán)境特別有用。
4) 包含版本機(jī)制
在數(shù)據(jù)庫中引入版本控制機(jī)制來確定使用中的數(shù)據(jù)庫的版本。時間一長,用戶的需求總是會改變的。最終可能會要求修改數(shù)據(jù)庫結(jié)構(gòu)。把版本信息直接存放到數(shù)據(jù)庫中更為方便。
5) 編制文檔
對所有的快捷方式、命名規(guī)范、限制和函數(shù)都要編制文檔。
采用給表、列、觸發(fā)器等加注釋的數(shù)據(jù)庫工具。對開發(fā)、支持和跟蹤修改非常有用。
對數(shù)據(jù)庫文檔化,或者在數(shù)據(jù)庫自身的內(nèi)部或者單獨建立文檔。這樣,當(dāng)過了一年多時間后再回過頭來做第2 個版本,犯錯的機(jī)會將大大減少。
6) 測試、測試、反復(fù)測試
建立或者修訂數(shù)據(jù)庫之后,必須用用戶新輸入的數(shù)據(jù)測試數(shù)據(jù)字段。最重要的是,讓用戶進(jìn)行測試并且同用戶一道保證選擇的數(shù)據(jù)類型滿足商業(yè)要求。測試需要在把新數(shù)據(jù)庫投入實際服務(wù)之前完成。
7) 檢查設(shè)計
在開發(fā)期間檢查數(shù)據(jù)庫設(shè)計的常用技術(shù)是通過其所支持的應(yīng)用程序原型檢查數(shù)據(jù)庫。換句話說,針對每一種最終表達(dá)數(shù)據(jù)的原型應(yīng)用,保證你檢查了數(shù)據(jù)模型并且查看如何取出數(shù)據(jù)。
關(guān)于英漢互譯數(shù)據(jù)庫表設(shè)計的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
本文標(biāo)題:探討英漢互譯數(shù)據(jù)庫表設(shè)計的關(guān)鍵步驟(英漢互譯數(shù)據(jù)庫表設(shè)計)
轉(zhuǎn)載源于:http://fisionsoft.com.cn/article/cdccigg.html


咨詢
建站咨詢
