版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、-WORD格式 - 專業(yè)資料 - 可編輯 -知行教育沖刺班筆記總結(jié)第一章:公共基礎(chǔ)知識1.1 數(shù)據(jù)結(jié)構(gòu)與算法1.1.1 算法1.算法的基本概念( 1)概念:算法是指一系列解決問題的清晰指令。( 2)算法的 4 個基本特征:可行性、確定性、有窮性、擁有足夠的情報。( 3)算法的兩種基本要素:對數(shù)據(jù)對象的運算和操作、算法的控制結(jié)構(gòu)(運算和操作時間的順序)( 4)算法設(shè)計的基本方法:列舉法、歸納法、遞推法、遞歸法、減半遞推技術(shù)和回溯法。2算法的復(fù)雜度( 1)算法的時間復(fù)雜度:執(zhí)行算法所需要的計算工作量。( 2)算法的空間復(fù)雜度:執(zhí)行算法所需的內(nèi)存空間。1.1.2 數(shù)據(jù)結(jié)構(gòu)的基本概念數(shù)據(jù)結(jié)構(gòu)指相互有關(guān)
2、聯(lián)的數(shù)據(jù)元素的集合,即數(shù)據(jù)的組織形式。其中邏輯機構(gòu)反映數(shù)據(jù)元素之間邏輯關(guān)系;存儲結(jié)構(gòu)為數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機存儲空間中的存放形式,有順序存儲、鏈式存儲和散列存儲四種方式。數(shù)據(jù)結(jié)構(gòu)按各元素之間前后件關(guān)系的復(fù)雜度可劃分:( 1)線性結(jié)構(gòu):有且只有一個根節(jié)點,且每個節(jié)點最多有一個直接前驅(qū)和一個直接后繼的非空數(shù)據(jù)結(jié)構(gòu)。( 2)非線性結(jié)構(gòu):不滿足線性結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu)。1.1.3 線性表及其順序存儲結(jié)構(gòu)1線性表的基本概念線性結(jié)構(gòu)又稱線性表,線性表是最簡單也是最常用的一種數(shù)據(jù)結(jié)-WORD格式 - 專業(yè)資料 - 可編輯 -構(gòu)。2線性表的順序存儲結(jié)構(gòu) 元素所占的存儲空間必須連接。 元素在存儲空間的位置是按邏輯順序
3、存放的。3線性表的插入運算在 i 個元素之前插入一個新元素的步驟如下:步驟一:把原來第 n 個節(jié)點至第 i 個節(jié)點依次往后移一個元素位置。步驟二:把新節(jié)點放在第i 個位置上。步驟三:修正線性表的機構(gòu)個數(shù)。4線性表的刪除運算刪除第 i 個位置的元素的步驟如下:步驟一:把第 i 個元素之后不包括第 i 個元素的 n-1 個元素依次前移一個位置;步驟二:修正線性表的結(jié)點個數(shù)。1.1.4 棧和隊列1棧及其基本運算( 1)基本概念:棧是一種特殊的線性表,其插入元算與刪除運算都只在線性表的一端進行,也被稱為“先進后出”表或“后進先出表”。 棧頂:允許插入與刪除的一端。 棧底:棧頂?shù)牧硪欢恕?空棧:棧中沒有
4、元素的棧。( 2)特點: 棧頂元素是最后被插入和最早被刪除的元素。 棧底元素是最早被插入和最后被刪除的元素。 棧有記憶作用。 在順序存儲結(jié)構(gòu)下,棧的插入和刪除元算不需移動表中其他-WORD格式 - 專業(yè)資料 - 可編輯 -數(shù)據(jù)元素。 棧頂指針 top 動態(tài)反映了棧中元素的變化情況。(3)順序存儲和運算:入棧運算、退棧運算和讀棧頂運算2隊列及其基本元算( 1)基本概念:隊列是指允許在一端進行插入,在另一端進行刪除的線性表,又稱“先進先出”的線性表。 隊尾:允許插入的一端,用尾指針指向隊尾元素。 排頭:允許刪除的一端,用頭指針指向頭元素的前一位置。( 2)循環(huán)隊列及其運算:入隊運算與退隊運算。1.
5、1.5 樹和二叉樹1樹的基本概念樹是簡單的非線性結(jié)構(gòu),樹中有且僅有一個沒有前驅(qū)的節(jié)點稱為“根”,其余節(jié)點分成 m 個互不相交的有限集合 T1,T2, ,T r m-m,每個集合又是一顆樹,稱 T1,T2, , T r m m 為根節(jié)點的子樹。 父節(jié)點:每一個節(jié)點只有一個前件,無條件的節(jié)點只有一個,稱為樹的根結(jié)點(簡稱樹的根) 。 子節(jié)點:每一個節(jié)點可以后多個后件,無后件的節(jié)點稱為葉子節(jié)點。 樹的度:所有節(jié)點最大的度。 樹的深度:樹的最大層次。2二叉樹及其基本性質(zhì)二叉樹是一種非線性結(jié)構(gòu),是有限的節(jié)點集合,該集合為空(空二叉樹)或由一個根節(jié)點及兩棵互不相交的左右二叉子樹組成。可分為滿二叉樹和完全二
6、叉樹, 其中滿二叉樹一定是完全二叉樹,但完全二叉樹不一定是滿二叉樹。 二叉樹可為空,空的二叉樹無節(jié)點,非空二叉樹有且只有一個跟結(jié)點;-WORD格式 - 專業(yè)資料 - 可編輯 - 每個節(jié)點最多可有兩顆子樹,稱為左子樹和右子樹。3二叉樹的存儲結(jié)構(gòu)二叉樹通常采用鏈式存儲結(jié)構(gòu),存儲節(jié)點由數(shù)據(jù)域和指針域(左指針域和右指針域)組成。二叉樹的鏈式存儲結(jié)構(gòu)也稱為二叉鏈表對滿二叉樹和完全二叉樹可按層次進行順序存儲。4二叉樹的遍歷二叉樹的遍歷是指不重復(fù)地訪問二叉樹中所有節(jié)點,主要指非空二叉樹,對于空二叉樹則結(jié)束返回。二叉樹的遍歷包括前序遍歷,中序遍歷和后序遍歷。1.1.6查找技術(shù)( 1)順序查找:在線性表中查找指
7、定的元素。( 2)二分查找:線性表必須是順序存儲結(jié)構(gòu),且必是有序表,反復(fù)查找直到成功或子表長度為 0 時結(jié)束。1.1.7排序技術(shù)( 1)交換類排序法:借助數(shù)據(jù)元素的“交換”進行排序,包括冒泡排序法和快速排序法。( 2)插入類排序法:包括簡單插入排序法和希爾排序法( 3)選擇類排序法:包括簡單選擇排序法和堆排序法。1.2程序設(shè)計基礎(chǔ)1.2.1 程序設(shè)計方法與風(fēng)格(1)設(shè)計方法:程序設(shè)計指設(shè)計、 編制、調(diào)試程序的方法和過程,主要有結(jié)構(gòu)化程序設(shè)計方法,軟件工程方法和面向?qū)ο蠓椒ā#?2)設(shè)計風(fēng)格:良好的設(shè)計風(fēng)格要注重源程序文檔化,數(shù)據(jù)說明方法,語句的結(jié)構(gòu)和輸入輸出1.2.2 面向?qū)ο蟮某绦蛟O(shè)計面向?qū)?/p>
8、象方法的本質(zhì)是主張從客觀世界固有的事物出發(fā)來構(gòu)造系統(tǒng),強調(diào)建立的系統(tǒng)能映射問題域。-WORD格式 - 專業(yè)資料 - 可編輯 - 對象:用來表示客觀世界中任何實體,可以是任何有明確邊界和意義的東西。 類:具有共同屬性,共同方法的對象的集合。 實例:一個具體對象就是其對應(yīng)分類的一個實例。 消息:實例間傳遞的消息,它統(tǒng)一了數(shù)據(jù)流和控制流。 繼承:使用已有的類定義作為基礎(chǔ)建立新類的定義技術(shù)。 多態(tài)性:指對象根據(jù)所接受的信息而作出動作,同樣的信息被不同的對象接受時有不同行動的現(xiàn)象。面向?qū)ο蟪绦蛟O(shè)計的優(yōu)點:與人類習(xí)慣的思維方法一致,穩(wěn)定性好,可重用性好,易于開發(fā)大型軟件產(chǎn)品,可維護性好。1.3 軟件工程基
9、礎(chǔ)1.3.1 軟件工程基本概念1軟件的定義與特點( 1)定義:軟件是指與計算機系統(tǒng)的操作有關(guān)的計算機程序、規(guī)程、規(guī)則,以及可能有的文件、文檔和數(shù)據(jù)。( 2)特點: 是邏輯實體,有抽象性。 生產(chǎn)沒有明顯的制作過程。 運行使用期間不存在磨損、老化問題。 開發(fā)、運行對計算機操作系統(tǒng)有依賴性,受計算機系統(tǒng)的限制,導(dǎo)致了軟件移植問題。 復(fù)雜性較高,成本昂貴。 開發(fā)涉及諸多社會因素。2軟件危機與軟件工程軟件危機指在計算機軟件的開發(fā)和維護中遇到的一系列嚴重問題。軟件工程是應(yīng)用于計算機軟件的定義,開發(fā)和維護的一整套方法、工具、文檔、實踐標準和工序,包括軟件開發(fā)技術(shù)和軟件-WORD格式 - 專業(yè)資料 - 可編輯
10、 -工程管理。3軟件工程過程把輸入轉(zhuǎn)化為輸出的一組彼此相關(guān)的資源和活動。4軟件生命周期軟件產(chǎn)品從提出、實現(xiàn)、使用維護到停止使用的過程。5軟件工程的目標在給定成本、進度的前提下,開發(fā)出具有有效性、可靠性、可理解性、可維護性、可重用性、可適用性、可移植性、可追蹤性和可互操作性且滿足用戶需求的產(chǎn)品。6、軟件工程的原則軟件工程的原則包括:抽象、信息隱蔽、模塊化、局部化、確定性、一致性、完備性和可驗證性。7軟件開發(fā)工具從初期的單向工具向集成工具發(fā)展,軟件開發(fā)的方法必須得到相應(yīng)工具的支持。8軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境是全面支持軟件開發(fā)工程的軟件工具的集合。計算機輔助軟件工程(CASE)是當(dāng)前最有特色的研究工
11、作和發(fā)展方向。 1.3.2 結(jié)構(gòu)化分析方法需求分析的任務(wù)是發(fā)展需求、求精、建模和定義需求的過程,可概括為:需求獲取,需求分析、編寫需求規(guī)格說明書和需求評審常用的分析方法: 結(jié)構(gòu)分析方法:其實質(zhì)著眼數(shù)據(jù)流,自頂向下,逐層分解,建立系統(tǒng)的處理流程。常用工具包括數(shù)據(jù)流圖,數(shù)字數(shù)字字典(核心方法)、判斷樹和判斷表。 面向?qū)ο蠓治龇椒ā?.3.3 結(jié)構(gòu)化設(shè)計方法-WORD格式 - 專業(yè)資料 - 可編輯 -1軟件設(shè)計的基本概念和方法軟件設(shè)計是一個把軟件需求轉(zhuǎn)換為軟件表示的過程。( 1)基本原理:抽象、模塊化、信息隱藏、模塊獨立性(度量標準:耦合性和內(nèi)聚性)。( 2)基本思想:將軟件設(shè)計成由相對對立、單一功
12、能的模塊組成的結(jié)構(gòu)。2概要設(shè)計( 1)4 個任務(wù):設(shè)計軟件系統(tǒng)結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫設(shè)計、編寫概要設(shè)計文檔、概要設(shè)計文檔評審。( 2)面向數(shù)據(jù)流的設(shè)計方法:數(shù)據(jù)流圖的信息分為交換流和事物流,結(jié)構(gòu)形式有交換型和事務(wù)型。3詳細設(shè)計的工具詳細設(shè)計的工具包括: 圖形工具:程序流程圖、N-S、PAD、HIPO 。 表格工具:判定表。語言工具: PDL (偽碼)1.3.4軟件測試1目的:為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。2準則:所有測試應(yīng)追溯到用戶需求嚴格執(zhí)行測試計劃,排除測試的隨意性。充分注意測試中的集群現(xiàn)象。程序員應(yīng)避免檢查自己的程序。窮舉測試不可能。妥善保存設(shè)計計劃、測試用例、出錯統(tǒng)計和最終分析報告。3
13、軟件測試技術(shù)和方法軟件測試的方法按是否需要執(zhí)行被測軟件的角度,可分為靜態(tài)測-WORD格式 - 專業(yè)資料 - 可編輯 -試和動態(tài)測試,按功能分為白盒測試和黑盒測試。( 1)白盒測試:根據(jù)程序的內(nèi)部邏輯設(shè)計測試用例,主要方法有邏輯覆蓋測試、基本路徑測試。( 2)黑盒測試:根據(jù)規(guī)格說明書的功能來設(shè)計測試用例,主要診斷方法有等價劃分法,邊界值分析法,錯誤推測法、因果圖法等,主要用于軟件確定測試。1.3.5程序的調(diào)試( 1)任務(wù):診斷和改正程序中的錯誤。( 2)調(diào)試方法:強行排錯法、回溯法和原因排除法。1.4 數(shù)據(jù)庫設(shè)計基礎(chǔ)1.4.1 數(shù)據(jù)庫系統(tǒng)的基本概念( 1)數(shù)據(jù)( Data):描述事物的符號記錄。
14、( 2)數(shù)據(jù)庫( DataBase)長期存儲在計算機內(nèi)的、有組織的、可共享的數(shù)據(jù)結(jié)合。( 3)數(shù)據(jù)庫管理系統(tǒng)的 6 個功能:數(shù)據(jù)組織、數(shù)據(jù)操縱、數(shù)據(jù)維護、控制及保護和數(shù)據(jù)服務(wù)。( 4)數(shù)據(jù)庫技術(shù)發(fā)展經(jīng)歷了 3 個階段:人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段( 5)數(shù)據(jù)庫系統(tǒng)的特點:集成性、高效性、高共享性、低冗余性、數(shù)據(jù)獨立性、數(shù)據(jù)統(tǒng)一管理與控制等。( 6)數(shù)據(jù)庫系統(tǒng)的內(nèi)部機構(gòu)體系:三級模式(概念模式、內(nèi)模式、外模式)和二級映射(外模式/概念模式的映射、概念模式/ 內(nèi)模式的映射)構(gòu)成了數(shù)據(jù)庫系統(tǒng)內(nèi)部的抽象結(jié)構(gòu)體系。1.4.2 數(shù)據(jù)模型數(shù)據(jù)模型是數(shù)據(jù)特征的抽象, 從抽象層次上描述了系統(tǒng)的形態(tài)特征
15、、動態(tài)行為和約束條件,描述的內(nèi)容有數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和-WORD格式 - 專業(yè)資料 - 可編輯 -數(shù)據(jù)約束。有 3 個層次:概念數(shù)據(jù)模型、邏輯數(shù)據(jù)模型和物理數(shù)據(jù)模型。( 1)E-R 模型:提供了表示實體、 屬性和聯(lián)系的方法。 實體間聯(lián)系有:“一對一”、“一對多”和“多對多” ;( 2)層次模型:利用樹形結(jié)構(gòu)表示實體及其之間聯(lián)系,其中節(jié)點是實體,樹枝是聯(lián)系,從上到下是一對多關(guān)系;( 3)網(wǎng)狀模型:用網(wǎng)狀結(jié)構(gòu)表示實體及其之間聯(lián)系,是層次模型的擴展。網(wǎng)絡(luò)模型以記錄型為節(jié)點,反映現(xiàn)實中較為復(fù)雜的事物聯(lián)系。( 4)關(guān)系模型:采用二維表(由表框架和表的元組組成)來表示,可進行數(shù)據(jù)查詢、增加、刪除及修改操作
16、。關(guān)系模型允許定義“實體完整性” 、“參照完整性”和“用戶定義完整性”三種約束。 鍵(碼):二維表中唯一能標識元組的最小屬性集。 候選鍵(候選碼):二維表中可能有的多個鍵。 主鍵:被選取的一個使用的鍵。1.4.3關(guān)系代數(shù)( 1)傳統(tǒng)的集合運算:關(guān)系并運算、關(guān)系交運算、關(guān)系差運算和廣義迪卡爾積。( 2)專門的關(guān)系運算:選擇、投影、連接。1.4.4數(shù)據(jù)庫設(shè)計與管理1數(shù)據(jù)庫設(shè)計概念 基本思想:過程迭代和逐步求精。 方法:面向數(shù)據(jù)的方法和面向過程的方法。 設(shè)計過程:需求分析概念設(shè)計邏輯設(shè)計物理設(shè)計編碼測試運行進一步修改。2數(shù)據(jù)庫設(shè)計的需求分析-WORD格式 - 專業(yè)資料 - 可編輯 -需求收集和分析是
17、數(shù)據(jù)庫設(shè)計的第一階段, 常用結(jié)構(gòu)化分析方法(自頂向下、逐層分解)和面向?qū)ο蟮姆椒?,主要工作有繪制數(shù)據(jù)流程圖,數(shù)據(jù)分析、功能分析、確定功能處理模塊和數(shù)據(jù)間關(guān)系。數(shù)據(jù)字典:包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程,是對系統(tǒng)中數(shù)據(jù)的詳盡描述。3數(shù)據(jù)庫的設(shè)計( 1)數(shù)據(jù)庫的概念設(shè)計:分析數(shù)據(jù)間內(nèi)在的語義關(guān)聯(lián),以建立數(shù)據(jù)的抽象模型。( 2)數(shù)據(jù)庫的邏輯設(shè)計: 從 ER 圖向關(guān)系模型轉(zhuǎn)換, 邏輯模式規(guī)范化,關(guān)系視圖設(shè)計可以根據(jù)用戶需求隨時創(chuàng)建。(3)數(shù)據(jù)庫的物理設(shè)計: 是數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法,目的是對數(shù)據(jù)庫內(nèi)部物理結(jié)構(gòu)作出調(diào)整并選擇合理的存取路徑,以提高速度和存儲空間。4.數(shù)據(jù)庫
18、管理數(shù)據(jù)庫管理包括數(shù)據(jù)庫的建立、數(shù)據(jù)庫的調(diào)整、數(shù)據(jù)庫的重組、數(shù)據(jù)庫的安全性與完整性控制、 數(shù)據(jù)庫故障恢復(fù)和數(shù)據(jù)庫的監(jiān)控。第 2 章 Visual PoxPro數(shù)據(jù)庫基礎(chǔ)2.1 數(shù)據(jù)庫基礎(chǔ)知識2.1.1 數(shù)據(jù)庫系統(tǒng)1.數(shù)據(jù)庫數(shù)據(jù)庫是指存儲在計算機存儲設(shè)備上的結(jié)構(gòu)化的相關(guān)數(shù)據(jù)的集合,包括描述事物的數(shù)據(jù)本身及相關(guān)事物間的聯(lián)系。2.數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)是指為數(shù)據(jù)庫建立、使用和維護而配置的軟件系統(tǒng),簡稱 DBMS,是數(shù)據(jù)庫系統(tǒng)的核心。3.數(shù)據(jù)庫應(yīng)用系統(tǒng)-WORD格式 - 專業(yè)資料 - 可編輯 -數(shù)據(jù)庫應(yīng)用系統(tǒng)是指系統(tǒng)開發(fā)人員利用數(shù)據(jù)庫系統(tǒng)資源開發(fā)出來的,面向某一類實際應(yīng)用的應(yīng)用軟件系統(tǒng)。4.數(shù)據(jù)
19、庫管理員負責(zé)全面管理和實施數(shù)據(jù)庫控制和維護的技術(shù)人員。5.數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)是指引進數(shù)據(jù)庫技術(shù)后的計算機系統(tǒng),由硬件系統(tǒng)、數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)及相關(guān)軟件、數(shù)據(jù)庫管理員和用戶組成。6.數(shù)據(jù)庫設(shè)計過程需求分析確定數(shù)據(jù)庫中需要的表確定所需字段分析各個表所代表的實體之間存在的聯(lián)系設(shè)計求精2.1.2數(shù)據(jù)模型1.實體的描述( 1)實體:客觀存在并且可以相互區(qū)別的事物稱為實體,實體可以是客觀存在的事物,也可以是抽象的事件。( 2)實體的屬性:描述實體的特性稱為實體的屬性。( 3)實體型:屬性值的集合表示一個具體的實體,而屬性的集合表示一種實體的類型,稱為實體型。( 4)實體集:同類型的實體的集合,稱
20、為實體集。2.實體間聯(lián)系及聯(lián)系的種類一對一聯(lián)系、一對多聯(lián)系和多對多聯(lián)系。3.數(shù)據(jù)模型數(shù)據(jù)模型是數(shù)據(jù)庫管理系統(tǒng)用來表示實體及實體間聯(lián)系的方法。 3 種數(shù)據(jù)模型:層次數(shù)據(jù)模型、網(wǎng)狀數(shù)據(jù)模型和關(guān)系數(shù)據(jù)模型。2.2 關(guān)系數(shù)據(jù)庫2.2.1關(guān)系模型(1)定義:用二維表形式表示實體和實體間聯(lián)系的數(shù)據(jù)模型。-WORD格式 - 專業(yè)資料 - 可編輯 -( 2)關(guān)系:一個關(guān)系的邏輯結(jié)構(gòu)就是一張二維表,每個關(guān)系有一個關(guān)系名。( 3)元組:在二維表中,水平方向的行稱為元組,每一行是一個元組。元組對應(yīng)存儲文件中的一個具體記錄。( 4)屬性:二維表中垂直方向的列稱為屬性,每一列有一個屬性名,在 Visual PoxPro
21、 中表示為字段名,每個字段的數(shù)據(jù)類型、寬度等在創(chuàng)建表的結(jié)構(gòu)時規(guī)定。( 5)域:指屬性的取值范圍。( 6)關(guān)鍵字:指屬性或?qū)傩缘慕M合。( 7)外部關(guān)鍵字:表中一個字段是另一個表的主關(guān)鍵字或候選關(guān)鍵字,這個字段屬性就稱為外部關(guān)鍵字。2.2.2關(guān)系運算( 1)傳統(tǒng)的集合運算:并、差、交。( 2)專門的關(guān)系運算:選擇、投影、連接、自然連接。第三章 Visual PoxPro程序設(shè)計基礎(chǔ)3.1 常量和變量3.1.1常量常量包括:數(shù)據(jù)型常量、貨幣型常量、字符型常量、日期型常量、日期時間型常量、邏輯型常量(只有數(shù)據(jù)真和邏輯假兩個值)。3.1.2內(nèi)存變量常用命令1內(nèi)存變量的賦值 格式 1:store to 格
22、式 2: = 2.表達式值的顯示格式 1:? 格式 2:? 3.內(nèi)存變量的顯示-WORD格式 - 專業(yè)資料 - 可編輯 -格式 1:LIST MEMORY LIKE TO PRINTER | TO FILE 格式2:DISPLAY MEMORY LIKE TOPRINTER| TOFILE 4.內(nèi)存變量的清除格式1:CLEAR MEMORY格式2:RELEASE 格式3:RELEASEALL EXTENDED 格式4:RELEASEALL LIKE , | EXCEPT 5.表中數(shù)據(jù)和數(shù)據(jù)組數(shù)據(jù)之間的交換(1)將表的當(dāng)前記錄復(fù)制到數(shù)組。格式1:SCATTER FIELDS MEMOTO BLA
23、NK格式 2: SCATTER FIELDSLIKE | FIELDSEXCEPT MEMO TO BLANK(2)將數(shù)組數(shù)據(jù)復(fù)制到表的當(dāng)前記錄 格 式 1: GATHERFROM FIELDSMEMO格式 1:GATHER FROM FIELDS LIKE | FIELDS EXCEPT MEMO 3.2 字符函數(shù)字符函數(shù)是指自變量一般是字符型數(shù)據(jù)的函數(shù)。( 1)求字符串長度函數(shù): LEN () 。( 2)大小寫轉(zhuǎn)換函數(shù): LOWER ()、UPPER () 。-WORD格式 - 專業(yè)資料 - 可編輯 -( 3)空格字符串生成函數(shù): SPACE () 。( 4)刪除前后空格函數(shù): TRIM
24、() 、LTRIM() 、ALLTRIM ( )。( 5)取子串函數(shù): LEFT( ,) 、RIGHT( , ) 、 SUBSTR( , ,) 。( 6)計算子串出現(xiàn)次數(shù)函數(shù): OCCURS( ,) 。(7) 求子串位置函數(shù): at ( ,數(shù)值表達式 )ATC( , ,數(shù)值表達式 )。( 8)子串替換函數(shù): STUFF( ,,,)。(9) 字符串匹配函數(shù): LIKE( , )。3.3 程序文件的建立與執(zhí)行( 1)程序文件的擴展名: prg。( 2)命令方式建立、修改程序,格式為: MODIFY COMMAND 。3.4循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)也成為重復(fù)結(jié)構(gòu),指在程序建立過程中,某段代碼被執(zhí)行若干次。支
25、持循環(huán)的語句有: DO WHILE-enddo、FOR-ENDFOR 和 SCAN-ENDSCAN 。3.5 多模塊程序設(shè)計3.5.1 參數(shù)傳遞格式:DO WITH,實參 2, -WORD格式 - 專業(yè)資料 - 可編輯 -或 (,實參 2, )3.5.2 變量的作用域( 1)公共變量:在任何模塊中都可使用的變量成為公共變量。 public(2) 私有變量:在程序中直接使用由系統(tǒng)自動隱含建立的變量都是私有變量。( 3)局部變量:只能在建立它的模塊中使用,不能在上層或下層模塊中使用。 local第四章 Visual FoxPro 數(shù)據(jù)庫及其建立4.1 Visual FoxPro 數(shù)據(jù)庫及其建立4.
26、1.1 在數(shù)據(jù)庫中建立表1.字段名( 1)自由表字段名最長為 10 個字符。( 2)數(shù)據(jù)庫表字段名最長為 128 個字符。( 3)字段名必須以字母、漢字、數(shù)字和下劃線組成( 4)字段名必須以字母或漢字開頭。( 5)字段名不能包含空格。2.字段類型和寬度( 1)字符型 (C):可以是字母、數(shù)字等各種字符型文本。( 2)貨幣型 (Y):貨幣單位,如貨物價格 .寬度 (8)( 3)數(shù)值型 (N):整數(shù)或小數(shù),如訂貨數(shù)量。( 4)整型 (I):由整數(shù)構(gòu)成 寬度 (4)( 5)邏輯型 (L):值為“真”(.T.)或“假”(.F.),表示訂單是否已執(zhí)行完 寬度 (1)( 6)日期型 (D):由年、月、日構(gòu)
27、成的數(shù)據(jù)類型,如訂貨日期寬-WORD格式 - 專業(yè)資料 - 可編輯 -度(8)( 7)日期時間型 (T):年月日時分秒構(gòu)成 寬度 (8)( 8)通用型 (G):存放電子表格或圖片,如照片 寬度 (4)( 9)備注型 (M):不定長的字符 如經(jīng)歷,家庭情況。 寬度 (4)4.1.2 表的基本操作1.NULL :空值 ,指尚未確定的值。在表中用 ctrl+0 輸入 ,在表設(shè)計器中默認值處直接輸入 NULL 但是這 2 種情況均要在表設(shè)計器的 null 上打?qū)μ?.顯示表結(jié)構(gòu): list structure注:表的字段總寬度為各字段寬度之和再加 1(存放邏輯刪除標記)每條記錄的總寬度為各字段寬度之和
28、再加 1,其中多出的一位寬度用來存放表記錄的刪除標記。例:某數(shù)據(jù)表中只包含 1 個日期型字段、 1 個備注型字段和 1 個邏輯型字段則該數(shù)據(jù)表的記錄長度為( B)A、13B、14C、17D 、183.修改記錄: replace 要修改的字段名with 新值 for 條件4.定位記錄指針: go 記錄號locate forcontinue移動記錄指針:skip 數(shù)字首記錄指針: go top尾記錄: go bottom5.物理刪除記錄: pack(只刪除帶邏輯刪除標記的記錄)zap(物理刪除當(dāng)前表中的所有記錄,即清空表)6.恢復(fù)記錄: recall如果要物理刪除當(dāng)前表中的某些記錄,應(yīng)先后使用兩條
29、命令 (C)A、delete、zapB、pack、zapC、delete、packD 、zap、pack7.復(fù)制表結(jié)構(gòu):打開表之后copy structuryto新表名復(fù)制表(包括記錄):Copyto新表名-WORD格式 - 專業(yè)資料 - 可編輯 -定義:規(guī)定了數(shù)據(jù)的類型以及起始和終止的界限定界符字符型定界符:雙引號 單引號 方括號 如:姓名 = 張三 或姓名 = 張三 或姓名 = 張三 類型 日期型定界符 :花括號 + 脫字符 如:出生日期 =1982/09/11邏輯型定界符 :兩個點如:少數(shù)民族否 =.T.婚否 =.F.定義:數(shù)據(jù)庫 (database)是結(jié)構(gòu)化的相關(guān)數(shù)據(jù)集合,用來管理數(shù)據(jù)
30、。(擴展名: .dbc)1.新建:新建數(shù)據(jù)庫新建文件輸入數(shù)據(jù)庫名保存( create database數(shù)據(jù)庫名)8.數(shù)據(jù)庫create database? 彈出創(chuàng)建對話框,提示用戶輸入名字2.打開:文件打開選擇要打開的數(shù)據(jù)庫確定(opendatabase 數(shù)據(jù)庫名 )獨占:exclusive只讀:noupdate共享:shared檢查引用的對象是否合法:validate3.關(guān)閉: closedatabase(后不跟名字)基本操作4.修改: modifydatabase數(shù)據(jù)庫名(同時也是打開數(shù) 據(jù)庫設(shè)計器的命令 ,同 opendatabase區(qū)別開)5.往數(shù)據(jù)庫中添加表: 在數(shù)據(jù)庫空白處右擊添加
31、表選擇要添加的表確定(addtable-WORD格式 - 專業(yè)資料 - 可編輯 -表名)6.從數(shù)據(jù)庫中移去表: 選中要移去的表右擊刪除移去( remove table 表名)7.刪除: deletedatabase 數(shù)據(jù)庫名recycle9.增加記錄的命令( 1)append命令:是在表的尾部增加記錄。( 2)insert 命令:可以在表的任意位置插入新的記錄10.刪除記錄的命令( 1)邏輯刪除的格式為 delete( 2)物理刪除有刪除標記的記錄的命令是 pack( 3)ZAP 命令可以物理刪除表中的全部記錄。11.修改記錄的命令1: replace 字段名 with 新字段值功能 :修改當(dāng)
32、前記錄2: replace all字段名 with 新字段值功能 :修改表中所有記錄3:replace 字段名 with 新字段值for 條件功能 :修改所有符合條件的記錄4.2 索引定義:索引是邏輯排序,不改變表中記錄的物理順序。提高了查詢的速度,但降低了插入、刪除、修改的速度。索引文件的種類:單索引文件 (.idx)、復(fù)合索引文件 (.cdx) 主索引 : 字段值不能重復(fù) , 一個數(shù)據(jù)庫表能建一個索引,自由表不能建立主索引,索引候選索引 : 字段值不能重復(fù),一個表能建多個索引類型唯一索引 : 字段值能重復(fù),一個表能建多個索引普通索引 : 字段值能重復(fù),一個表能建多個索引-WORD格式 -
33、專業(yè)資料 - 可編輯 -索引菜單方式:打開表設(shè)計器,在“字段”選項卡選擇要建立的索引的字段, 在索引項選擇升序或降序,然后切換到 “索引”選項卡,改變類型,確定,是。建立索引Indexon索引表達式tag索引名candidate建立候選索引(重要)命令方式Indexon索引表達式tag索引名unique建立唯一索引Indexon索引表達式tag索引名建立普通索引注意:用 index 命令無法建立主索引。如果在表上建立了主索引或候選索引則不能用insert 命令。打開單項索引的命令: set index to 索引名(了解)。關(guān)閉索引文件的命令: set index to(不跟索引名)(了解)設(shè)
34、置當(dāng)前索引的命令: set order to 索引名(記?。?.3數(shù)據(jù)的完整性1.類型:實體完整性、域完整性、參照完整性(1)實體完整性:保證表中記錄唯一的特性(主索引或侯選索引可以保證實體完整性)( 2)域完整性:(即字段有效性)域:屬性的取值范圍(字段的取值范圍)規(guī)則:字段的取值范圍(邏輯表達式) NOT AND OR 信息:當(dāng)輸入的字段值違背規(guī)則時的提示信息(字符串表達式)-WORD格式 - 專業(yè)資料 - 可編輯 -默認值:指增加新記錄時的值 (隨字段的類型而改變)例:給學(xué)生表的性別字段設(shè)置有效性規(guī)則規(guī)則:性別$ ”男女”信息:”性別必須是男或女,請重新輸入”默認值:”男”設(shè)置過程:打開
35、表設(shè)計器選中要設(shè)有效性規(guī)則的字段設(shè)置規(guī)則、信息、默認值確定是在數(shù)據(jù)庫表上的字段有效性規(guī)則是(A )A) 邏輯表達式B) 字符表達式C)數(shù)字表達式D) 以上 3 種都有可能(3)參照完整性:定義:當(dāng)在一個表中修改、刪除或插入記錄時,通過參照引用相互關(guān)聯(lián)的另一個表檢查本表的操作是否正確設(shè)置過程 :打開數(shù)據(jù)庫建立永久性聯(lián)系 (為一個表建立主索引 (父表 ),另一個表建立普通索引 (子表 ),然后拖動鼠標)關(guān)閉所有打開的表 (clear all)清理數(shù)據(jù)庫 (數(shù)據(jù)庫清理數(shù)據(jù)庫 )編輯參照完整性(單擊右鍵編輯參照完整性)確定是是參照完整性包括:更新規(guī)則、刪除規(guī)則和插入規(guī)則更新規(guī)則 :級聯(lián)修改父表中的關(guān)鍵
36、字值時,若子表有相關(guān)值也會被修改限制修改父表中的關(guān)鍵字值時, 若子表有相關(guān)值則禁止修改父表中的關(guān)鍵字值忽略不做參照完整性檢查刪除規(guī)則 :級聯(lián)刪除父表中的記錄時,若子表有相關(guān)記錄也會被刪除限制刪除父表中的記錄時, 若子表有相關(guān)記錄則禁-WORD格式 - 專業(yè)資料 - 可編輯 -止刪除父表中的記錄忽略不做參照完整性檢查插入規(guī)則 :限制在子表中插入一個新記錄或更新已存在的記錄時,若父表中不存在相匹配的關(guān)鍵字值則禁止插入或更新忽略不做參照完整性檢查4.4自由表自由表是不屬于任何數(shù)據(jù)庫的表,數(shù)據(jù)庫的特點有: 可使用長表名,在表中可以使用長字段名。 可為數(shù)據(jù)庫表中的字段指定標題和添加注釋。 可為數(shù)據(jù)庫表的
37、字段指定默認值和輸入掩碼。 數(shù)據(jù)庫的字段有默認的控件類。 可為數(shù)據(jù)庫表規(guī)定字段級規(guī)則和記錄級規(guī)則。 支持主關(guān)鍵字、參照完整性和表之間的聯(lián)系。 支持 INSERT、UPDATE 和 DELETE 事件的觸發(fā)器。4.5 工作區(qū)工作區(qū)在同一時刻最多可打開 32767個表( 32767個工作區(qū)) select 0是選擇了編號最小的空閑工作區(qū)可以在 use命令中用 alias短語指定別名:use 學(xué)生 in 1 alias student 第五章 關(guān)系數(shù)據(jù)庫標準語言 SQL5.1查詢功能5.1.1簡單查詢與簡單鏈接查詢SQL 的核心是查詢, 基本形式由 select-from-where查詢塊組成, 多
38、個查詢塊可嵌套執(zhí)行。-WORD格式 - 專業(yè)資料 - 可編輯 - select說明要查詢的數(shù)據(jù)。 from 說明要查詢的數(shù)據(jù)來自哪個或那些表。 Where說明查詢條件,即選擇元組的條件。 Group by 短語用于對查詢結(jié)果進行分組。 Having 短語用于限定分組必須滿足的條件。 Order by 短語用于對查詢的結(jié)果進行排序。簡單查詢是由 select 和 from 短語構(gòu)成的無條件查詢,或由select、from 和 where短語構(gòu)成的條件查詢。連接是關(guān)系的基本操作之一,連接查詢是一種基于多個關(guān)系的查詢。5.1.2嵌套查詢與集合的并運算( 1)嵌套查詢:可使用謂詞 in 或 not i
39、n 來判斷在外層的查詢條件中是否包含內(nèi)層查詢的結(jié)果。( 2)集合的并運算: SQL 支持集合的并( union)運算,既可以將兩個 select語句的查詢結(jié)果通過并運算合并成一個查詢結(jié)果。5.1.3幾個特殊運算符與排序1.between and表示該查詢的條件是“在。 。和。之間”,相當(dāng)于用 and 連接的一個邏輯表達式。2.like一個字符串匹配運算符,通配符“ %”表示 0 個或多個字符,通配符“ _”表示一個字符。3.排序格式 :order by可以按升序( ASC)也可降序( DESC)排序。-WORD格式 - 專業(yè)資料 - 可編輯 -5.1.4簡單的計算查詢與分組計算查詢用于計算檢索
40、的函數(shù)有 count(計算)、sum(求和)、avg(計算平均值)、max(求最大值),以及 min(求最小值)??衫?group by 子句進行分組計算查詢,格式為: GROUIP BY GroupColumnHAVING Filter-Condition5.1.5利用空值查詢、使用量詞和謂詞的查詢及SQL SELECT 的幾個特殊選項1.利用空值查詢查詢空值時使用is null。exists 或 not exists 只是判斷子查詢中是否有結(jié)果返回(即存在或不存在元組 )any 和 sum 是同義詞,只要在子查詢中有一行能使結(jié)果為真,則結(jié)果就為真。(等價: min()all 要求所有的行
41、都使結(jié)果為真,則結(jié)果為真。 (等價: max() 1.select * from 倉庫 where 倉庫號 in (select 倉庫號 from 職工 ) 等價 : select * from 倉庫 where exists(select * from職工 where 倉庫號=倉庫 .倉庫號 )2.select distinct 倉庫號from 職工 where 工資 = (select min(工資 )from 職工 where 倉庫號 = WH1)等價 : select distinct 倉庫號 from 職工 where 工資 =any (select 工資 from 職工 where
42、 倉庫號 = WH1)3.select distinct 倉庫號from 職工 where 工資 = (select max(工資 )from 職工 where 倉庫號 = WH1)等價 : select distinct 倉庫號 from 職工 where 工資 =all(select 工資 from 職工 where 倉庫號 = WH1)-WORD格式 - 專業(yè)資料 - 可編輯 -超連接查詢 :普通連接 :innerjoin等價于join左連接 :leftjoin右連接 :rightjoin全連接 :fulljoinSelet 倉庫 .倉庫號 ,城市 ,面積 ,職工號 ,工資 from 倉
43、庫 ,職工 where 倉庫 .倉庫號 = 職工 .倉庫號 and 條件等價:Selet 倉庫 .倉庫號 ,城市 ,面積 ,職工號 ,工資 from 倉庫 join 職工 on 倉庫 .倉庫號 = 職工 .倉庫號 wher 條件集合的并運算 格式:union 功能:將兩個查詢結(jié)果合并成一個查詢結(jié)果只顯示前幾項記錄top 數(shù)字 percent 字段名將查詢結(jié)果存放到數(shù)組中into array 數(shù)組名將查詢結(jié)果存放在臨時表中into cursor 表名將查詢結(jié)果存放到永久表中into table 表名等價: intodbf表名將查詢結(jié)果存放到文本文件中to file 文本文件5.1.6SQL 是結(jié)
44、構(gòu)化查詢語言(Structured Query Language)的縮寫。 SQL 語言特點:一體化語言、 高度費過程化語言、 非常簡潔、即可用命令方式也可用程序方式使用。SOL 功能:數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操作、數(shù)據(jù)控制,但 VF 只有前三個功能,既無數(shù)據(jù)控制。數(shù)據(jù)查詢: select數(shù)據(jù)定義: creat、drop、alter數(shù)據(jù)操作: insert、update、deleteSOL 語言的核心是:查詢SOL 基本形式: selectfromwhereSOL查詢語句Select 字段名 1,字段名 2,字段名 3,from 表名 1,表名2,表名 3 ;-WORD格式 - 專業(yè)資料 -
45、可編輯 -where 條件 and 表名 1.公共字段名 = 表名 2.公共字段名 =表名 3.公共字段名group by 字段名 1,字段名 2 having 分組條件order by 字段名 1 desc,字段名 2 into table表名distinct 去掉重復(fù)值in 是屬于的意思, 相當(dāng)于集合運算符between。and。(在。之間)like:字符串匹配運算符5.2操作功能插入: insert into 表名 (字段名 1,字段名 2) values(字段值 1,字段值 2)部分插入insert into 表名 values(字段值 1,字段值 2)完全插入操作insertinto
46、 表名 fromarray 數(shù)組名功能使用 SQL 語句將一條新的記錄插入學(xué)院表。Insertinto 學(xué)院 (系號 ,系名 )values (04 ,計算機 )更新: update表名 set 要修改的字段名 = 新值 where條件使用 SQL 語句完成以下操作 (將所有教授的工資提高 5%) update 教師 SET 工資 = 工資 * 1.05 where 職稱 = 教授 刪除: deletefrom表名 where 條件邏輯刪除成績表中總分在240 分以下的學(xué)生記錄deletefrom 成績表 WHERE 總分 =1000 and 工資=2000 error 工資的范圍在 1000
47、 到 2000 之間 default1500,foreign key 倉庫 號tag 倉 庫 號reference 倉庫表 1)定義常用詞:主索引:primarykey規(guī)則:check信息: error默認值: default功刪除表: drop table 表名(物理刪除)能增加字段:alter table 表名 add column 字段名類 型 ( 寬 度 )check 規(guī) 則 error 提示 信 息 default 默認值增加字段修改字段類型:alter table 表名altercolumn 字段名類型(寬度)重命名字段名: alter table 表名 rename column原字段名to 新名刪除不用字段: alter table 表
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 通信行業(yè)保安工作總結(jié)
- 咖啡店銷售員銷售工作總結(jié)
- 礦業(yè)工程師礦產(chǎn)開采管理
- 食品飲料行業(yè)美工工作總結(jié)
- 《熱卷板產(chǎn)品介紹》課件
- 2021年四川省成都市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2021年湖南省益陽市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2021年河南省許昌市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 《婚姻家庭繼承法》課件
- 電視臺新年新春團拜會及廣告詞選用資料
- 天全縣儲備林建設(shè)項目施工組織設(shè)計樣本
- 礦權(quán)收儲方案
- 2022-2023學(xué)年重慶市渝北區(qū)人教PEP版五年級上冊期末英語試卷
- 安徽省合肥市廬江縣2022-2023學(xué)年八年級上學(xué)期期末物理試卷(含答案)
- 造價年度工作總結(jié)
- 護理人員應(yīng)急預(yù)案培訓(xùn)課件:居家病人護理與應(yīng)急服務(wù)
- 液壓與氣動傳動CAI第1章
- 廣告?zhèn)髅叫袠I(yè)操作人員安全培訓(xùn)
- ICU呼吸系統(tǒng)護理的專業(yè)技巧與注意事項
- 藝術(shù)類院校加強藝術(shù)法教育的思考
- 銀行商會戰(zhàn)略合作協(xié)議書
評論
0/150
提交評論