




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第第3章章Visual FoxPro基本操作基本操作及其預(yù)備知識及其預(yù)備知識3.1Visual FoxPro工作方式工作方式3.2數(shù)據(jù)類型數(shù)據(jù)類型3.3數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)3.4函數(shù)函數(shù)3.5表達(dá)式表達(dá)式習(xí)題習(xí)題 Visual FoxPro數(shù)據(jù)庫管理系統(tǒng)是進(jìn)行數(shù)據(jù)處理的強(qiáng)數(shù)據(jù)庫管理系統(tǒng)是進(jìn)行數(shù)據(jù)處理的強(qiáng)有力工具。它不僅用戶界面友好,而且工作方式多有力工具。它不僅用戶界面友好,而且工作方式多樣化,用戶可以根據(jù)自己對系統(tǒng)知識的掌握程度,樣化,用戶可以根據(jù)自己對系統(tǒng)知識的掌握程度,選擇合適的工作方式。選擇合適的工作方式。Visual FoxPro數(shù)據(jù)庫管理系數(shù)據(jù)庫管理系統(tǒng)還提供了多種數(shù)據(jù)的類型,并可以將
2、其存放在各統(tǒng)還提供了多種數(shù)據(jù)的類型,并可以將其存放在各種類型的數(shù)據(jù)容器中。本章將主要介紹種類型的數(shù)據(jù)容器中。本章將主要介紹Visual FoxPro系統(tǒng)的工作方式,數(shù)據(jù)類型、數(shù)據(jù)的存儲(chǔ)方系統(tǒng)的工作方式,數(shù)據(jù)類型、數(shù)據(jù)的存儲(chǔ)方式及各種類型的表達(dá)式。式及各種類型的表達(dá)式。 3.1 Visual FoxPro工作方式工作方式 Visual FoxPro不但擁有大量的交互式數(shù)據(jù)庫管理工具,不但擁有大量的交互式數(shù)據(jù)庫管理工具,而且還有一整套功能完善的程序語言系統(tǒng)及面向?qū)ο蠖疫€有一整套功能完善的程序語言系統(tǒng)及面向?qū)ο罂梢暬绦蚓帉懝ぞ摺榇耍梢暬绦蚓帉懝ぞ摺榇耍琕isual FoxPro系統(tǒng)給用系
3、統(tǒng)給用戶提供了三種工作方式:戶提供了三種工作方式: 命令方式、菜單方式及程序命令方式、菜單方式及程序文件方式。文件方式。 1. 命令方式命令方式 命令方式是通過用戶在命令窗口輸入操作命令,立即命令方式是通過用戶在命令窗口輸入操作命令,立即執(zhí)行操作的交互式工作方式。執(zhí)行操作的交互式工作方式。 在命令窗口中,可以輸入單個(gè)的操作命令和系統(tǒng)命令,在命令窗口中,可以輸入單個(gè)的操作命令和系統(tǒng)命令,從而完成對數(shù)據(jù)庫的操作管理,系統(tǒng)程序的設(shè)計(jì),各從而完成對數(shù)據(jù)庫的操作管理,系統(tǒng)程序的設(shè)計(jì),各種對象的創(chuàng)建和維護(hù),以及系統(tǒng)環(huán)境的設(shè)置等。命令種對象的創(chuàng)建和維護(hù),以及系統(tǒng)環(huán)境的設(shè)置等。命令窗口不僅是窗口不僅是Visu
4、al FoxPro命令的執(zhí)行窗口,也是命令的執(zhí)行窗口,也是Visual FoxPro命令文件的編輯窗口。命令文件的編輯窗口。 如果用戶比較熟悉如果用戶比較熟悉Visual FoxPro系統(tǒng)命令及數(shù)據(jù)庫操系統(tǒng)命令及數(shù)據(jù)庫操作命令,用命令方式要比菜單方式來得更方便快捷。作命令,用命令方式要比菜單方式來得更方便快捷。但是,由于但是,由于Visual FoxPro系統(tǒng)命令格式較為復(fù)雜,命系統(tǒng)命令格式較為復(fù)雜,命令種類繁多,初學(xué)者難于掌握,可考慮采用菜單方式。令種類繁多,初學(xué)者難于掌握,可考慮采用菜單方式。2. 菜單方式菜單方式 菜單方式是用戶通過對系統(tǒng)菜單提供的菜單選項(xiàng)選擇,菜單方式是用戶通過對系統(tǒng)菜
5、單提供的菜單選項(xiàng)選擇,完成對數(shù)據(jù)庫的操作管理,系統(tǒng)程序的設(shè)計(jì),各種對完成對數(shù)據(jù)庫的操作管理,系統(tǒng)程序的設(shè)計(jì),各種對象的創(chuàng)建和維護(hù),以及系統(tǒng)環(huán)境設(shè)置的操作。象的創(chuàng)建和維護(hù),以及系統(tǒng)環(huán)境設(shè)置的操作。 菜單方式也是一種交互式工作方式,只要選擇一個(gè)菜菜單方式也是一種交互式工作方式,只要選擇一個(gè)菜單選項(xiàng),系統(tǒng)便完成一個(gè)對應(yīng)的操作。這種直觀、簡單選項(xiàng),系統(tǒng)便完成一個(gè)對應(yīng)的操作。這種直觀、簡捷的界面操作,不要求熟悉操作命令,只要能夠把握捷的界面操作,不要求熟悉操作命令,只要能夠把握操作流程,選擇合適的菜單選項(xiàng),就能夠完成操作任操作流程,選擇合適的菜單選項(xiàng),就能夠完成操作任務(wù)。務(wù)。 菜單方式比命令方式容易掌握
6、,即學(xué)即會(huì),但其操菜單方式比命令方式容易掌握,即學(xué)即會(huì),但其操作步驟過多,執(zhí)行任務(wù)的時(shí)間長。建議對于一些經(jīng)作步驟過多,執(zhí)行任務(wù)的時(shí)間長。建議對于一些經(jīng)常性的操作,還是使用命令方式進(jìn)行更妥。常性的操作,還是使用命令方式進(jìn)行更妥。3. 程序文件方式程序文件方式 程序文件程序文件(簡稱程序簡稱程序)是為解決某一特定問題命令序是為解決某一特定問題命令序列的集合。因此,程序文件又稱為命令文件,程序列的集合。因此,程序文件又稱為命令文件,程序文件方式也稱為命令文件方式。文件方式也稱為命令文件方式。 程序文件方式先通過程序文件編輯工具,將對數(shù)據(jù)程序文件方式先通過程序文件編輯工具,將對數(shù)據(jù)庫進(jìn)行各種操作管理的
7、命令或?qū)ο到y(tǒng)環(huán)境進(jìn)行設(shè)置庫進(jìn)行各種操作管理的命令或?qū)ο到y(tǒng)環(huán)境進(jìn)行設(shè)置的命令,集中在一個(gè)以的命令,集中在一個(gè)以(.PRG)為擴(kuò)展名的程序文件為擴(kuò)展名的程序文件中;然后,通過菜單方式,或命令方式,或程序文中;然后,通過菜單方式,或命令方式,或程序文件方式運(yùn)行這一程序文件;最后,系統(tǒng)將根據(jù)程序件方式運(yùn)行這一程序文件;最后,系統(tǒng)將根據(jù)程序文件中的每一個(gè)命令完成操作任務(wù)。文件中的每一個(gè)命令完成操作任務(wù)。 用程序文件方式進(jìn)行數(shù)據(jù)庫管理,是把許多操作命用程序文件方式進(jìn)行數(shù)據(jù)庫管理,是把許多操作命令集中使用,不僅運(yùn)行效率高,還可重復(fù)操作。但令集中使用,不僅運(yùn)行效率高,還可重復(fù)操作。但是,若想編寫一個(gè)解決實(shí)際問
8、題的應(yīng)用程序,不是是,若想編寫一個(gè)解決實(shí)際問題的應(yīng)用程序,不是一日之功,需要對一日之功,需要對Visual FoxPro命令和語句進(jìn)行系命令和語句進(jìn)行系統(tǒng)地學(xué)習(xí),同時(shí)還要掌握一定的程序設(shè)計(jì)方法。統(tǒng)地學(xué)習(xí),同時(shí)還要掌握一定的程序設(shè)計(jì)方法。 有關(guān)程序設(shè)計(jì)的方法將在后續(xù)的各章節(jié)分別介紹。有關(guān)程序設(shè)計(jì)的方法將在后續(xù)的各章節(jié)分別介紹。3.2 數(shù)據(jù)類型數(shù)據(jù)類型 數(shù)據(jù)是反映客觀事物屬性的記錄,它的類型決定了數(shù)據(jù)是反映客觀事物屬性的記錄,它的類型決定了其存儲(chǔ)和使用方式。在許多軟件環(huán)境下,數(shù)據(jù)通常其存儲(chǔ)和使用方式。在許多軟件環(huán)境下,數(shù)據(jù)通常分為數(shù)值型和字符型兩種基本類型,分為數(shù)值型和字符型兩種基本類型,Visu
9、al FoxPro系統(tǒng)為了使用戶建立和使用數(shù)據(jù)庫更加方便,除了系統(tǒng)為了使用戶建立和使用數(shù)據(jù)庫更加方便,除了上述兩種數(shù)據(jù)類型外,又細(xì)化分出了更多的類型。上述兩種數(shù)據(jù)類型外,又細(xì)化分出了更多的類型。 1. 數(shù)值型數(shù)據(jù)數(shù)值型數(shù)據(jù) 數(shù)值型數(shù)據(jù)是由數(shù)字?jǐn)?shù)值型數(shù)據(jù)是由數(shù)字(09)、小數(shù)點(diǎn)和正負(fù)號組成、小數(shù)點(diǎn)和正負(fù)號組成的。的。 數(shù)值型數(shù)據(jù)由于表達(dá)或存儲(chǔ)形式的不同,又被分為數(shù)值型數(shù)據(jù)由于表達(dá)或存儲(chǔ)形式的不同,又被分為數(shù)值型數(shù)值型(numeric)、浮點(diǎn)型、浮點(diǎn)型(float)、雙精度型、雙精度型(double)和整型和整型(integer)。2. 字符型數(shù)據(jù)字符型數(shù)據(jù) 字符型數(shù)據(jù)字符型數(shù)據(jù)(characte
10、r)描述的是不具有計(jì)算能力的描述的是不具有計(jì)算能力的文字?jǐn)?shù)據(jù)類型,是最常用的數(shù)據(jù)類型之一。字符型文字?jǐn)?shù)據(jù)類型,是最常用的數(shù)據(jù)類型之一。字符型數(shù)據(jù)是由漢字和數(shù)據(jù)是由漢字和ASCII字符集中可打印字符字符集中可打印字符(英文字英文字符、數(shù)字字符、空格及其他專用字符符、數(shù)字字符、空格及其他專用字符)組成的。組成的。 字符型數(shù)據(jù)的最大長度為字符型數(shù)據(jù)的最大長度為254個(gè)字符。個(gè)字符。3. 日期型日期型 日期型數(shù)據(jù)日期型數(shù)據(jù)(date)是用于表示日期的數(shù)據(jù)。是用于表示日期的數(shù)據(jù)。 其常規(guī)的輸出格式為其常規(guī)的輸出格式為 mm/dd/yy。其中:。其中:mm代表代表月,月,dd代表日,代表日,yy代表年。代
11、表年。 長度固定為長度固定為8位。位。4. 日期時(shí)間型日期時(shí)間型 日期時(shí)間型數(shù)據(jù)日期時(shí)間型數(shù)據(jù)(date time)是描述日期和時(shí)間的數(shù)是描述日期和時(shí)間的數(shù)據(jù)。據(jù)。 其常規(guī)的輸出格式為其常規(guī)的輸出格式為 mm/dd/yy hh:mm:ss。 其中:其中:yy代表年代表年,前兩個(gè)前兩個(gè)mm代表月,代表月,dd代表日,代表日,hh代表小時(shí)代表小時(shí),后兩個(gè)后兩個(gè)mm代表分,代表分,ss代表秒。代表秒。 長度固定為長度固定為8位。位。5. 邏輯型邏輯型 邏輯型數(shù)據(jù)邏輯型數(shù)據(jù)(logic)是描述客觀事物真假的數(shù)據(jù),用是描述客觀事物真假的數(shù)據(jù),用于表示邏輯判斷結(jié)果。于表示邏輯判斷結(jié)果。 邏輯型數(shù)據(jù)只有真邏
12、輯型數(shù)據(jù)只有真(.T.或或.Y.)和假和假(.F.或或.N.)兩種值。兩種值。 長度固定為長度固定為1位。位。6. 備注型備注型 備注型數(shù)據(jù)備注型數(shù)據(jù)(memo)是用于存放較長的字符型數(shù)據(jù)是用于存放較長的字符型數(shù)據(jù)的數(shù)據(jù)類型。的數(shù)據(jù)類型。 備注型數(shù)據(jù)是字符型數(shù)據(jù)的特殊形式,備注型數(shù)據(jù)備注型數(shù)據(jù)是字符型數(shù)據(jù)的特殊形式,備注型數(shù)據(jù)沒有數(shù)據(jù)長度限制,僅受限于現(xiàn)有的磁盤空間。它沒有數(shù)據(jù)長度限制,僅受限于現(xiàn)有的磁盤空間。它只用于數(shù)據(jù)表中的字段類型的定義,其字段長度固只用于數(shù)據(jù)表中的字段類型的定義,其字段長度固定為定為4位,而實(shí)際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名位,而實(shí)際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名的備注文件
13、中,長度根據(jù)數(shù)據(jù)的內(nèi)容而定。的備注文件中,長度根據(jù)數(shù)據(jù)的內(nèi)容而定。7. 通用型通用型 通用型數(shù)據(jù)通用型數(shù)據(jù)(general)是用于存儲(chǔ)是用于存儲(chǔ)OLE對象的數(shù)據(jù)。對象的數(shù)據(jù)。 通用型數(shù)據(jù)中的通用型數(shù)據(jù)中的OLE對象可以是電子表格、文檔、對象可以是電子表格、文檔、圖片等。圖片等。OLE對象的實(shí)際內(nèi)容、類型和數(shù)據(jù)量取決對象的實(shí)際內(nèi)容、類型和數(shù)據(jù)量取決于連接或嵌入于連接或嵌入OLE對象的操作方式。如果采用對象的操作方式。如果采用連接連接OLE對象方式,則數(shù)據(jù)表中只包含對對象方式,則數(shù)據(jù)表中只包含對OLE對對象的引用說明,以及對創(chuàng)建該象的引用說明,以及對創(chuàng)建該OLE對象的應(yīng)用程序?qū)ο蟮膽?yīng)用程序的引用說
14、明;如果采用嵌入的引用說明;如果采用嵌入OLE對象方式,則數(shù)據(jù)對象方式,則數(shù)據(jù)表中除包含對表中除包含對OLE對象的引用說明及對創(chuàng)建該對象的引用說明及對創(chuàng)建該OLE對象的應(yīng)用程序的引用說明外,還包含對象的應(yīng)用程序的引用說明外,還包含OLE對象中的實(shí)際數(shù)據(jù)。對象中的實(shí)際數(shù)據(jù)。 通用型數(shù)據(jù)只用于數(shù)據(jù)表中的字段類型的定義。其通用型數(shù)據(jù)只用于數(shù)據(jù)表中的字段類型的定義。其長度固定為長度固定為4位,實(shí)際數(shù)據(jù)長度僅受限于現(xiàn)有的磁位,實(shí)際數(shù)據(jù)長度僅受限于現(xiàn)有的磁盤空間。盤空間。3.3 數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ) 數(shù)據(jù)輸入、輸出是通過數(shù)據(jù)的存儲(chǔ)設(shè)備完成的。通數(shù)據(jù)輸入、輸出是通過數(shù)據(jù)的存儲(chǔ)設(shè)備完成的。通常都是將數(shù)據(jù)存入到常量
15、、變量、數(shù)組中,而在數(shù)常都是將數(shù)據(jù)存入到常量、變量、數(shù)組中,而在數(shù)據(jù)庫系統(tǒng)環(huán)境下,還可以把數(shù)據(jù)存入到字段、記錄據(jù)庫系統(tǒng)環(huán)境下,還可以把數(shù)據(jù)存入到字段、記錄和對象中。我們把這些供數(shù)據(jù)存儲(chǔ)的常量、變量、和對象中。我們把這些供數(shù)據(jù)存儲(chǔ)的常量、變量、數(shù)組、字段、記錄和對象統(tǒng)稱為數(shù)據(jù)存儲(chǔ)容器。數(shù)組、字段、記錄和對象統(tǒng)稱為數(shù)據(jù)存儲(chǔ)容器。 對數(shù)據(jù)進(jìn)行加工處理時(shí),數(shù)據(jù)存儲(chǔ)容器的不同,決對數(shù)據(jù)進(jìn)行加工處理時(shí),數(shù)據(jù)存儲(chǔ)容器的不同,決定了數(shù)據(jù)的類型和使用方法的不同,同時(shí)也限定了定了數(shù)據(jù)的類型和使用方法的不同,同時(shí)也限定了數(shù)據(jù)的使用范圍。以下我們介紹常用的幾種數(shù)據(jù)存數(shù)據(jù)的使用范圍。以下我們介紹常用的幾種數(shù)據(jù)存儲(chǔ)容器。
16、儲(chǔ)容器。 3.3.1 常量常量 常量是一個(gè)命名的數(shù)據(jù)項(xiàng),是在命令或程序中直接常量是一個(gè)命名的數(shù)據(jù)項(xiàng),是在命令或程序中直接引用的實(shí)際值,其特征是它在所有的操作中其值不引用的實(shí)際值,其特征是它在所有的操作中其值不變。變。 常量有數(shù)值型、浮點(diǎn)型、字符型、邏輯型、日期型常量有數(shù)值型、浮點(diǎn)型、字符型、邏輯型、日期型和時(shí)間日期型六種。和時(shí)間日期型六種。 1. 數(shù)值型常量數(shù)值型常量 由數(shù)字由數(shù)字(09)、小數(shù)點(diǎn)和正負(fù)號組成。、小數(shù)點(diǎn)和正負(fù)號組成。 如:如: 8713.25 -12368 +3325.67 2. 浮點(diǎn)型常量浮點(diǎn)型常量 由數(shù)字由數(shù)字(09)、小數(shù)點(diǎn)和正負(fù)號組成的浮點(diǎn)格式。、小數(shù)點(diǎn)和正負(fù)號組成的浮
17、點(diǎn)格式。 如:如: -987e+15 +123456e-793. 字符型常量字符型常量 由漢字和由漢字和ASCII字符集中可打印字符組成,并由定字符集中可打印字符組成,并由定界符界符(“ ”、 、 )括起來的字符串。括起來的字符串。 如:如: “STRING”“數(shù)據(jù)庫的應(yīng)用系統(tǒng)數(shù)據(jù)庫的應(yīng)用系統(tǒng)”4. 邏輯型常量邏輯型常量 由表示邏輯判斷結(jié)果的由表示邏輯判斷結(jié)果的“.T.”或或“.F.”符號組成。符號組成。 如:如: .t. 或或 .T.f.或或 .F.5. 日期常量日期常量 由按其常規(guī)的輸入格式由按其常規(guī)的輸入格式 yyyy/mm/dd表示的符號表示的符號組成。組成。 如:如: 2000/12
18、/202000/01/016. 時(shí)間日期型常量時(shí)間日期型常量 由按其常規(guī)的輸入格式由按其常規(guī)的輸入格式 yyyy/mm/dd hh:mm:ss表示的符號組成。表示的符號組成。 如:如: 2000/12/12 11:50:003.3.2 內(nèi)存變量內(nèi)存變量 內(nèi)存變量是一般意義下的簡單變量。每一個(gè)內(nèi)存變內(nèi)存變量是一般意義下的簡單變量。每一個(gè)內(nèi)存變量都必須有一個(gè)固定的名稱,以標(biāo)識它在該內(nèi)存單量都必須有一個(gè)固定的名稱,以標(biāo)識它在該內(nèi)存單元的存儲(chǔ)位置,用戶可以通過變量標(biāo)識符來存取常元的存儲(chǔ)位置,用戶可以通過變量標(biāo)識符來存取常量。量。 1. 內(nèi)存變量的命名內(nèi)存變量的命名 內(nèi)存變量名是由字母、數(shù)字和下劃線組成
19、的,不能內(nèi)存變量名是由字母、數(shù)字和下劃線組成的,不能與與Visual FoxPro系統(tǒng)提供的命令、語句專用符號系統(tǒng)提供的命令、語句專用符號相同,也不能和相同,也不能和Visual FoxPro系統(tǒng)提供的函數(shù)名同系統(tǒng)提供的函數(shù)名同名。名。 如果內(nèi)存變量與數(shù)據(jù)表中的字段變量同名時(shí),用戶如果內(nèi)存變量與數(shù)據(jù)表中的字段變量同名時(shí),用戶在引用內(nèi)存變量時(shí),要在其名字前加一個(gè)前綴在引用內(nèi)存變量時(shí),要在其名字前加一個(gè)前綴(m.),用以強(qiáng)調(diào)這一變量是內(nèi)存變量。用以強(qiáng)調(diào)這一變量是內(nèi)存變量。2. 內(nèi)存變量的類型內(nèi)存變量的類型 用戶可以根據(jù)需要定義內(nèi)存變量類型,它的類型取用戶可以根據(jù)需要定義內(nèi)存變量類型,它的類型取決于
20、首次接受的常量的類型。也就是說,內(nèi)存變量決于首次接受的常量的類型。也就是說,內(nèi)存變量類型的定義是通過賦值語句來完成的。類型的定義是通過賦值語句來完成的。 內(nèi)存變量的類型有數(shù)值型、浮點(diǎn)型、字符型、邏輯內(nèi)存變量的類型有數(shù)值型、浮點(diǎn)型、字符型、邏輯型、日期型、時(shí)間日期型六種。型、日期型、時(shí)間日期型六種。3. 內(nèi)存變量的賦值內(nèi)存變量的賦值 內(nèi)存變量是內(nèi)存中的臨時(shí)存儲(chǔ)單元,在程序的執(zhí)行內(nèi)存變量是內(nèi)存中的臨時(shí)存儲(chǔ)單元,在程序的執(zhí)行過程中,可以用來保留中間結(jié)果和最后結(jié)果,或用過程中,可以用來保留中間結(jié)果和最后結(jié)果,或用來保留對數(shù)據(jù)庫進(jìn)行某種分析處理后得到的結(jié)果。來保留對數(shù)據(jù)庫進(jìn)行某種分析處理后得到的結(jié)果。
21、給內(nèi)存變量的賦值的命令有給內(nèi)存變量的賦值的命令有STORE和和“=”。 STORE 命令格式:命令格式: STORE 表達(dá)式表達(dá)式 TO 內(nèi)存變量表內(nèi)存變量表 命令功能:命令功能: 先計(jì)算表達(dá)式的值,然后將該值先計(jì)算表達(dá)式的值,然后將該值賦給內(nèi)存變量表中每一個(gè)變量。賦給內(nèi)存變量表中每一個(gè)變量。 “=”命令格式:命令格式: 內(nèi)存變量內(nèi)存變量=表達(dá)式表達(dá)式 命令功能:命令功能: 先計(jì)算表達(dá)式的值,然后將該值先計(jì)算表達(dá)式的值,然后將該值賦給以內(nèi)存變量為名的內(nèi)存變量。賦給以內(nèi)存變量為名的內(nèi)存變量。 特別要注意,除非用內(nèi)存變量文件來保存內(nèi)存變量特別要注意,除非用內(nèi)存變量文件來保存內(nèi)存變量值,否則,當(dāng)退出
22、值,否則,當(dāng)退出Visual FoxPro系統(tǒng)后,內(nèi)存變量系統(tǒng)后,內(nèi)存變量的值也會(huì)與系統(tǒng)一起消失。的值也會(huì)與系統(tǒng)一起消失。 例例3.1給內(nèi)存變量給內(nèi)存變量A1,A2賦值。賦值。 A1=123+456 STOREVisual FoxProTOA24. 內(nèi)存變量值的輸出內(nèi)存變量值的輸出 輸出內(nèi)存變量值可以使用輸出內(nèi)存變量值可以使用“?”命令。命令。 “?”命令的格式:命令的格式: ? 表達(dá)式表達(dá)式 命令功能:命令功能: 先計(jì)算表達(dá)式的值,然后將該值先計(jì)算表達(dá)式的值,然后將該值輸出到顯示器上。輸出到顯示器上。 例例3.2輸出內(nèi)存變量輸出內(nèi)存變量A1,A2的值。的值。 ? A1 ? A2 + 系統(tǒng)系統(tǒng)
23、5. 內(nèi)存變量的清除內(nèi)存變量的清除 在系統(tǒng)程序開始運(yùn)行時(shí),或程序運(yùn)行過程中,經(jīng)常在系統(tǒng)程序開始運(yùn)行時(shí),或程序運(yùn)行過程中,經(jīng)常對內(nèi)存變量進(jìn)行清理,會(huì)提高程序的運(yùn)行速度和質(zhì)對內(nèi)存變量進(jìn)行清理,會(huì)提高程序的運(yùn)行速度和質(zhì)量。量。 使用使用RELEASE命令可以清除不再使用的內(nèi)存變量命令可以清除不再使用的內(nèi)存變量或所有內(nèi)存變量。或所有內(nèi)存變量。 RELEASE命令格式:命令格式: RELEASE 內(nèi)存變量表內(nèi)存變量表 ALL 命令功能:命令功能: 從內(nèi)存中清除指定的內(nèi)存變量。從內(nèi)存中清除指定的內(nèi)存變量。 例例3.3清除清除A1,A2兩個(gè)內(nèi)存變量。兩個(gè)內(nèi)存變量。 RELEASE A1,A2 例例3.4清除
24、所有的內(nèi)存變量。清除所有的內(nèi)存變量。 RELEASE ALL6. 內(nèi)存變量的作用域內(nèi)存變量的作用域 內(nèi)存變量的作用域就是它的作用范圍。根據(jù)內(nèi)存變內(nèi)存變量的作用域就是它的作用范圍。根據(jù)內(nèi)存變量的作用范圍分為全局變量、局部變量和本地變量。量的作用范圍分為全局變量、局部變量和本地變量。 使用使用LOCAL、PRIVATE、PUBLIC命令可以定義命令可以定義內(nèi)存變量的作用域,也可以使用系統(tǒng)默認(rèn)的范圍作內(nèi)存變量的作用域,也可以使用系統(tǒng)默認(rèn)的范圍作為內(nèi)存變量的作用域。為內(nèi)存變量的作用域。(1) 定義全局變量定義全局變量 用用PUBLIC命令定義的內(nèi)存變量,可視為全局變量。命令定義的內(nèi)存變量,可視為全局變
25、量。 全局變量在全部程序、過程和自定義函數(shù),以及它全局變量在全部程序、過程和自定義函數(shù),以及它所調(diào)用的程序、過程和自定義函數(shù)中都有效。即使所調(diào)用的程序、過程和自定義函數(shù)中都有效。即使整個(gè)程序結(jié)束,全局變量也不被釋放,它們的值仍整個(gè)程序結(jié)束,全局變量也不被釋放,它們的值仍然保存在內(nèi)存中。如要釋放,要用然保存在內(nèi)存中。如要釋放,要用RELEASE命令命令進(jìn)行操作。進(jìn)行操作。 全局變量必須先定義,后賦值。已經(jīng)定義成全局變?nèi)肿兞勘仨毾榷x,后賦值。已經(jīng)定義成全局變量的內(nèi)存變量,還可以在下級程序中進(jìn)一步定義成量的內(nèi)存變量,還可以在下級程序中進(jìn)一步定義成局部變量。但已經(jīng)定義成局部變量的內(nèi)存變量,卻局部變
26、量。但已經(jīng)定義成局部變量的內(nèi)存變量,卻不可以再定義成全局變量。除了在程序中將內(nèi)存變不可以再定義成全局變量。除了在程序中將內(nèi)存變量定義成全局變量外,在命令窗口使用的所有內(nèi)存量定義成全局變量外,在命令窗口使用的所有內(nèi)存變量都視為全局變量。變量都視為全局變量。PUBLIC命令格式:命令格式:PUBLIC內(nèi)存變量表內(nèi)存變量表 命令功能:命令功能: 定義內(nèi)存變量表中指定的內(nèi)存變定義內(nèi)存變量表中指定的內(nèi)存變量為全局變量。量為全局變量。 例例3.5定義定義P1,P2為全局變量。為全局變量。PUBLIC P1,P2(2) 定義局部變量定義局部變量 用用PRIVATE命令定義的內(nèi)存變量,可視為局部變命令定義的內(nèi)
27、存變量,可視為局部變量。量。 局部變量在定義它的程序,以及被該程序調(diào)用的程局部變量在定義它的程序,以及被該程序調(diào)用的程序、過程和局部變量函數(shù)中有效。一旦定義它的程序、過程和局部變量函數(shù)中有效。一旦定義它的程序運(yùn)行完畢,局部變量便從內(nèi)存中釋放;如果定義序運(yùn)行完畢,局部變量便從內(nèi)存中釋放;如果定義它的程序再調(diào)用其他子程序,則該變量在子程序中它的程序再調(diào)用其他子程序,則該變量在子程序中繼續(xù)有效;如果它在子程序中改變了值,則返回調(diào)繼續(xù)有效;如果它在子程序中改變了值,則返回調(diào)用程序時(shí)也帶回新值,并在程序中繼續(xù)使用;如果用程序時(shí)也帶回新值,并在程序中繼續(xù)使用;如果另一個(gè)程序調(diào)用它的程序,調(diào)用程序中與定義它
28、另一個(gè)程序調(diào)用它的程序,調(diào)用程序中與定義它的程序同名的內(nèi)存變量將被屏蔽,而一旦調(diào)用程序的程序同名的內(nèi)存變量將被屏蔽,而一旦調(diào)用程序運(yùn)行完畢,所有被屏蔽的內(nèi)存變量便又恢復(fù)原來的運(yùn)行完畢,所有被屏蔽的內(nèi)存變量便又恢復(fù)原來的狀態(tài)。狀態(tài)。 PRIVATE命令格式:命令格式:PRIVATE內(nèi)存變量表內(nèi)存變量表 命令功能:命令功能: 定義內(nèi)存變量表中指定的內(nèi)存變定義內(nèi)存變量表中指定的內(nèi)存變量為局部變量。量為局部變量。 例例3.6定義定義P11,P12為局部變量。為局部變量。 PRIVATEP11,P12(3) 定義本地變量定義本地變量 用用LOCAL命令定義的內(nèi)存變量,可視為本地變量。命令定義的內(nèi)存變量,
29、可視為本地變量。 本地變量只在定義它的程序中有效。一旦定義它的本地變量只在定義它的程序中有效。一旦定義它的程序運(yùn)行完畢,本地變量將從內(nèi)存中釋放。需要注程序運(yùn)行完畢,本地變量將從內(nèi)存中釋放。需要注意的是,無論是被定義它的程序調(diào)用的程序,還是意的是,無論是被定義它的程序調(diào)用的程序,還是調(diào)用定義它的程序都不能使用這些內(nèi)存變量。調(diào)用定義它的程序都不能使用這些內(nèi)存變量。 LOCAL命令格式:命令格式:LOCAL內(nèi)存變量表內(nèi)存變量表 命令功能:命令功能: 定義內(nèi)存變量表中指定的內(nèi)存變定義內(nèi)存變量表中指定的內(nèi)存變量為本地變量。量為本地變量。 例例3.7定義定義L1,L2為本地變量。為本地變量。LOCALL1
30、,L23.3.3 數(shù)組變量數(shù)組變量 數(shù)組是一組有序內(nèi)存變量的集合。或者說,數(shù)組是數(shù)組是一組有序內(nèi)存變量的集合。或者說,數(shù)組是由同一個(gè)名字組織起來的簡單內(nèi)存變量的集合。其由同一個(gè)名字組織起來的簡單內(nèi)存變量的集合。其中每一個(gè)內(nèi)存變量都是這個(gè)數(shù)組的一個(gè)元素,它是中每一個(gè)內(nèi)存變量都是這個(gè)數(shù)組的一個(gè)元素,它是由一個(gè)以行和列形式表示的數(shù)組元素的矩陣。由一個(gè)以行和列形式表示的數(shù)組元素的矩陣。 所有的數(shù)組元素是用同一個(gè)變量名命名的一個(gè)集合所有的數(shù)組元素是用同一個(gè)變量名命名的一個(gè)集合體,而且每一個(gè)數(shù)組元素在內(nèi)存中獨(dú)占一個(gè)內(nèi)存單體,而且每一個(gè)數(shù)組元素在內(nèi)存中獨(dú)占一個(gè)內(nèi)存單元。為了區(qū)分不同的數(shù)組元素,每一個(gè)數(shù)組元素
31、都元。為了區(qū)分不同的數(shù)組元素,每一個(gè)數(shù)組元素都是通過數(shù)組名和下標(biāo)來訪問的是通過數(shù)組名和下標(biāo)來訪問的(如如A1,2、B5)。 數(shù)組是內(nèi)存變量的一種特殊形式,使用時(shí)也同樣要數(shù)組是內(nèi)存變量的一種特殊形式,使用時(shí)也同樣要注意其作用域。注意其作用域。1. 定義數(shù)組定義數(shù)組 在在Visual FoxPro系統(tǒng)環(huán)境下,可以通過系統(tǒng)環(huán)境下,可以通過DIMENSION或或DECLARE定義只有一個(gè)下標(biāo)的一定義只有一個(gè)下標(biāo)的一維數(shù)組或有兩個(gè)下標(biāo)的二維數(shù)組。數(shù)組一旦定義,維數(shù)組或有兩個(gè)下標(biāo)的二維數(shù)組。數(shù)組一旦定義,它的初始值為邏輯值它的初始值為邏輯值.F.,下標(biāo)的起始值是,下標(biāo)的起始值是1。 DIMENSION命令
32、格式:命令格式:DIMENSION數(shù)組名數(shù)組名1(下標(biāo)下標(biāo)1,下標(biāo),下標(biāo)2),數(shù)組名,數(shù)組名2(下標(biāo)下標(biāo)1,下標(biāo),下標(biāo)2)DECLARE命令格式:命令格式:DECLARE數(shù)組名數(shù)組名1(下標(biāo)下標(biāo)1,下標(biāo),下標(biāo)2),數(shù)組名,數(shù)組名2(下標(biāo)下標(biāo)1,下標(biāo),下標(biāo)2) 以上兩個(gè)命令功能:以上兩個(gè)命令功能: 定義一個(gè)或多個(gè)數(shù)組,同時(shí)定義一個(gè)或多個(gè)數(shù)組,同時(shí)又定義了下標(biāo)的個(gè)數(shù)及下標(biāo)的上界。又定義了下標(biāo)的個(gè)數(shù)及下標(biāo)的上界。 在在Visual FoxPro系統(tǒng)中,數(shù)組也可以重新定義,并系統(tǒng)中,數(shù)組也可以重新定義,并能動(dòng)態(tài)地能動(dòng)態(tài)地“放大縮小放大縮小”,如果改變原數(shù)組的維數(shù)和,如果改變原數(shù)組的維數(shù)和容量,原數(shù)組中
33、每個(gè)元素的值不變。因?yàn)閿?shù)組是內(nèi)容量,原數(shù)組中每個(gè)元素的值不變。因?yàn)閿?shù)組是內(nèi)存變量,在新定義或重新定義數(shù)組時(shí),要特別注意存變量,在新定義或重新定義數(shù)組時(shí),要特別注意內(nèi)存空間的大小,避免出現(xiàn)內(nèi)存不夠的現(xiàn)象。內(nèi)存空間的大小,避免出現(xiàn)內(nèi)存不夠的現(xiàn)象。 例例3.8定義一個(gè)一維數(shù)組定義一個(gè)一維數(shù)組SZ1和一個(gè)二維數(shù)組和一個(gè)二維數(shù)組SZ2。 DIMENSIONSZ1(10),SZ2(5,2) 上面這一定義一旦完成,系統(tǒng)就允許使用上面這一定義一旦完成,系統(tǒng)就允許使用SZ1和和SZ2兩個(gè)數(shù)組。兩個(gè)數(shù)組。 SZ1是一維數(shù)組,是一維數(shù)組,SZ1下標(biāo)的上界下標(biāo)的上界10,下界為,下界為1。數(shù)。數(shù)組元素分別為組元素分別
34、為SZ1(1),SZ1(2),SZ1(3) SZ1(10)。 SZ2是二維數(shù)組,是二維數(shù)組,SZ2第一個(gè)下標(biāo)為行標(biāo),上界第一個(gè)下標(biāo)為行標(biāo),上界5,下界為下界為1,SZ2第二個(gè)下標(biāo)為列標(biāo),上界第二個(gè)下標(biāo)為列標(biāo),上界2,下界為,下界為1。數(shù)組元素分別為。數(shù)組元素分別為SZ2(1,1),SZ2(1,2),SZ2(2,1),SZ2(2,2) SZ2(5,1),SZ2(5,2)。2. 數(shù)組類型數(shù)組類型 數(shù)組類型是指數(shù)組元素的類型。因?yàn)槊恳粋€(gè)數(shù)組元數(shù)組類型是指數(shù)組元素的類型。因?yàn)槊恳粋€(gè)數(shù)組元素又是一個(gè)內(nèi)存變量,所以它的類型同樣由它接受素又是一個(gè)內(nèi)存變量,所以它的類型同樣由它接受的數(shù)據(jù)的類型所決定。的數(shù)據(jù)的
35、類型所決定。 在在Visual FoxPro系統(tǒng)環(huán)境下,同一個(gè)數(shù)組元素在不系統(tǒng)環(huán)境下,同一個(gè)數(shù)組元素在不同時(shí)刻可以存放不同類型的數(shù)據(jù),在同一個(gè)數(shù)組中,同時(shí)刻可以存放不同類型的數(shù)據(jù),在同一個(gè)數(shù)組中,每個(gè)元素的值可以是不同的數(shù)據(jù)類型。每個(gè)元素的值可以是不同的數(shù)據(jù)類型。3. 數(shù)組賦值數(shù)組賦值 給數(shù)組賦值,就是分別給每個(gè)數(shù)組元素賦值,與給給數(shù)組賦值,就是分別給每個(gè)數(shù)組元素賦值,與給內(nèi)存變量賦值操作完全相同。內(nèi)存變量賦值操作完全相同。 例例3.9定義一個(gè)一維數(shù)組定義一個(gè)一維數(shù)組X,給所有數(shù)組元素賦值,給所有數(shù)組元素賦值并輸出其值。并輸出其值。DIMENSIONX(4)X(4)=12345STORE0TO
36、X(1),X(2),X(3)? X(1),X(2),X(3),X(4)4. 數(shù)組傳遞數(shù)組傳遞 使用命令使用命令SCATTER、COPY TO ARRAY、GATHER命令,可以實(shí)現(xiàn)數(shù)據(jù)表與數(shù)組間數(shù)據(jù)的傳命令,可以實(shí)現(xiàn)數(shù)據(jù)表與數(shù)組間數(shù)據(jù)的傳遞。遞。COPY TO ARRAY命令格式:命令格式:COPY TO ARRAY數(shù)組名數(shù)組名FIELDS 字段名字段名表表范圍范圍FOR條件條件1WHILE 條件條件2 SCATTER命令格式:命令格式:SCATTERFIELDS字段名表字段名表TO數(shù)組名數(shù)組名 以上兩個(gè)命令功能:以上兩個(gè)命令功能: 將當(dāng)前數(shù)據(jù)表中的數(shù)據(jù),傳將當(dāng)前數(shù)據(jù)表中的數(shù)據(jù),傳遞到數(shù)組名指
37、定的數(shù)組中。遞到數(shù)組名指定的數(shù)組中。 GATHER命令格式:命令格式:GATHER FROM數(shù)組名數(shù)組名FIELDS字段名字段名表表 命令功能:命令功能: 將數(shù)組名指定的數(shù)組中的數(shù)據(jù),將數(shù)組名指定的數(shù)組中的數(shù)據(jù),傳遞到當(dāng)前數(shù)據(jù)表中。傳遞到當(dāng)前數(shù)據(jù)表中。5. 數(shù)組特性數(shù)組特性 在在Visual FoxPro數(shù)據(jù)庫管理系統(tǒng)環(huán)境下,對數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)環(huán)境下,對數(shù)據(jù)庫進(jìn)行操作時(shí)引用數(shù)組,會(huì)使數(shù)據(jù)操作更方便。進(jìn)行操作時(shí)引用數(shù)組,會(huì)使數(shù)據(jù)操作更方便。 數(shù)組和數(shù)據(jù)表相比有如下優(yōu)點(diǎn):數(shù)組和數(shù)據(jù)表相比有如下優(yōu)點(diǎn):(1) 數(shù)組可以不像數(shù)據(jù)表一樣有一個(gè)固定的結(jié)構(gòu)。數(shù)組可以不像數(shù)據(jù)表一樣有一個(gè)固定的結(jié)構(gòu)。(2)
38、因?yàn)閿?shù)組中的數(shù)據(jù)存放在內(nèi)存中,數(shù)據(jù)表中的數(shù)因?yàn)閿?shù)組中的數(shù)據(jù)存放在內(nèi)存中,數(shù)據(jù)表中的數(shù)據(jù)存放在磁盤上,所以對數(shù)組中數(shù)據(jù)的訪問比對數(shù)據(jù)存放在磁盤上,所以對數(shù)組中數(shù)據(jù)的訪問比對數(shù)據(jù)表中的數(shù)據(jù)訪問速度要快。據(jù)表中的數(shù)據(jù)訪問速度要快。(3) 數(shù)組可以在原有的內(nèi)存空間進(jìn)行數(shù)據(jù)排序,不需數(shù)組可以在原有的內(nèi)存空間進(jìn)行數(shù)據(jù)排序,不需要額外的內(nèi)存和磁盤空間。要額外的內(nèi)存和磁盤空間。3.3.4 字段變量字段變量 字段變量是數(shù)據(jù)庫管理系統(tǒng)中的一個(gè)重要概念,它字段變量是數(shù)據(jù)庫管理系統(tǒng)中的一個(gè)重要概念,它與記錄一縱一橫構(gòu)成了數(shù)據(jù)表的基本結(jié)構(gòu)。通過前與記錄一縱一橫構(gòu)成了數(shù)據(jù)表的基本結(jié)構(gòu)。通過前面的學(xué)習(xí),我們已經(jīng)知道,一個(gè)數(shù)
39、據(jù)庫是由若干相面的學(xué)習(xí),我們已經(jīng)知道,一個(gè)數(shù)據(jù)庫是由若干相關(guān)的數(shù)據(jù)表組成,一個(gè)數(shù)據(jù)表是由若干個(gè)具有相同關(guān)的數(shù)據(jù)表組成,一個(gè)數(shù)據(jù)表是由若干個(gè)具有相同屬性的記錄組成,而每一個(gè)記錄又是由若干個(gè)字段屬性的記錄組成,而每一個(gè)記錄又是由若干個(gè)字段組成。組成。 字段變量就是指數(shù)據(jù)表中已定義的任意一個(gè)字段。字段變量就是指數(shù)據(jù)表中已定義的任意一個(gè)字段。可以這樣理解,在一個(gè)數(shù)據(jù)表中,同一個(gè)字段名下可以這樣理解,在一個(gè)數(shù)據(jù)表中,同一個(gè)字段名下有若干個(gè)數(shù)據(jù)項(xiàng),而數(shù)據(jù)項(xiàng)的值取決于該數(shù)據(jù)項(xiàng)所有若干個(gè)數(shù)據(jù)項(xiàng),而數(shù)據(jù)項(xiàng)的值取決于該數(shù)據(jù)項(xiàng)所在記錄行的變化,所以稱它為字段變量,也有人把在記錄行的變化,所以稱它為字段變量,也有人把
40、字段變量稱之為字段名變量。字段變量稱之為字段名變量。 字段變量的數(shù)據(jù)類型與該字段定義的類型一致。字字段變量的數(shù)據(jù)類型與該字段定義的類型一致。字段變量的類型有數(shù)值型、浮點(diǎn)型、整型、雙精度型、段變量的類型有數(shù)值型、浮點(diǎn)型、整型、雙精度型、字符型、邏輯型、日期型、時(shí)間日期型、備注型和字符型、邏輯型、日期型、時(shí)間日期型、備注型和通用型等。通用型等。 使用字段變量首先要建立數(shù)據(jù)表,建立數(shù)據(jù)表時(shí)首使用字段變量首先要建立數(shù)據(jù)表,建立數(shù)據(jù)表時(shí)首先定義的就是字段變量屬性先定義的就是字段變量屬性(名字、類型和長度名字、類型和長度)。字段變量的定義及字段變量數(shù)據(jù)的輸入、輸出,需字段變量的定義及字段變量數(shù)據(jù)的輸入、輸
41、出,需要在表設(shè)計(jì)器和表瀏覽、編輯窗口中進(jìn)行。有關(guān)這要在表設(shè)計(jì)器和表瀏覽、編輯窗口中進(jìn)行。有關(guān)這方面的內(nèi)容,將在第方面的內(nèi)容,將在第4章作詳細(xì)的介紹。章作詳細(xì)的介紹。3.3.5 記錄記錄 記錄是數(shù)據(jù)表中一組數(shù)據(jù)項(xiàng)的集合。在同一個(gè)數(shù)據(jù)表記錄是數(shù)據(jù)表中一組數(shù)據(jù)項(xiàng)的集合。在同一個(gè)數(shù)據(jù)表中可以有若干個(gè)記錄,每一個(gè)記錄具有相同的字段個(gè)中可以有若干個(gè)記錄,每一個(gè)記錄具有相同的字段個(gè)數(shù)。數(shù)。 在在Visual FoxPro系統(tǒng)中,許多操作都是通過記錄操作系統(tǒng)中,許多操作都是通過記錄操作來完成的。有關(guān)這方面的內(nèi)容,將在第來完成的。有關(guān)這方面的內(nèi)容,將在第4章作詳細(xì)的介章作詳細(xì)的介紹。紹。3.3.6 對象對象 對
42、象是數(shù)據(jù)存儲(chǔ)器的一種。對象是類的實(shí)體,是任何對象是數(shù)據(jù)存儲(chǔ)器的一種。對象是類的實(shí)體,是任何具有屬性和方法的信息的集合。對象的建立可以通過具有屬性和方法的信息的集合。對象的建立可以通過設(shè)計(jì)器和設(shè)計(jì)器和CREATE OBJECT()函數(shù)實(shí)現(xiàn)。函數(shù)實(shí)現(xiàn)。 在在Visual FoxPro系統(tǒng)中,引用對象是可視化編程的重系統(tǒng)中,引用對象是可視化編程的重要手段。有關(guān)這方面的內(nèi)容,將在第要手段。有關(guān)這方面的內(nèi)容,將在第10章作詳細(xì)的介章作詳細(xì)的介紹。紹。3.4 函數(shù)函數(shù) Visual FoxPro系統(tǒng)提供了一批具有特定功能的標(biāo)準(zhǔn)系統(tǒng)提供了一批具有特定功能的標(biāo)準(zhǔn)函數(shù)。這些函數(shù)實(shí)際上是系統(tǒng)提供的固定的程序,函數(shù)
43、。這些函數(shù)實(shí)際上是系統(tǒng)提供的固定的程序,用戶可直接引用,從而完成某些特定的操作。用戶可直接引用,從而完成某些特定的操作。1. 標(biāo)準(zhǔn)函數(shù)的類型標(biāo)準(zhǔn)函數(shù)的類型 根據(jù)每一個(gè)函數(shù)的功能,可將標(biāo)準(zhǔn)函數(shù)大致分為以根據(jù)每一個(gè)函數(shù)的功能,可將標(biāo)準(zhǔn)函數(shù)大致分為以下類型:下類型:(1) 數(shù)值型函數(shù)數(shù)值型函數(shù)(2) 字符型函數(shù)字符型函數(shù)(3) 數(shù)據(jù)轉(zhuǎn)換函數(shù)數(shù)據(jù)轉(zhuǎn)換函數(shù)(4) 日期和時(shí)間函數(shù)日期和時(shí)間函數(shù)(5) 變量處理函數(shù)變量處理函數(shù)(6) 數(shù)據(jù)庫函數(shù)數(shù)據(jù)庫函數(shù)(7) 環(huán)境函數(shù)環(huán)境函數(shù)(8) 數(shù)據(jù)共享函數(shù)數(shù)據(jù)共享函數(shù)(9) 輸入和輸出函數(shù)輸入和輸出函數(shù)(10) 編程函數(shù)編程函數(shù)(11) 動(dòng)態(tài)鏈接庫函數(shù)動(dòng)態(tài)鏈接庫函數(shù)
44、2. 常用的標(biāo)準(zhǔn)函數(shù)常用的標(biāo)準(zhǔn)函數(shù) 表表3-1所列的是所列的是Visual FoxPro系統(tǒng)中的部分標(biāo)準(zhǔn)函系統(tǒng)中的部分標(biāo)準(zhǔn)函數(shù)格式及功能。數(shù)格式及功能。表表3-1(書第書第46頁頁)3.5 表達(dá)式表達(dá)式 表達(dá)式是由數(shù)據(jù)、數(shù)據(jù)存儲(chǔ)容器和運(yùn)算符組成的運(yùn)表達(dá)式是由數(shù)據(jù)、數(shù)據(jù)存儲(chǔ)容器和運(yùn)算符組成的運(yùn)算式。根據(jù)不同的運(yùn)算符及表達(dá)式結(jié)果的不同,表算式。根據(jù)不同的運(yùn)算符及表達(dá)式結(jié)果的不同,表達(dá)式有五種常用類型。達(dá)式有五種常用類型。 3.5.1 算術(shù)表達(dá)式算術(shù)表達(dá)式 算術(shù)表達(dá)式可由算術(shù)運(yùn)算符和數(shù)值型常量、數(shù)值型算術(shù)表達(dá)式可由算術(shù)運(yùn)算符和數(shù)值型常量、數(shù)值型內(nèi)存變量、數(shù)值型數(shù)組、數(shù)值類型的字段、返回?cái)?shù)內(nèi)存變量、數(shù)
45、值型數(shù)組、數(shù)值類型的字段、返回?cái)?shù)值型數(shù)據(jù)的函數(shù)組成。算術(shù)表達(dá)式的運(yùn)算結(jié)果是數(shù)值型數(shù)據(jù)的函數(shù)組成。算術(shù)表達(dá)式的運(yùn)算結(jié)果是數(shù)值型常數(shù)。值型常數(shù)。3.5.2 字符表達(dá)式字符表達(dá)式 字符表達(dá)式可由字符運(yùn)算符和字符型常量、字符型內(nèi)字符表達(dá)式可由字符運(yùn)算符和字符型常量、字符型內(nèi)存變量、字符型數(shù)組、字符型類型的字段、返回字符存變量、字符型數(shù)組、字符型類型的字段、返回字符型數(shù)據(jù)的函數(shù)組成。字符表達(dá)式運(yùn)算的結(jié)果是字符常型數(shù)據(jù)的函數(shù)組成。字符表達(dá)式運(yùn)算的結(jié)果是字符常數(shù)或邏輯型常數(shù)。數(shù)或邏輯型常數(shù)。 “”和和“-”兩者均是完成字符串連接的運(yùn)算。不同兩者均是完成字符串連接的運(yùn)算。不同的是前者是將運(yùn)算符的是前者是將運(yùn)算
46、符“”兩邊的字符串完全連接;兩邊的字符串完全連接;后者則是先去掉運(yùn)算符后者則是先去掉運(yùn)算符“-”前面字符串的尾部空格,前面字符串的尾部空格,然后再與運(yùn)算符后面的字符串連接。當(dāng)運(yùn)算符前面字然后再與運(yùn)算符后面的字符串連接。當(dāng)運(yùn)算符前面字符串的尾部沒有空格時(shí),兩種連接運(yùn)算結(jié)果是一樣的。符串的尾部沒有空格時(shí),兩種連接運(yùn)算結(jié)果是一樣的。 是包含運(yùn)算,其功能是檢測兩個(gè)字符串中,后串是是包含運(yùn)算,其功能是檢測兩個(gè)字符串中,后串是否包含前串的內(nèi)容。如果后串包含前串的內(nèi)容,其結(jié)否包含前串的內(nèi)容。如果后串包含前串的內(nèi)容,其結(jié)果為真果為真(.T.);否則,其結(jié)果為假;否則,其結(jié)果為假(.F.)。3.5.3 時(shí)間日期
47、表達(dá)式時(shí)間日期表達(dá)式 時(shí)間日期表達(dá)式可由時(shí)間日期運(yùn)算符和時(shí)間日期型時(shí)間日期表達(dá)式可由時(shí)間日期運(yùn)算符和時(shí)間日期型常量、時(shí)間日期型內(nèi)存變量和數(shù)組、返回時(shí)間日期常量、時(shí)間日期型內(nèi)存變量和數(shù)組、返回時(shí)間日期型數(shù)據(jù)的函數(shù)組成。型數(shù)據(jù)的函數(shù)組成。 “”運(yùn)算符的運(yùn)算規(guī)則是在已給的日期上加天數(shù)運(yùn)算符的運(yùn)算規(guī)則是在已給的日期上加天數(shù)或在已給的時(shí)間日期上加秒數(shù)。或在已給的時(shí)間日期上加秒數(shù)。 “-”運(yùn)算符的運(yùn)算規(guī)則是計(jì)算已給的兩個(gè)日期相差運(yùn)算符的運(yùn)算規(guī)則是計(jì)算已給的兩個(gè)日期相差的天數(shù)或計(jì)算已給的兩個(gè)時(shí)間日期相差的秒數(shù)。的天數(shù)或計(jì)算已給的兩個(gè)時(shí)間日期相差的秒數(shù)。3.5.4 關(guān)系表達(dá)式關(guān)系表達(dá)式 關(guān)系表達(dá)式可由關(guān)系運(yùn)算
48、符和字符表達(dá)式、算術(shù)表關(guān)系表達(dá)式可由關(guān)系運(yùn)算符和字符表達(dá)式、算術(shù)表達(dá)式、時(shí)間表達(dá)式組成。達(dá)式、時(shí)間表達(dá)式組成。 關(guān)系運(yùn)算是運(yùn)算符兩邊同類型元素的比較,其運(yùn)算關(guān)系運(yùn)算是運(yùn)算符兩邊同類型元素的比較,其運(yùn)算結(jié)果為邏輯型常量,關(guān)系成立結(jié)果為結(jié)果為邏輯型常量,關(guān)系成立結(jié)果為(T);反之,;反之,結(jié)果為結(jié)果為(F)。3.5.5 邏輯表達(dá)式邏輯表達(dá)式 邏輯表達(dá)式可由邏輯運(yùn)算符和邏輯型常量、邏輯型邏輯表達(dá)式可由邏輯運(yùn)算符和邏輯型常量、邏輯型內(nèi)存變量、邏輯型數(shù)組、返回邏輯型數(shù)據(jù)的函數(shù)和內(nèi)存變量、邏輯型數(shù)組、返回邏輯型數(shù)據(jù)的函數(shù)和關(guān)系表達(dá)式組成。邏輯表達(dá)式的運(yùn)算結(jié)果是邏輯型關(guān)系表達(dá)式組成。邏輯表達(dá)式的運(yùn)算結(jié)果是邏輯型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 股權(quán)質(zhì)押合同范例
- 建筑工程勞務(wù)清包合同新
- 漁業(yè)捕撈及水域生態(tài)保護(hù)責(zé)任合同
- 建筑工程合同終止協(xié)議書
- 塑鋼門窗安裝制作安裝合同
- 醫(yī)用棉絮購銷合同
- 勞動(dòng)協(xié)議書和勞務(wù)合同
- 微商怎么簽三方協(xié)議合同
- 活動(dòng)協(xié)議合同簡單
- 收費(fèi)蛋糕學(xué)徒合同協(xié)議書
- 2025-2030“一帶一路”之菲律賓礦業(yè)行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資前景預(yù)測研究報(bào)告
- 2025-2030中國國防車輛行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 2025年03月荊門市“招碩引博”1412人筆試歷年參考題庫考點(diǎn)剖析附解題思路及答案詳解
- “育人為本,德育為先”在學(xué)校人才培養(yǎng)方案中的具體體現(xiàn)
- 電力電纜及通道檢修規(guī)程QGDW 11262-2014(文字版)
- 我是安全守法小公民
- 2025年六安城市建設(shè)投資有限公司招聘筆試參考題庫含答案解析
- 2025年安徽淮北市建投控股集團(tuán)招聘筆試參考題庫含答案解析
- DB32T 4988-2024城鄉(xiāng)公交代運(yùn)郵件快件服務(wù)指南
- 物業(yè)消防安全知識培訓(xùn)
- 小學(xué)地質(zhì)災(zāi)害安全教育
評論
0/150
提交評論