- 相關推薦
2017計算機二級考試《VFP》第三章復習重點
以下是百分網小編整理的2017計算機二級考試《VFP》第三章復習重點知識,希望對您的學習有所幫助!
第三章 數據與數據運算
VISUAL FOXPRO的基本數據元素:
(1) 常量、變量、表達式。
(2) 常用函數:字符處理函數、數值計算函數、日期時間函數、數據類型轉換函數、測試函數。
1.常量
常量是指在程序運行過程中始終不變化的數據,又稱為常數。在VFP 中常量可分為六種類型:
常量名稱 |
說 明 |
字符型常量 |
字符型常量是用定界符括起來的由字符、空格或數字所組成的字符串,定界符可以是單引號(’ ’)、雙引號(” ”)和方括號([ ])。如果一種定界符本身已是字符型常量的一個組成部分,則應選擇另一種定界符為該字符串定界。例如:’副教授’、”abc”、” [數據庫系統]” 是合法常量,而””xyz””、’It’s’ 是非法常量。 |
數值型常量 |
數值型常量又稱為常數,可以是整數、實數或科學記數法。例如85,貨幣型常-56.2, 1.256E+3, 3.8E-2等在程序中都是數值型常量。 |
貨幣型常量 |
在數字前加上貨幣符號“$”就是貨幣型常量,小數位系統固定為4位。如$1254.56,表示貨幣值1254.5600。 |
邏輯型常量 |
邏輯型常量只有兩個邏輯值:“真”與“假”。用.T.(.t.)、.Y.(.y.) 表示邏輯“真”,用.F.(.f.)、.N.(.n.)表示邏輯值“假”。在書寫時應注意.T.或.F.兩邊的小圓點不能省略。 |
日期型常量 |
日期型常量用于表示日期的常量值。在Visual FoxPro6.0中日期型常量用花括號“{ }”作為定界符括起來,其書寫格式視SET DATE命令的設置而定,系統默認格式為:{^yyyy-mm-dd}(或{^yyyy/mm/dd}),例如:{^2003/08/18}(或{^2003-10-18})。 |
日期時間常量 |
日期時間型常量用于表示日期時間的常量值。日期時間常量也必須用花括號括起來,其書寫格式視SET DATE命令的設置而定,系統默認格式為:{^yyyy-mm-dd[hh[:mm[:ss]]][am|pm]}( 或{^yyyy/mm/dd [hh[:mm[:ss]]][am|pm]}), 例如:{^2004/09/19 10:04am}、{^2004-06-21 11:32:14pm}。需要注意的是日期和時間之間必須有空格。如果在時間日期型常量中只有時間,系統默認格式為:[hh:mm:mm am|pm],例如:[10:12:45 pm]。 |
2. 變量
變量是在操作過程中可以改變其取值或數據類型的數據項。在Visual FoxPro系統中變量分為字段變量、內存變量(簡單變量、數組變量)2類。此外,作為面向對象的程序語言,Visual FoxPro在進行面向對象的程序設計中引入了對象的概念,對象實質上也是一類變量。
確定一個變量,需要確定其三個要素:變量名、數據類型和變量值。
(1).命名約定
使用字母,下劃線和數字命名。內存變量一般建議不采用漢字命名;命名以字母或下劃線開頭;除自由表中字段名、索引的TAG 標識名最多只能10 個字符外,其他的命名可使用1~128 個字符;
避免使用 Visual FoxPro 的保留字;文件名的命名應遵循操作系統的約定。
(2).字段變量
字段變量是數據庫管理系統中的一個重要概念。它與記錄一縱一橫構成了數據表的基本結構。一個數據庫是由若干相關的數據表組成,一個數據表是由若干個具有相同屬性的記錄組成,而每一個記錄又是由若干個字段組成。字段變量就是指數據表中已定義的任意一個字段。
我們可以這樣理解:在一個數據表中,同一個字段名下有若干個數據項,而數據項的值取決于該數據項所在記錄行的變化,所以稱它為字段變量。字段變量的數據類型與該字段定義的類型一致。字段變量的類型有數值型、浮點型、整型、雙精度型、字符型、邏輯型、日期型、時間日期型、備注型和通用型等。使用字段變量首先要建立數據表,建立數據表時首先定義的就是字段變量屬性(名字、類型和長度)。字段變量的定義及字段變量數據的輸入、輸出需要在表設計器中進行。
3.內存變量
內存變量可用來存儲數據,定義內存變量時需為它取名并賦初值,內存變量是一個臨時變量,內存變量建立后存儲于內存中,以便在需要時引用它的內容。當退出程序時,變量所占的內存自動釋放。Visual FoxPro6.0中共定義了6種類型的內存變量:數值型、字符型、日期型、日期時間型、邏輯型和貨幣型。內存變量可分為簡單變量和數組變量兩類。
(1)內存變量的建立
建立內存變量就是給內存變量賦值。內存變量賦值既可定義一個新的內存變量,也可改變已有內存變量的值或數據類型。
【格式1】:〈簡單變量〉=<表達式〉
【格式2】:STORE <表達式> TO <簡單變量表>
【功能】: 計算〈表達式〉,然后將計算結果賦給簡單變量。使用格式1,一次可給一個簡單變量賦值;使用格式2,一次可給一批簡單變量賦值,各變量之間用逗號分隔。
(2).內存變量的輸出格式1: ? <表達式表>格式1: ?? <表達式表>功能: 計算表達式的值,并將表達式的值顯示在屏幕上。
【說明】
(1)命令格式中的? 表示從屏幕下一行的第一列起顯示結果 ,?? 表示從當前行的當前列起顯示結果。
(2)<表達式表>是表示用逗號隔開的多個表達式組,命令執行時遇逗號就空一格。
4. 數組變量
數組是具有相同的變量名、不同下標值的一組變量。數組中的每個數據值稱為數組元素,數組中元素的
順序號稱為下標,每個數組元素在數組中的位置是固定的,數組中的元素可以通過下標來進行區分。
數組在使用時要用DIMENSION或DECLARE命令來定義。這兩個命令完全相同,都是用于建立一維或二維數組。在VisualFoxPro6.0中,同一個數組元素在不同時刻可以存儲不同類型的數據,在同一數組中,每個數組元素可以被賦予不同數據類型的值。
(1)數組的定義
數組必須先定義后使用,定義數組是向系統申請數組元素在內存中的存儲空間。
【格式】:
DIMENSION | DECLARE <數組名1>(<數值表達式1>[,<數值表達式2>])
[,<數組名2>(<數值表達式3>[,<數值表達式4>])…]
【功能】:定義指定的各個數組。
(2)數組的賦值與引用
數組元素的賦值與引用,與普通內存變量的規則相同。
5.系統變量
系統變量是Visual FoxPro 系統特有的內存變量,它由Visual FoxPro 系統定義、維護。系統變量有很多,其變量名均以下劃線“_”開始,因此在定義內存變量和數組變量名時,不要以下劃線開始,以免與系統變量名沖突。系統變量設置、保存了很多系統的狀態、特性,了解、熟悉并且充分地運用系統變量,會給數據庫系統的操作、管理帶來很多方便,特別是開發應用程序時更為突出,學習時可對此有所關注。
6.表達式在Visual FoxPro系統中,表達式是由常量、變量、函數及其他數據容器單獨或與運算符組成的有意義的運算式子。
運算符是對數據對象進行加工處理的符號,根據其處理數據對象的數據類型,運算符分為算術(數值)運算符、字符運算符、日期時間運算符、邏輯運算符和關系運算符五類,相應的,表達式也分為算術表達式、字符表達式、日期時間表達式、邏輯表達式和關系表達式五類。
在一個表達式中可能包含多個由不同運算符連接起來的、具有不同數據類型的數據對象,但任何運算符兩側的數據對象必須具有相同數據類型,否則運算將會出錯;由于表達式中有多種運算,不同的運算順序可能得出不同結果,甚至出現運算錯誤,因此當表達式中包含多種運算時,必須按一定順序施行相應運算,才能保證運算的合理性和結果的正確性、惟一性。用戶也可以通過給表達式加圓括號的方式,改變其默認運算順序。在Visual FoxPro 系統中,各類運算的優先順序如下:
圓括號>算術和日期運算>字符串運算>關系運算>邏輯運算同一類運算符也有一定的運算優先順序,這在各類表達式中分別介紹。如果多個同一級別的運算,則按在表達式中出現的先后順序進行運算。
(1)算術表達式
算術表達式又稱數值表達式,其運算對象和運算結果均為數值型數據。數值運算符的功能及運算優先順序,如表所示。表中運算符按運算優先級別從高到低順序排列。
表算術運算符
運算符 功能 表 達 式 舉 例 運算結果 優先級別
( ) 圓括號 (2-5)*(3+2) -15 最高
- 取相反數 -(3-8) 5
**、^ 乘冪 2**5、3^2 32、9
*、/ 乘、除 2*10、25/5 20、5
% 取余數 20%5 0
+、- 加、減 36+19、29-47 55、-18 最低
(2).字符表達式
字符表達式是由字符運算符將字符型數據對象連接起來進行運算的式子。字符運算的對象是字符型數據對象,運算結果是字符常量或邏輯常量。"+"與 "-"都是字符連接運算符,都將兩字符串順序連接,但“+”是直接連接,“-”則將串1尾部所有空格移到串2尾部后再連接;“$”運算實質上是比較兩個串的包含關系,因此有些書籍中將其歸于關系運算,其作用是比較、判斷串1 是否為串2的子串,如果串1是串2的子串,運算結果為“真”,否則為“假”。所謂子串,如果串1中所有字符均包含在串2中、且與串1中排列方式與順序完全一致,則稱串1為串2的子串。
表字符運算符
運算符 功能 表達式舉例 運算結果
+ 串1+串2:兩串順序相連接 ’12 ‘+’56’ ’12 56’
- 串1-串2:串1尾空格移到串2尾
后再順序相連接 ’12 ‘-‘56’ ‘1256 ‘
$ 串1$串2:串1是否為串2子串 ‘1234’$ ‘12345’ .T.
‘ 1234’$‘34512’ .F.
兩個連接運算的優先級別相同,但高于$的比較運算。
例: LEN1=”Visual FoxPro6.0 ” LEN2=”數據庫教程” ?
LEN1+LEN2 &&結果為:Visual FoxPro6.0 數據庫教程 ?
LEN1-LEN2 &&結果為:Visual FoxPro6.0數據庫教程
? len(LEN1-LEN2) && 結果為:28
(3).日期表達式
由日期運算符將一個日期型或日期時間型數據與一個數值型數據連接而成的運算式稱為日期表達式。日期運算符分為“+”和“-”兩種,其作用分別是在日期數據上增加或減少一個天數,在日期時間數據上增加或減少一個秒數。兩個運算的優先級別相同。
日期時間操作符有:
+:添加一個天數或秒數
-:減少一個天數或秒數
注意:日期和日期、日期時間和日期時間只能相減,不能相加。(p64)
(4).關系表達式
由關系運算符連接兩個同類數據對象進行關系比較的運算式稱為關系表達式。關
系表達式的值為邏輯值,關系表達式成立則其值為“真”,否則為“假”。
表 關系運算符
運算符 功能 表 達 式舉例 結果
< 小于 15<4*6 .T.
> 大于 ‘A’ > ‘1’ .T.
= 等于 2+4 = 3*5 .F.
<>、#、!= 不等于 5 <> -10 .T.
關系運算符的優先級別相同。關系表達式運算時,就是比較同類兩數據對象的“大小”,對于不同類型的數據,其“大小”或者是值的大小,或者是先后順序。日期或日期時間數據以日期或時間的先后順序為序。在Visual FoxPro系統中,字符型數據的比較相對復雜,默認規則為:
1)單個字符
單個字符的比較是以字符ASCII碼的大小,作為字符的“大小”,也就是先后順序;
2)漢字
系統默認按漢字的拼音排列漢字的順序,也就是以漢字的拼音順序比較“大小”
3)字符串
兩個字符串進行比較的基本原則是從左到右逐個字符進行比較。
當兩串做“==”和“=”比較時,運算結果與SET EXACT ON/OFF的設置有關。默認是OFF狀態。
● 精確比較:用運算符==進行兩串的精確比較時,只有當兩串長度相同,字符相同,排列一致時才成立;(EXACT ON或OFF)
● 相等比較:用運算符=進行兩串比較,當處于OFF狀態時,只要右邊的字符串與左邊字符串的前部分內容相匹配,結果就為真.T.。例如:“abc”=“abd”為假, “abc”=“abcde”為假,“abcde”=“abc”為真;當處于ON狀態時,先在較短字符串的尾部加上若干個空格,使兩個字符串長度相等,然后再進行比較。例如: “abc”=“abcde”為假,“ab”=“ab ”為真;
● 大小比較:用運算符< 或 >進行兩串比較時,比較到第1個不相同字符為止,否則,長度較長的串較“大”;
● 其他比較:除上述運算符之外的其他運算符<>、<=和>=的比較,均可看作是兩個運算符以邏輯“或”的關系構成的復合運算;
(5).邏輯表達式
由邏輯運算將邏輯型數據對象連接而成的式子稱為邏輯表達式。邏輯表達式的運算對象與運算結果均為邏輯型數據。表為邏輯運算符的功能。邏輯運算符前后一般要加圓點“.”標記,以示區別。
表 邏輯運算符
運算符 功能 優先級別
( ) 圓括號 最高
.NOT.或! 邏輯非
.AND. 邏輯與
.OR. 邏輯或 最低
對于各種邏輯運算,其運算規則可由邏輯運算真值表確定,表所示就是邏輯運算真值表。
表 邏輯運算真值表
A B A .AND.B A .OR. B .NOTA
T T T T F
T F F T F
F T F T T
F F F F T
例如:
?17>33 .AND.”A”<”a” && 值為.F.?
17>13 .or."A"<"a" .and..not..t. && 值為.T.
7.函數
Visual FoxPro 系統中,函數是一段程序代碼,用來進行一些特定的運算或操作,支持和完善命令的功能,幫助用戶完成各種操作與管理。
Visual FoxPro 系統有數百種不同函數。按函數提供方式,可分為系統函數和用戶自定義函數;按函數運算、處理對象和結果的數據類型,可分為數值型函數、字符型函數、邏輯型函數、日期時間型函數、數據轉換函數等,按函數的功能和特點,可分為數據處理函數、數據庫操作函數、文件管理函數、鍵盤和鼠標處理函數、輸出函數、窗口界面操作函數、程序設計函數、數據庫環境函數、網絡操作函數、系統信息函數和動態數據操作函數等。
Visual FoxPro 的函數由函數名與自變量兩部分組成。標準函數是Visual FoxPro 系統提供的系統函數,其函數名是Visual FoxPro 保留字,自定義函數是用戶自已定義的函數,函數名用戶指定;自變量必須用圓括號對括起來,如有多個自變量,各自變量以逗號分隔;有些函數可省略自變量,或不需自變量,但也必須保留括號;自變量數據類型由函數的定義確定,數據形式可以是常量、變量、函數或表達式等。函數是一類數據項,除個別(如宏替換)函數外,函數都不能像命令一樣單獨使用,只能作為命令的一部分進行操作運算。
(1).數值函數
數值函數用于數值運算,其自變量與函數都是數值型數據。
1).取絕對值函數ABS( )
【格式】ABS(<數值表達式>)
【功能】計算數值表達式的值,并返回該值的絕對值。
【例】 ? ABS(-43.29) 43.292).指數函數EXP( )
【格式】EXP(<數值表達式>)
【功能】求以e 為底、數值表達式值為指數的冪,即返回該數的指數值。
3).取整函數INT( )
【格式】INT(<數值表達式>)
【功能】計算數值表達式的值,返回該值的整數部分。
【例】 ? INT(-76.93) -764).自然對數函數LOG( )
【格式】LOG(<數值表達式>)
【功能】求數值表達式的自然對數。數值表達式的值必須為正數。
5).平方根函數SQRT( )
【格式】SQRT(<數值表達式>)
【功能】求非負數值表達式的平方根。
【例】 ? SQRT(5*5)
5.00
6).最大值函數MAX( )和最小值函數MIN( )
【格式】
MAX(<數值表達式1>,< 數值表達式2>[,< 數值表達式3>...])
MIN(<數值表達式1>,< 數值表達式2>[,< 數值表達式3>...])
【功能】返回數值表達式中的最大值MAX( )和最小值MIN( )。
7).求余數函數MOD( )
【格式】MOD(<被除數>,<除數>)
【功能】返回<被除數>除以<除數>得到的余數值。
【說明】在求摸運算中應注意以下幾點:
(1) 除數不能為0。
(2) 除數為正數,返回正數;如果為負數,返回負數。
(3) 如果被除數與除數能夠整除,結果為0。
(4) 如果被除數與除數不能整除,且被除數與除數同號,則結果為被除數除以除數而得到的余數。即:MOD(X1,X2)=X1-INT(X1/X2)*X2 。
(5) 如果被除數與除數不能整除,且被除數與除數異號,則結果為被除數除以除數而得到的余數再加上除數。來源:考試大
即:MOD(X1,X2)=X1-INT(X1/X2)*X2+X2 。
8).四舍五入函數ROUND( )
【格式】ROUND(<數值表達式1>,< 數值表達式2>)
【功能】返回數值表達式1四舍五入的值, 數值表達式2表示保留的小數位數。
【ày】 ? R0UND(3.14159£?4),ROUND(1234.9962,0),ROUND(1234.567,-1)
3.1416 1235 1230
9).π函數PI( )
【格式】PI( )
【功能】返回常量π的近似值。
10)。隨機函數RAND( )
【格式】RAND(<數值表達式>)
【功能】產生0-1之間的隨機數。
(2).字符函數
字符函數是處理字符型數據的函數,其自變量或函數值中至少有一個是字符型數據。函數中涉及的字符型數據項,均以cExp表示。
1).子串位置函數
【格式】AT(,< cExp 2>)
【功能】返回串cExp1在串cExp2中的起始位置。函數值為整數。如果串cExp2不包含串cExp1,函數返回值為零。
2).取左子串函數LEFT( )
【格式】LEFT(,)
【功能】返回從cExp串中第一個字符開始,截取nExp個字符的子串。
3).取右子串函數RIGHT( )
【格式】RIGHT(,< nExp>)
【功能】返回從cExp串中右邊第一個字符開始,截取nExp個字符的子串。
4).取子串函數SUBSTR( )
【格式】SUBSTR (, [,] )
【功能】返回從串cExp 中第nExp1 個字符開始,截取nExp2 個字符的子串。
5).字符串長度函數LEN( )
【格式】LEN()
【功能】返回cExp串的字符數(長度)。函數值為N型。
【例】 ? LEN(”Visual FoxPro8.0”)16
6).刪除字符串前導空格函數LTRIM( )
【格式】LTRIM()
【功能】刪除cExp串的前導空格字符。
7).刪除字符串尾部空格函數RTRIM( ) | TRIM( )
【格式】RTRIM | TRIM()
【功能】刪除cExp串尾部空格字符。
8).空格函數SPACE( )
【格式】SPACE ()
【功能】返回一個包含nExp 個空格的字符串。
【例】 X=SPACE(2)+”學生情況”+ SPACE(4) ?
LEN(X),LEN(TRIM(X)),LEN(LTRIM))14 10 129).字符串替換函數STUFF( )
【格式】STUFF(,,,)
【功能】從nExp1指定位置開始,用cExp2串替換 cExp1串中nExp2個字符。
【ày】X1="ABCDEFG"
X2="abcd"
? STUFF(X1,4,3,X2),STUFF(X1,1,4,X2)
ABCabcdG abcdEFG
10).大小寫轉換函數LOWER( ) 和UPPER( )
【格式】LOWER ()
UPPER ()
【功能】LOWER( )將cExp串中字母全部變成小寫字母,UPPER( )將cExp串中字母全部變成大寫字母,其它字符不變。
11).字符匹配函數LINK( )
【格式】LIKE(,)
【功能】比較兩個字符串對應位置上的字符,若所有對應字符都相匹配,函數返回邏輯真(.T.),否則返回邏輯假(.F.)
【說明】 中可以使用通配符*和?。*可以與任何數目的字符相匹配,?可以與任何單個字符相匹配。
【例】X=“abc”
Y=“abcd”
? LIKE(X,Y),LIKE(“ab*”,X),LIKE(“a*”,Y),LIKE(“?b”,X)
.F. .T. .T. .F.
(3).日期時間函數(p73)
日期時間函數是處理日期型或日期時間型數據的函數。其自變量為日期型表達式dExp或日期時間型表達式tExp。
1).系統日期函數DATE( )
【格式】DATE()
【功能】返回當前系統日期,此日期由系統設置。函數值為D型。
2).系統時間函數TIME( )
【格式】TIME([])
【功能】返回當前系統時間,時間顯示格式為hh:mm:ss。是以24小時指制表示的。函數值為C型。
3).日期函數DAY( )
【格式】DAY()
【功能】返回指定的dExp式中的天數。函數值為N型
4).星期函數DOW( )、CDOW( )
【格式】DOW()
CDOW()
【功能】DOW( )函數返回dExp式中星期的數值,用1~7表示星期日~星期六。函數值為N型。CDOW( ) 函數返回dExp式中星期的英文名稱。函數值為C型。
5).月份函數MONTH( )、CMONTH( )
【格式】MONTH()
CMONTH()
【功能】MONTH( )函數返回dExp 式中月份數。函數值為N 型。CMONTH( )函數則返回月份的英文名。函數值為C 型。
6).年份函數YEAR( )
【格式】YEAR()
【功能】函數返回dExp 式中年份值。函數值為N 型。
(4). 轉換函數
在數據庫應用的過程中,經常要將不同數據類型的數據進行相應轉換,滿足實際應用的需要。Visual FoxPro系統提供了若干個轉換函數,較好地解決了數據類型轉換的問題。
1).ASCII碼函數ASC( )
【格式】ASC ()
【功能】返回cExp串首字符的ASCII碼值。函數值為N型。
【例】 ? ASC(“abc”) && 結果為:97
2).ASCII 字符函數CHR( )
【格式】CHR()
【功能】返回以nExp 值為ASCII 碼的ASCII 字符。函數值為C 型。
【例】 ? CHR(99) && 結果為:c
3).字符日期型轉換函數CTOD( )
【格式】CTOD()
【功能】把“××/××/××”格式的cExp串轉換成對應日期值。函數值為D型。
【ày】 DA=”12/12/99”
? CTOD(DA)
12/12/99
4).日期字符型轉換函數DTOC( )
【格式】DTOC([, 1])
【功能】把日期dExp轉換成相應的字符串。函數值為C型。
【ày】 D={^2004/11/24}
DT=DTOC(D)
? DT
?? LEN(DT)
11/24/04 8
5).數值轉換成字符串函數STR( )
【格式】STR([,< nExp2>][,< nExp3>])
【功能】將nExp1 的數值轉換成字符串形式。函數值為C 型。
【例】 ?
STR(1324.46,6,1) 1324.5 ?
STR(1324.46,8,3) , STR(1324.46,3,1) 1324.460 ***
注:如果長度小于的位數則返回一串*號。
6).字符串轉換成數值函數VAL( )
【格式】VAL ()
【功能】將cExp 串中數字轉換成對應數值,轉換結果取兩位小數。函數值為N 型。【例】 ? VAL(”32”+”18”) 3218.00 ?VAL(”112GH”),VAL(”AB204”),VAL(”ASD”) 112.00
0.00 0.00
7).宏代換函數 &
[格式]:&<字符型內存變量>
[功能]:取“字符型內存變量”的值。
[說明]:
(1)宏代換是一種間接取值的操作,在&符號后面必須緊跟(無空格)一個己被賦過值的字符型內存變量的名字。
(2)若&<字符型內存變量>與后面的字符之間無空格分界時,應加上“.”符號作為分界符。
(3)宏代換的使用可以嵌套另一個宏代換,但不能嵌套自己。例如,X=“&X”的寫法是錯誤的。
(4)對于數字字符串,可以通過&函數使其與其他數字進行計算。
[例]:求宏代換。
<1>. CH=”X”
X=9
? &CH &&結果為:9
<2> TT=”學生”
USE &TT &&結果為:打開了“學生.dbf”表文件。
<3> X=”2004”
M=”+”
Y=”&X.&M.1”
? Y &&結果為:2004+1
? &Y &&結果為:2005
(5).測試函數
在數據庫應用的操作過程中,用戶需要了解數據對象的類型、狀態等屬性,Visual FoxPro提供了相關的測試函數,使用戶能夠準確地獲取操作對象的相關屬性。
1).數據類型函數VARTYPE( )
【格式】VARTYPE(<表達式>)
【功能】返回<表達式>表示的數據對象的數據類型,返回值是一個表示數據類型的大寫字母。C:字符型,D:日期型,N:數值型,L:邏輯型,M:備注型,G:通用型,U:未定義。
2).值域測試函數BETWEEN()
【格式】BETWEEN(,,)
【功能】判斷當表達式的值大于等于的值且小于等于的值時,函數值為真(.T.),否則函數值為假(.F.)。如果或有一個是NULL 值,那么函數值也是NULL 值。
【例】? BETWEEN(3*5,10,50),BETWEEN(80,.null.,100).T. .NULL.
3).條件測試函數IIF( )
【格式】IIF(,,)
【功能】邏輯表達式lExp 值為真(.T.),返回表達式eExp1 的值,否則返回表達式eExp2 的值。eExp1 和eExp2 可以是任意數據類型的表達式。
【例】成績=78
?IIF(成績<60,“不及格”,“及格”)及格
4).當前記錄號函數RECNO()
【格式】RECNO([<工作區號> | <別名>])
【功能】返回指定工作區中表的當前記錄的記錄號。對于空表返回值為1。
【例】 測試記錄指針的當前位置。 USE 學生檔案.dbf GOTO
BOTTOM ? RECNO() && 顯示結果為:10
SKIP ? RECNO() && 顯示結果為:11 GO
TOP ? RECNO() && 顯示結果為: 1
SKIP -1 ? RECNO() && 顯示結果為: 15).表結束標志測試函數EOF( )
【格式】EOF([<工作區號> | <別名>])
【功能】測試記錄指針是否移到表結束處。如果記錄指針指向表中尾記錄之后,函數返回真(.T.),否則為假(.F.)。
【例】測試文件記錄是否指向文件尾。USE 學生檔案.dbf
GOTO BOTTOM
? EOF() && 顯示結果為:.F.
SKIP && 移動記錄指針到下一條記錄命令
? EOF() && 顯示結果為:.T.
6).表起始標識測試函數BOF ( )
【格式】BOF ([<工作區號> | <別名>])
【功能】測試記錄指針是否移到表起始處。如果記錄指針指向表中首記錄前面,函數返回真(.T.),否則為假(.F.)。
【例】 測試文件記錄是否指向文件頭。 USE 學生檔案.dbf ?
BOF() && 顯示結果為:.F. SKIP -1 &&
移動記錄指針到上一條記錄命令 ? BOF() &&
顯示結果為:.T.
7).記錄刪除測試函數DELETED( )
【格式】DELETED([<工作區號> | <別名>])
【功能】測試指定工作區中表的當前記錄是否被邏輯刪除。如果當前記有邏輯刪除標記,函數返回真(.T.),否則為假(.F.)。
8).記錄個數測試函數RECCOUNT( )
【格式】RECCOUNT ([<工作區號> | <別名>])
【功能】返回指定工作區中表的記錄個數。如果工作區中沒有打開表則返回0。
【例】 USE XY && 假設表中有10條記錄
GO BOTTOM
? EOF(),RECNO() && 顯示 .F. 10
SKIP
? EOF(),RECNO(),RECCOUNT() && 顯示 .T. 11 10
【計算機二級考試《VFP》第三章復習重點】相關文章:
計算機二級VFP無紙化考試重點和難點03-29
計算機二級考試VFP考試大綱03-29
2015二級計算機考試《VB》復習重點:Sub過程03-25
計算機二級VFP試題及答案10-22