1. 資料庫技術與應用 Visual FoxPro 6.0之編程題
第一章 資料庫系統基礎知識
1.1 資料庫系統概述
1. 數據處理
數據:
是對事實、概念或指令的一種特殊表達形式,可以用人工的方式或自動化的裝置進行通信、翻譯轉換或者進行加工處理。 它包括兩類:一類是能參與數字運算的數值型數據;一類是不能參與數字運算的非數值型數據,如文字、圖畫、聲音、活動圖象等。
數據處理:
是對各種類型的數據進行收集、存儲、分類、計算、加工、檢索與傳輸的過程。
包括:收集原始數據、編碼轉換、數據輸入、數據處理、數據輸出。
2. 資料庫系統
(1) 資料庫(DataBase)
定義:是以一定的組織形式存放在計算機存儲介質上的相互關聯的數據的集合。
特點: 具有最小的冗餘度、具有數據獨立性、實現數據共享、安全可靠、保密性能好
(2)資料庫管理系統(DataBase Management System)
定義: 是操縱和管理資料庫的系統軟體。Visual FoxPro 屬於一種關系型資料庫管理系統。
數據語言:
數據定義語言(DDL): 用來建立所需的資料庫。
數據操作語言(DML): 用來對資料庫進行查詢和維護操作。
關系型資料庫使用的標准語言是結構化查詢語言(Structured Query Language, SQL)。
(3)資料庫系統(DataBase System)
定義: 是以資料庫應用為基礎的計算機系統。
組成:
資料庫
硬體(計算機硬體設備)
軟體(資料庫管理系統 、操作系統)
用戶(應用程序設計員、終端用戶、資料庫管理員 )
分類:層次型資料庫、網狀型資料庫、關系型資料庫
分代:第一代 非關系型資料庫系統,60年代末問世,包括層次型和網狀型。
第二代 關系型資料庫系統(RDBS),70年代中期問世。
第三代 對象-關系資料庫系統(ORDBS 、OOBDS),80年代中期至今。
上述三個概念之間的聯系:在資料庫系統中通過資料庫管理系統來建立和使用資料庫。
3.關系模型
三個領域: 現實世界→事物(對象、性質)
觀念世界→實體(對象、屬性)
數據世界→數據(記錄、欄位)
實體模型:即反映事物聯系的實體。
數據模型:即描述實體模型的數據。
數據模型的分類: 層次模型(採用樹型結構)
網路模型(採用無向圖型結構)
關系模型(採用二維表結構)
關系模型的性質:
二維表的記錄數隨數據的增加而改變,但其欄位數是相對固定的;二維表中的每一列均有唯一的欄位名;二維表中不允許出現完全相同的兩行二維表中行的順序、列的順序均可以任意交換。
二維表的主關鍵字: 超關鍵字: 能唯一確定記錄的一列或幾列的組合
候選關鍵字:最簡練的超關鍵字
主關鍵字: 候選關鍵字中的一個
外部關鍵字:當A表的主關鍵字被包含到B表中時,則稱A表的主關鍵字為B表的外部關鍵字。
4. 微機關系型資料庫系統的發展
關系型資料庫: 即根據表、記錄和欄位之間的關系進行組織和訪問的一種資料庫。
名 稱 運行環境 公司名稱 發布時間
dBASE, dBASEⅡ, dBASEⅢ,dBASEⅢ PLUS, DOS Ashton-Tate
FoxBASE 1.0 DOS Fox軟體公司 1987.2
FoxBASE + (2.00/2.10) DOS Fox軟體公司 87.7/88.7
FoxPro 1.0 DOS Fox軟體公司 1989
FoxPro 2.0 DOS Fox軟體公司 1991
FoxPro 2.5 DOS 、 WINDOWS 3.x 微軟公司 1993.1
FoxPro 2.6 DOS 、 Windows 3.x 微軟公司 1994
Visual FoxPro 3.0 Windows 3.X 微軟公司 1996.1
Visual FoxPro 5.0 Windows 95 微軟公司 1997.2
Visual FoxPro 6.0 Windows 98 微軟公司 1998.1
1.2 Visual FoxPro 6.0概述
1. VFP6.0的特點
完善了關系型資料庫的概念,採用了Rushmore技術,引入了SQL命令;支持多種數據交換格式;採用了可視化的面向對象的程序設計方式;提供了功能完善的集成環境和豐富的開發工具。
2. VFP6.0的用戶界面 [圖例]
界面基本組成:標題欄、主菜單欄、工具欄、主窗口、命令窗口、狀態欄
系統工具一覽表
各種菜單 各種工具欄 各種窗口 各種設計器 各種生成器 各種向導
文件菜單 常用工具欄 命令窗口 資料庫設計器 文本框生成器 表向導
編輯菜單 表單控制工具欄 瀏覽窗口 表設計器 組合框生成器 交叉表向導
顯示菜單 布局工具欄 代碼窗口 表單設計器 命令組生成器 查詢向導
格式菜單 調色板工具欄 調試窗口 菜單設計器 編輯框生成器 本地視圖向導
工具菜單 列印預覽工具欄 編輯窗口 報表設計器 表達式生成器 表單向導
程序菜單 報表控制工具欄 查看窗口 標簽設計器 表單生成器 一對多表單向導
窗口菜單 查詢設計器工具欄 跟蹤窗口 類設計器 表格生成器 報表向導
幫助菜單 表單設計器工具欄 屬性窗口 連接設計器 列表框生成器 一對多報表向導
菜單菜單 報表設計器工具欄 通用欄位窗口 查詢和視圖設計器 參照完整性生成器 標簽向導
數據環境菜單 資料庫設計器工具欄 遠程視圖向導
表單菜單 項目管理器窗口 數據環境設計器 自動格式生成器 郵件合並向導
項目菜單 導入向導
查詢菜單 選項組生成器 圖形向導
報表菜單 數據透視表向導
表菜單 分組/總計報表向導
資料庫菜單
類菜單
3. VFP 6.0的工作方式
(1) 菜單操作方式
根據所需的操作從菜單中選擇相應的命令(與WORD類似)。每執行一次菜單命令,命令窗口中一般都會顯示出與菜單對應的命令內容。
利用工具菜單中的向導可以很方便地完成常規任務。
(2) 命令交互方式
根據所要進行的各項操作,採用人機對話方式在命令窗口中按格式要求逐條輸入所需命令,按回車後,機器逐條執行。
(3) 程序執行方式
先在程序編輯窗口中編完程序,再從程序菜單中選擇執行,或從命令窗口中輸入DO 命令,讓機器執行。
4. VFP 6.0常用文件類型
VFP 6.0常用的文件擴展名及其關聯的文件類型
擴展名 文件類型 擴展名 文件類型
.app 生成的應用程序 .frx 報表
.exe 可執行程序 .frt 報表備注
.pjx 項目 .lbx 標簽
.pjt 項目備注 .lbt 標簽備注
.dbc 資料庫 .prg 程序
.dct 資料庫備注 .fxp 編譯後的程序
.dcx 資料庫索引 .err 編譯錯誤
.dbf 表 .mnx 菜單
.fpt 表備注 .mnt 菜單備注
.cdx 復合索引 .mpr 生成的菜單程序
.idx 單索引 .mpx 編譯後的菜單程序
.qpr 生成的查詢程序 .vcx 可視類庫
.qpx 編譯後的查詢程序 .vct 可視類庫備注
.scx 表單 .txt 文本
.sct 表單備注 .bak 備份文件
5. 創建文件
新建各種類型的文件時,可以利用系統提供的相應工具,以提高工作效率。新建文件時可用的設計器和向導。
1.3 項目管理器
1. 項目管理器簡介
項目:
是一種文件,用於跟蹤創建應用系統所需要的所有程序、表單、菜單、庫、報表、標簽、查詢和一些其他類型的文件。
項目管理器:[圖例]
是開發VFP應用系統的一個工具,它生成一個項目文件,項目文件的擴展名為 .PJX,項目備注的擴展名為:.PJT。
項目管理器窗口的組成:
由6大類數據項(全部、數據、文檔、類、代碼、其他)和10個命令按鈕(新建、添加、修改、瀏覽、關閉、打開、預覽、運行、移去、連編)組成。
註:粗斜體表示的命令按紐根據用戶選擇的不同對象相應地出現。
項目菜單的組成:13個子菜單(其中一部分與項目管理器中的命令按鈕功能相同)。
項目管理器的功能:組織和管理所有與應用系統有關的各種類型的文件。
2. 創建項目文件
用菜單方式:
打開文件菜單 → 新建 → 項目→ 新文件 → 給出合適的項目文件名及保存位置 → 進入項目管理器 → 開發應用系統 → 完成後關閉窗口退出。
用命令方式:
語法:CREATE PROJECT <項目文件名>
功能:打開項目管理器窗口進行應用系統的開發。
3. 修改項目文件
用菜單方式:
打開文件菜單 → 打開 → 找到所需的項目文件並確定之 → 進入項目管理器→ 修改應用系統 → 完成後關閉窗口退出。
用命令方式:
語法:MODIFY PROJECT <項目文件名>
功能:打開項目管理器窗口進行應用系統的修改。
4. 項目管理器的使用
可以利用項目管理器來創建、打開、瀏覽、修改所有VFP文件並運行其中的表單、報表、標簽、菜單、程序等。特別是可以利用它來連編項目(追蹤這些文件的變化情況,包括它們之間的相關性、引用和連接等,確保引用的完整,並加入自上次連編之後更新了的一些組件)、應用程序(擴展名為.APP,在VFP環境下執行)和可執行文件(擴展名為.EXE,能脫離VFP環境執行)。
1.4 VFP 6.0 的一些規則
1. VFP6.0 的命名規則:
• 只能使用字母、下劃線和數字。
• 使用字母或下劃線作為名稱的開頭。
• 名稱可以是 1 至 128 個字元,但自由表的欄位名和索引標識最多隻能有 10 個字元。
• 避免使用 Visual FoxPro 的保留字。
• 文件的命名遵循操作系統的約定。
2. 命令和子句的書寫規則
(1) 以命令動詞開始;
(2) 各部分之間要用空格隔開;
(3) 命令、子句、函數名都可簡寫為前4個字元,大、小寫等效;
(4) 一行只能寫一條命令,總長度不超過8192個字元,超過屏幕寬度時用續行符「;」;
(5) 變數名、欄位名和文件名應避免與命令動詞、關鍵字或函數名同名,以免運行時發生混亂。
(6) 命令格式中的符號約定:
命令中的[ ] 、| 、…、< > 符號都不是命令本身的語法成分,使用時不能照原樣輸入,
其中:[ ] 表示可選項,根據具體情況決定是否選用
| 表示兩邊的部分只能選用其中的一個
… 表示可以有任意個類似參數,各參數間用逗號隔開
< > 表示其中內容要以實際名稱或參數代入
3. 命令工作方式中的常見錯誤
(1) 命令動詞寫錯
(2) 格式不符合要求
• 標點符號不對(一定要用英文標點符號)
• 缺少必需的空格或添加了不該有的空格
• 數據類型不一致,要注意字元型、數值型、日期型、邏輯型數據的書寫格式
(3) 打不開所需文件:沒有正確輸入盤符和路徑或文件名輸錯
2. 有誰知道怎麼把FOXPRO資料庫(包含備注欄位),導成csv文件或excel文件。
我剛創建一個dbf文件,並且裡麵包含memo(備注)欄位成功的導成到excel文件了。
下面我跟你講一下步驟。我的是Excel2010版本的(其他版本可能會有菜單不一樣,但方法是一樣的)
1.選擇菜單「數據」->「自其他來源」->「來自MicrosoftQuery」。
2.在出來的「選擇數據源」裡面雙擊第一個選項「<新數據源>」會出來一個「創建新數據源」的對話框。在「請輸入數據源名稱」的地方隨便輸入一個名稱,比如abcd或者你的表名,在「為你要訪問的資料庫類型選定一個驅動程序:」裡面選擇「MicrosoftVisualFoxproDriver」(這點最重要,我這邊是倒數第三個選項)。
3.然後點擊下面的按鈕「連接」,會出來一個「ConfigureConnection」對話框,先在上面的「Databasetype」的地方選擇「FreeTabledirectory」(記住一定是要先選擇這個步驟),然後在下面的「Path「右連點擊「Browse"按鈕。
4.會出來一個""對話框,選擇dbf文件所在的好驅動器,文件夾後,在左邊的"Directorycontents"列表框裡面就會出現當前目錄下所有的dbf文件,選擇你想要選的dbf文件,最後「確定」->在返回第3.步驟的"ConfigureConnection"對話框,再點擊「OK「按鈕->在返回第2.步驟的「創建新數據源」對話框里再點「確定」->在返回第2步驟的「選擇數據源」的對話框里選擇你剛剛創建的「abcd」或你輸入的其他數據源名稱,最後點擊「確定」。
5.到目前為止數據源已經創建好了,你只需要在新出來的「查詢向導-選擇列」對話框裡面,左邊選擇你剛剛的那個dbf文件後,點擊「>」按鈕就可以把dbf文件裡面所有的欄位選擇進來(包括備注欄位),然後條件提示一直點擊「下一步」按鈕(後面幾乎不需要改的),直到最後,數據就全部導入到excel文件裡面進來了。
補充:如果還不是很明白的話可以讓我幫你弄一下,或者你把dbf文件發給我,或者我遠程到你電腦上面去。本來我下班了,因為你的分給的高,所以……呵呵!