在當(dāng)前數(shù)據(jù)庫領(lǐng)域,已有越來越多的人開始采用Access。它是一個功能強大的數(shù)據(jù)庫管理系統(tǒng)和MIS系統(tǒng)開發(fā)工具,具有界面友好、易學(xué)易用、開發(fā)簡單、接口靈活等特點?,F(xiàn)將本人在使用Access時體會到的一些經(jīng)驗在此與大家交流。
數(shù)據(jù)庫設(shè)計的技巧
1. 統(tǒng)一規(guī)劃
所謂數(shù)據(jù)庫設(shè)計是指從對現(xiàn)行非計算機管理的數(shù)據(jù)庫系統(tǒng)的分析到最終實現(xiàn)由計算機管理的數(shù)據(jù)庫系統(tǒng)的全過程。它包括表、查詢、報表等的設(shè)計。總的原則應(yīng)從提高數(shù)據(jù)處理效率及便于數(shù)據(jù)處理兩方面考慮。
以設(shè)計學(xué)生成績管理系統(tǒng)為例,在表的設(shè)計中,是將全校學(xué)生成績設(shè)計成一個表,還是分年級設(shè)表,經(jīng)分析按年級設(shè)表將提高數(shù)據(jù)處理速度且便于數(shù)據(jù)的處理,相應(yīng)須設(shè)置一個參數(shù)表以描述各年級的一些情況,這樣以后在進行數(shù)據(jù)處理時可從參數(shù)表中提取有關(guān)參數(shù)??紤]到在輸入學(xué)生成績時可能出錯,故應(yīng)設(shè)計相應(yīng)的副成績表,這樣每一成績分二次輸入,然后再建立相應(yīng)的主副查詢來核對主副表中的成績是否一致,不一致則進行修改。再比如要進行十分段、單科每分段、總分每分段等數(shù)據(jù)的統(tǒng)計,可設(shè)計相應(yīng)的表用Visual Basic程序來進行處理并將統(tǒng)計數(shù)據(jù)自動填入相應(yīng)的表中。在字段的設(shè)計中要盡量減少字段數(shù),比如,學(xué)生名次有班級名次與年級名次,我們可以將這兩個名次用一個字段來表示,如用“m/ n”表示,“m“表示班級名次,“n“表示年級名次,這同樣可用Visual Basic程序來實現(xiàn)。在設(shè)計報表時是以表為基礎(chǔ)來建立報表還是以查詢?yōu)榛A(chǔ)來建立報表,顯然以查詢?yōu)榛A(chǔ)來建立報表靈活方便,可以方便地通過修改查詢及查詢中的有關(guān)條件從而打印出所需要的報表??傊谶M行數(shù)據(jù)庫設(shè)計時要全盤考慮才能設(shè)計出合理的數(shù)據(jù)庫對象。
2. 設(shè)置好關(guān)鍵字和表間關(guān)系
表的設(shè)計中關(guān)鍵字的設(shè)置很重要,設(shè)置關(guān)鍵字可以提高查詢等操作的速度。有時可以用多字段作關(guān)鍵字。兩個表的關(guān)系也很重要,比如主成績表與副成績表間若沒有建立正確的關(guān)系,則主副查詢將得不到正確的結(jié)果。
3. 設(shè)計好字段的缺省值
字段的缺省值有時也需引起注意。比如,在數(shù)字型字段中,因有些記錄中可能沒有輸入過數(shù)據(jù),在用Visual Basic程序處理時可能會出現(xiàn)一些不正確的結(jié)果(不知這是否是Access 97的Bug),但當(dāng)將其缺省值設(shè)置為“0”后一切正常。
數(shù)據(jù)庫設(shè)計的技巧
1. 統(tǒng)一規(guī)劃
所謂數(shù)據(jù)庫設(shè)計是指從對現(xiàn)行非計算機管理的數(shù)據(jù)庫系統(tǒng)的分析到最終實現(xiàn)由計算機管理的數(shù)據(jù)庫系統(tǒng)的全過程。它包括表、查詢、報表等的設(shè)計。總的原則應(yīng)從提高數(shù)據(jù)處理效率及便于數(shù)據(jù)處理兩方面考慮。
以設(shè)計學(xué)生成績管理系統(tǒng)為例,在表的設(shè)計中,是將全校學(xué)生成績設(shè)計成一個表,還是分年級設(shè)表,經(jīng)分析按年級設(shè)表將提高數(shù)據(jù)處理速度且便于數(shù)據(jù)的處理,相應(yīng)須設(shè)置一個參數(shù)表以描述各年級的一些情況,這樣以后在進行數(shù)據(jù)處理時可從參數(shù)表中提取有關(guān)參數(shù)??紤]到在輸入學(xué)生成績時可能出錯,故應(yīng)設(shè)計相應(yīng)的副成績表,這樣每一成績分二次輸入,然后再建立相應(yīng)的主副查詢來核對主副表中的成績是否一致,不一致則進行修改。再比如要進行十分段、單科每分段、總分每分段等數(shù)據(jù)的統(tǒng)計,可設(shè)計相應(yīng)的表用Visual Basic程序來進行處理并將統(tǒng)計數(shù)據(jù)自動填入相應(yīng)的表中。在字段的設(shè)計中要盡量減少字段數(shù),比如,學(xué)生名次有班級名次與年級名次,我們可以將這兩個名次用一個字段來表示,如用“m/ n”表示,“m“表示班級名次,“n“表示年級名次,這同樣可用Visual Basic程序來實現(xiàn)。在設(shè)計報表時是以表為基礎(chǔ)來建立報表還是以查詢?yōu)榛A(chǔ)來建立報表,顯然以查詢?yōu)榛A(chǔ)來建立報表靈活方便,可以方便地通過修改查詢及查詢中的有關(guān)條件從而打印出所需要的報表??傊谶M行數(shù)據(jù)庫設(shè)計時要全盤考慮才能設(shè)計出合理的數(shù)據(jù)庫對象。
2. 設(shè)置好關(guān)鍵字和表間關(guān)系
表的設(shè)計中關(guān)鍵字的設(shè)置很重要,設(shè)置關(guān)鍵字可以提高查詢等操作的速度。有時可以用多字段作關(guān)鍵字。兩個表的關(guān)系也很重要,比如主成績表與副成績表間若沒有建立正確的關(guān)系,則主副查詢將得不到正確的結(jié)果。
3. 設(shè)計好字段的缺省值
字段的缺省值有時也需引起注意。比如,在數(shù)字型字段中,因有些記錄中可能沒有輸入過數(shù)據(jù),在用Visual Basic程序處理時可能會出現(xiàn)一些不正確的結(jié)果(不知這是否是Access 97的Bug),但當(dāng)將其缺省值設(shè)置為“0”后一切正常。

