摘 要: 數(shù)據(jù)庫技術(shù)是在20世紀60年代末興起的一種數(shù)據(jù)管理技術(shù),是計算機科學與技術(shù)的重要分支,是信息系統(tǒng)的核心和基礎。VFP是Microsoft公司推出的可視化數(shù)據(jù)庫管理系統(tǒng)開發(fā)工具,具有強大的性能、完整而又豐富的工具、友好的界面,以及完備的兼容性等特點。本文通過四個方面探討了VFP數(shù)據(jù)庫技術(shù)及其應用。
關(guān)鍵詞: VFP 數(shù)據(jù)庫 技術(shù) 功能
數(shù)據(jù)庫在英語中稱為database,拆開來看,data是數(shù)據(jù),base可譯為基地,所以在通俗的意義上,數(shù)據(jù)庫不妨理解為存儲數(shù)據(jù)的基地。因為具有強大的功能和靈活性,它能借助計算機保存和管理大量復雜的數(shù)據(jù),快速而有效地為不同的用戶和各種應用程序提供需要的數(shù)據(jù),以使人們更方便、更充分地利用這些寶貴資源,在計算機科學技術(shù)中發(fā)展較快,應用技術(shù)較廣,已廣泛應用于各個領域,成為計算機信息系統(tǒng)的重要組成部分。VFP是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它采用了可視化的、面向?qū)ο蟮某绦蛟O計方法,大大簡化了應用系統(tǒng)的開發(fā)過程,并提高了系統(tǒng)的模塊性和緊湊性。它具有強大的性能,引進了對象模型,提高了引擎的存取速度并增強了客戶/服務器特性,因此整個管理系統(tǒng)的功能變得更加強大。
一、實現(xiàn)數(shù)據(jù)倉庫技術(shù)
數(shù)據(jù)倉庫是用關(guān)系數(shù)據(jù)庫管理系統(tǒng)來管理其中的數(shù)據(jù),在數(shù)據(jù)模型的指導下,收集數(shù)據(jù)信息,保證數(shù)據(jù)的一致性、準確性和實效性,真正實現(xiàn)數(shù)據(jù)的共享和分析利用。當今社會上各種各樣的數(shù)據(jù)庫系統(tǒng)都是以數(shù)據(jù)庫為基礎,對信息進行處理和應用的系統(tǒng)。隨著數(shù)據(jù)庫技術(shù)的應用和發(fā)展,人們嘗試對數(shù)據(jù)庫中的數(shù)據(jù)進行再加工,形成一個綜合的、面向分析的環(huán)境,以更好地支持決策分析,從而形成了數(shù)據(jù)倉庫技術(shù)(Data Warehouse,簡稱DW)。數(shù)據(jù)倉庫系統(tǒng)一般包括:數(shù)據(jù)倉庫技術(shù)(Data Warehouse,簡稱DW),聯(lián)機分析處理技術(shù)(On-Line Analytical Processing,簡稱OLAP)和數(shù)據(jù)挖掘技術(shù)(Data Mining,簡稱DM)。數(shù)據(jù)倉庫概念創(chuàng)始人W.H.Inmon在《建立數(shù)據(jù)倉庫》一書中對數(shù)據(jù)倉庫的定義是:數(shù)據(jù)倉庫是面向主題的、集成的、不可更新的(穩(wěn)定性)、隨時間不斷變化(不同時間)的數(shù)據(jù)集合,用以支持經(jīng)營管理中的決策制定過程。數(shù)據(jù)倉庫中的數(shù)據(jù)面向主題,與傳統(tǒng)數(shù)據(jù)庫面向應用相對應。
二、一種VFP數(shù)據(jù)庫加密算法——可變密碼的實現(xiàn)
設計基于VFP的比較可靠的密碼設定方法,即利用數(shù)據(jù)庫管理系統(tǒng)和可變密碼程序,進行加密和解密,以封閉非法用戶的權(quán)限,大大提高數(shù)據(jù)庫管理軟件的安全性。“可變密碼”是指其密碼值可由設置自行改變,這種方法一般由文件保存密碼,而且密碼是經(jīng)過加密運算的。密碼的加密運算方法有很多種,如:隨機法、轉(zhuǎn)化法、位移法、時間法等。轉(zhuǎn)換法就是把輸入的密碼經(jīng)過轉(zhuǎn)換計算,轉(zhuǎn)換成保存密碼,取密碼時,再經(jīng)過逆運算,把密碼還原。隨機密碼是可變密碼的一種,是指密碼的出現(xiàn)以隨機方式來詢問用戶,如:用戶在執(zhí)行兩個功能后必須輸入密碼,下一次檢查密碼可能在執(zhí)行三個功能后輸入密碼,這種密碼比較隱蔽,其方法如下:首先聲明一個變量,用來計數(shù),是隨機數(shù),在每個過程、函數(shù)或命令執(zhí)行前,累加該變量值,當該變量值等于其隨機值時,調(diào)用密碼查詢程序。密碼可能隨時變換,經(jīng)過加密運算,不易被破解。
三、實現(xiàn)數(shù)據(jù)交互
VFP是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng),具有性能強大、工具完整而又豐富、界面友好,以及兼容性完備等特點,使其成為數(shù)據(jù)庫應用程序開發(fā)人員的強有力工具,是許多數(shù)據(jù)庫系統(tǒng)設計者非常喜歡的開發(fā)平臺。而Excel則是一種優(yōu)秀的電子表格處理軟件,在數(shù)據(jù)處理、統(tǒng)計分析與計算(公式)、數(shù)據(jù)透視表處理、圖表制作等方面都有著獨到的優(yōu)勢,還能利用Visual Basic for Application(VBA)語言開發(fā)面向特定應用的程序,成為當前辦公軟件中必不可少的優(yōu)秀軟件之一。這兩種軟件在各自的應用領域里應用廣泛,同時它們還具有良好的交互編程能力,兩者可以相輔相成、取長補短。人們通常需要從其他應用程序向Excel引入數(shù)據(jù),也經(jīng)常需要把Excel的數(shù)據(jù)輸出到其他應用程序中。利用VFP系統(tǒng),只需輸入一兩行簡單的命令就可自動完成VFP與Excel的數(shù)據(jù)交互,如在Excel中創(chuàng)建表和在VFP程序中引用其表名;在VFP開發(fā)的應用程序中用SQL查詢Excel中的數(shù)據(jù),結(jié)合Excel強大的功能設計和實現(xiàn)VFP的功能。
四、保證數(shù)據(jù)完整性
數(shù)據(jù)完整性(Data Integrity)是指數(shù)據(jù)的精確性(Accuracy)和可靠性(Reliability)。它是應防止數(shù)據(jù)庫中存在不符合語義規(guī)定的數(shù)據(jù)和防止因錯誤信息的輸入輸出造成無效操作或錯誤信息而提出的。如何保證數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)完整性長期以來一直是人們所關(guān)心的問題。關(guān)系型數(shù)據(jù)應用系統(tǒng)中的數(shù)據(jù)大都組織成數(shù)據(jù)庫,數(shù)據(jù)庫中是一張張的二維表及各表之間的關(guān)系,因此關(guān)系型數(shù)據(jù)庫應用系統(tǒng)設計的關(guān)鍵是數(shù)據(jù)庫的設計,而數(shù)據(jù)庫設計的關(guān)鍵是數(shù)據(jù)庫中表及表之間關(guān)系的設計。VFP將數(shù)據(jù)字典引入了XBase領域,使數(shù)據(jù)的完整性限制由龐大的程序代碼變成了數(shù)據(jù)庫的一部分,極大地增強VFP的數(shù)據(jù)處理能力。
在數(shù)據(jù)庫中數(shù)據(jù)完整性是指保證數(shù)據(jù)正確的特性,數(shù)據(jù)完整性包括實體完整性(Entity Integrity)、域完整性(Domain Integrity)和參照完整性(Referential Integrity)等。實體完整性是為了保證表中記錄唯一的特性,每個表中應該有一個主關(guān)鍵字,且主關(guān)鍵字值不允許取空值;域完整性是指關(guān)系中的屬性值必須滿足某種特定的數(shù)據(jù)類型和約束規(guī)則,即限定某個屬性的取值類型和取值范圍;參照完整性指定了關(guān)系之間建立聯(lián)系的約束規(guī)則。例如在學生管理系統(tǒng)中,學生關(guān)系中的屬性“學號”應該設置為主關(guān)鍵字,用來唯一地標示每位學生;“性別”字段的取值只能是“男”或“女”,則可以設置其字段有效性規(guī)則為:性別=“男”O(jiān)R性別=“女”;而在學生管理系統(tǒng)中,學生關(guān)系、成績關(guān)系、課程關(guān)系之間應該設置參照完整性,以保證各個關(guān)系表中數(shù)據(jù)的正確性和相容性。
數(shù)據(jù)庫管理系統(tǒng)軟件是數(shù)據(jù)庫系統(tǒng)的核心,任何數(shù)據(jù)庫系統(tǒng)都離不開數(shù)據(jù)庫管理系統(tǒng)軟件的支持。VFP關(guān)系數(shù)據(jù)庫系統(tǒng)軟件提供了一個集成化的系統(tǒng)開發(fā)環(huán)境,它不僅支持面向過程的程序設計,而且在語言方面作了強大的擴充,支持面向?qū)ο蟮目梢暬幊碳夹g(shù),并擁有功能強大的可視化程序設計工具,深受廣大用戶的歡迎,是目前微型計算機Windows平臺上非常流行的數(shù)據(jù)庫管理系統(tǒng)軟件之一,被廣泛地應用在各種小型數(shù)據(jù)管理應用系統(tǒng)的設計與開發(fā)中,同時也成為非常著名的數(shù)據(jù)庫教學軟件。
參考文獻:
[1]譚浩強.Visual FoxPro及其應用系統(tǒng)開發(fā).北京:清華大學出版社,2000.
[2]馬志紅,黃建華.Visual FoxPro程序設計.北京.:北京郵電大學出版社.2007.
[3]黎能武.Visual FoxPro 6.0程序設計教程(第二版).北京:中國水利水電出版社,2008,6.
[4]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論.北京:高等教育出版社.1991.
[5]史濟民.FoxBASE+及其應用系統(tǒng)開發(fā).北京:清華大學出版社.1994.