第2章-VFP-6.0-語言基礎(chǔ)_第1頁
第2章-VFP-6.0-語言基礎(chǔ)_第2頁
第2章-VFP-6.0-語言基礎(chǔ)_第3頁
第2章-VFP-6.0-語言基礎(chǔ)_第4頁
第2章-VFP-6.0-語言基礎(chǔ)_第5頁
已閱讀5頁,還剩91頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

VisualFoxPro6.0教師:聶永紅日期:數(shù)據(jù)庫與程序設(shè)計(jì)10/21/2024第2章VFP語言基礎(chǔ)※字符型(C)※數(shù)值型(N) ※貨幣型※邏輯型(L)※日期型(D)※日期時(shí)間型(T)※整型 ※浮點(diǎn)型※雙精度型※備注型(M)※通用型(G)※二進(jìn)制字符型※二進(jìn)制備注型字段特

有類型

2.1數(shù)據(jù)類型13種2.1數(shù)據(jù)類型1.字符型數(shù)據(jù)(Character,簡寫:C)

是指用各種文字字符表示的數(shù)據(jù),由26個(gè)英文大小寫字母、10個(gè)阿拉伯?dāng)?shù)字、漢字、專用符號和空格等組成,最大長度為254個(gè)字節(jié)。注意:如果將阿拉伯?dāng)?shù)字定義為字符型數(shù)據(jù)時(shí),它不具備數(shù)學(xué)上的數(shù)值含義,不能參加數(shù)學(xué)運(yùn)算。

如:電話號碼,郵編等。2.數(shù)值型數(shù)據(jù)(Numeric,簡寫:N)

是指可以進(jìn)行算術(shù)運(yùn)算的數(shù)據(jù),由數(shù)字0~9、小數(shù)點(diǎn)和正負(fù)號構(gòu)成,最大長度為20位。在內(nèi)存中,數(shù)值型數(shù)據(jù)占用8個(gè)字節(jié)。一般將需要參加數(shù)學(xué)運(yùn)算的數(shù)據(jù)定義成數(shù)值型。如:12.682.1數(shù)據(jù)類型3.貨幣型數(shù)據(jù)(Currency,簡寫:Y)

采用表示貨幣量的數(shù)據(jù)來代替用數(shù)值型數(shù)據(jù)表示貨幣,長度固定為8個(gè)字節(jié)。如:$25

在數(shù)據(jù)的第一個(gè)數(shù)字前冠一個(gè)貨幣符號($)4.邏輯型數(shù)據(jù)(Logic,簡寫:L)

是用來進(jìn)行各種邏輯判斷的數(shù)據(jù),只有兩個(gè)值:真(.T.,.Y.)或假(.F.,.N.),長度固定為1個(gè)字節(jié)。

如:x=.T.2.1數(shù)據(jù)類型5.日期型數(shù)據(jù)(Date,簡寫:D)

是用來表示日期的數(shù)據(jù),存儲(chǔ)格式為“YYYYMMDD”,其中YYYY代表年,MM代表月,DD代表日,長度固定為8個(gè)字節(jié)。

6.日期時(shí)間型數(shù)據(jù)(DateTime

,簡寫:T)

描述日期和時(shí)間的數(shù)據(jù),存儲(chǔ)格式為“YYYYMMDDHHMMSS”,其中YYYY代表年,前兩個(gè)MM代表月,DD代表日,HH代表小時(shí),后兩個(gè)MM代表分鐘,SS代表秒,長度固定為8個(gè)字節(jié)。

2.1數(shù)據(jù)類型7.整型數(shù)據(jù)(Integer,簡寫:I)

是指不包含小數(shù)點(diǎn)部分的數(shù)值,以二進(jìn)制形式存儲(chǔ),長度固定為4個(gè)字節(jié)。

如:25-1008.浮點(diǎn)型數(shù)據(jù)(Float,簡寫:F)

是數(shù)值型數(shù)據(jù)的一種,與數(shù)值型數(shù)據(jù)完全等價(jià),但在存儲(chǔ)形式上采取浮點(diǎn)格式,由尾數(shù)、階數(shù)及字母E組成,占用8個(gè)字節(jié)。

如:0.25×1015

用0.25E+15表示2.1數(shù)據(jù)類型9.雙精度數(shù)據(jù)(Double,簡寫:B)是具有更高精度的數(shù)值型數(shù)據(jù),長度固定為8個(gè)字節(jié)。10.備注型數(shù)據(jù)(Memo,簡寫:M)

用于存儲(chǔ)字符型數(shù)據(jù)塊,長度固定為4個(gè)字節(jié),用來存儲(chǔ)指向?qū)嶋H數(shù)據(jù)存放位置的地址指針,實(shí)際數(shù)據(jù)存放在與數(shù)據(jù)表文件同名的.FPT文件中,其長度僅受磁盤空間的限制。2.1數(shù)據(jù)類型11.通用型數(shù)據(jù)(General,簡寫:G)

用于存儲(chǔ)OLE對象,只能用于數(shù)據(jù)表中字段的定義。該字段包含了對OLE對象的引用,而OLE對象的具體內(nèi)容可以是文檔、圖片、電子表格等。通用型數(shù)據(jù)的長度固定為4個(gè)字節(jié),用來存儲(chǔ)指向.FPT文件位置的地址指針,實(shí)際數(shù)據(jù)長度僅受磁盤空間的限制。實(shí)際數(shù)據(jù)存放在與數(shù)據(jù)表文件同名的.FPT文件中OLE:ObjectLinkingandEmbedding,對象連接與嵌入,簡稱OLE技術(shù)2.1數(shù)據(jù)類型12.字符型數(shù)據(jù)(二進(jìn)制)

用于存儲(chǔ)任意不經(jīng)過代碼頁修改而維護(hù)的字符型數(shù)據(jù)。長度不超過254個(gè)字節(jié)。注意:字符型數(shù)據(jù)與字符型數(shù)據(jù)(二進(jìn)制)的區(qū)別存放ASCII或漢字等存放二進(jìn)制數(shù)據(jù)13.備注型數(shù)據(jù)(二進(jìn)制)

用于存儲(chǔ)任意不經(jīng)過代碼頁修改而維護(hù)的備注型數(shù)據(jù)。長度固定為4個(gè)字節(jié)。2.2數(shù)據(jù)存儲(chǔ)在VFP中,將用于存儲(chǔ)數(shù)據(jù)的常量、變量、數(shù)組、字段、記錄和對象稱為數(shù)據(jù)的存儲(chǔ)容器,它們決定了數(shù)據(jù)的類型和存儲(chǔ)方法。

2.2.1常量

常量是指在數(shù)據(jù)處理過程中其值始終保持不變的量。常量名是常量的標(biāo)識(shí)符,其命名規(guī)則為:以字母或漢字開頭,后面可以跟字母、數(shù)字、下劃線和漢字,長度不超過128個(gè)字符,與系統(tǒng)保留字不能同名。

2.2.1常量1.數(shù)值型常量:是數(shù)學(xué)中的十進(jìn)制整數(shù)或小數(shù)。

如:10.25,-123.5672.浮點(diǎn)型常量:是數(shù)值型常量的浮點(diǎn)格式。

如:0.234E-10表示0.234×10-103.字符型常量:用定界符(單撇號/雙撇號/方括號)括起來的字符串。

如:

ˊABCDˊ

、〞1234〞、[中國北京]

2.2.1常量3.字符型常量:用定界符(單撇號/雙撇號/方括號)括起來的字符串。

如:

ˊABCDˊ

、〞1234〞、[中國北京]

[ˊABCDˊ]

2.2.1常量4.邏輯型常量:用下圓點(diǎn)作為定界符,只有真和假兩個(gè)值。

如:

.T.、.t.、.Y.、.y.(真),

.F.、.f.、.N.、.n.(假)

2.2.1常量5.日期型常量/日期時(shí)間型常量:表示一個(gè)確切的日期和時(shí)間,用花括號作為定界符。默認(rèn)格式為{mm/dd/yy}。常用的系統(tǒng)輸出格式:mm/dd/yy常用的系統(tǒng)輸入格式:{^yyyy/mm/dd}

如:{^2010-09-15}{^2010/09/1512:30:15}

也可以用CTOD函數(shù)進(jìn)行轉(zhuǎn)換,如:

CTOD(ˊ09/15/2010ˊ)

2.2.1常量通過SETDATE,SETCENTURY等命令可以改變默認(rèn)的日期格式。(1)SETDATE命令格式:SETDATETO………

P20功能:設(shè)置當(dāng)前日期的格式。

2.2.1常量通過SETDATE,SETCENTURY等命令可以改變默認(rèn)的日期格式。(2)SETCENTURY命令

格式:

SETCENTURYON|OFF

功能:設(shè)置年份的位數(shù),ON指定年份為4位,OFF指定年份為2位。例:用不同的日期格式顯示系統(tǒng)的當(dāng)前日期。在命令窗口中輸入以下命令(從&&開始的內(nèi)容為注釋部分,不要輸入),并分別按回車鍵執(zhí)行。SETCENTURYOFF&&設(shè)置年份為2位數(shù)?DATE()&&調(diào)用日期函數(shù)SETDATETOYMD&&設(shè)置年月日格式?DATE()SETCENTURYON&&設(shè)置年份為4位數(shù)?DATE()演示:顯示結(jié)果為09/15/1010/09/152010/09/152.2.2變量

變量是指在數(shù)據(jù)處理過程中其值可以改變的量。包括字段變量、內(nèi)存變量、數(shù)組變量和系統(tǒng)內(nèi)存變量。1.變量的命名:

以字母(漢字)或下劃線開頭,由字母、漢字、數(shù)字和下劃線組成,長度不能超過128個(gè)字符。如:a,_123,aaa123,學(xué)生123

非法的變量名:235,12aa,學(xué)生123,aa-1232.2.2變量2.字段變量存在于數(shù)據(jù)表中。當(dāng)定義好一個(gè)數(shù)據(jù)表的結(jié)構(gòu),該表中的各個(gè)字段名就形成了各個(gè)字段變量。

字段變量必須先定義然后才能使用。(1)字段變量隸屬于數(shù)據(jù)表文件。(2)數(shù)據(jù)表是存在于計(jì)算機(jī)中的一個(gè)二維表格,數(shù)據(jù)表中的每一列稱為一個(gè)字段,是數(shù)據(jù)表進(jìn)行數(shù)據(jù)處理的基本單位;數(shù)據(jù)表中的每一行內(nèi)容稱為一條記錄,由若干個(gè)相關(guān)聯(lián)的字段組成。(3)在數(shù)據(jù)表中,字段必須先定義后賦值,然后才可以使用。(4)字段變量名由漢字、字母、數(shù)字和下劃線組成,必須以字母或漢字開頭。(5)字段變量的數(shù)據(jù)類型有13種,與前面的數(shù)據(jù)類型相同。2.2.2變量3.內(nèi)存變量:是一種臨時(shí)信息存儲(chǔ)單元,獨(dú)立于數(shù)據(jù)表,可以根據(jù)需要隨時(shí)建立。其類型取決于變量值的類型,可以把不同類型的數(shù)據(jù)賦給同一個(gè)變量。當(dāng)內(nèi)存變量名與數(shù)據(jù)表中的字段變量名相同時(shí),要訪問該內(nèi)存變量,必須在變量名前加上前綴M.或M->,否則系統(tǒng)將優(yōu)先訪問同名的字段變量。 當(dāng)內(nèi)存變量名與字段變量名相同時(shí),字段名優(yōu)先于內(nèi)存變量名,使用時(shí)可以在內(nèi)存變量名前加上“M->”以示區(qū)別,但賦值時(shí)不能使用該前綴。2.2.2變量3.內(nèi)存變量(1)建立內(nèi)存變量

格式1:<內(nèi)存變量名>=<表達(dá)式>

格式2:STORE<表達(dá)式>TO<內(nèi)存變量名表>

功能:在定義內(nèi)存變量的同時(shí)確定內(nèi)存變量的值和類型。

例:

X=5&&定義變量X,并把數(shù)值5賦給X

STOREX+10TOY&&定義變量Y,并將表達(dá)式X+10的值賦給Y

STORE“北京”TOA,B,C&&定義變量A,B,C,并賦于相同的字符數(shù)據(jù)

X=.F.

&&重新定義變量X,并賦邏輯值2.2.2變量3.內(nèi)存變量(2)輸出內(nèi)存變量

格式1:?<表達(dá)式表>

格式2:??<表達(dá)式表>

功能:計(jì)算<表達(dá)式表>中各表達(dá)式的值并在屏幕上顯示出來。

說明:

格式1在輸出前先執(zhí)行一次回車換行,再輸出各表達(dá)式的值;格式2直接在當(dāng)前光標(biāo)所在位置處輸出表達(dá)式的值。例:X=5

STOREX+10TOY

STORE"北京"TOA,B,C

X=.F.?X,Y?A,B,C??X,Y顯示結(jié)果:(演示)2.2.2變量3.內(nèi)存變量(3)顯示或打印內(nèi)存變量

格式:LIST|DISPLAYMEMORY[LIKE<通配符>]

[TOPRINTE|TOFILE<文件名>]

功能:顯示或打印內(nèi)存變量的當(dāng)前信息。

例如,在命令窗口中輸入上述命令:

X1="123"X2=5X3=.t.然后:輸入命令:

LISTMEMORYLIKEX*

結(jié)果顯示在主窗口中。2.2.2變量注釋信息顯示所有第一個(gè)字符為X的內(nèi)存變量信息變量名作用域類型變量值數(shù)值型內(nèi)存變量的計(jì)算機(jī)內(nèi)部表示2.2.2變量3.內(nèi)存變量(4)清除內(nèi)存變量

格式1:CLEARMEMORY

格式2:RELEASE<內(nèi)存變量名表>

格式3:RELEASEALL[LIKE<通配符>|EXCEPT<通配符>]

功能:釋放所有內(nèi)存變量或指定的內(nèi)存變量。

格式4:CLEARALLCLEARALL在關(guān)閉所有文件的同時(shí)清除所有的內(nèi)存變量。

例如,RELEASEX1

&&釋放內(nèi)存變量X1

RELEASEALLLIKEX*

&&釋放所有第1個(gè)字母為X的內(nèi)存變量

RELEASEALL

&&釋放所有內(nèi)存變量

2.2.2變量4.系統(tǒng)變量:以字符“_”開頭的、由VFP系統(tǒng)自動(dòng)定義生成的變量,其名稱也是系統(tǒng)事先定義好的。

例如,_PAGENO,_ALIGNMENT

如:_screen.fontsize=16

_screen.fontbold=.t.2.2.2變量5.?dāng)?shù)組內(nèi)存中連續(xù)的一片存儲(chǔ)區(qū)域,由一組稱為數(shù)組元素的變量組成。通過賦值語句可以為各個(gè)元素分別賦值,且所賦值的數(shù)據(jù)類型可以不同。

數(shù)組變量:一組變量的集合,這些變量的數(shù)據(jù)類型可以不同,每個(gè)數(shù)組元素都可以通過一個(gè)數(shù)值下標(biāo)被引用,相當(dāng)于一個(gè)內(nèi)存變量。一維數(shù)組:各個(gè)元素按線性排列;

二維數(shù)組:類似于一個(gè)數(shù)據(jù)表,第一維是行,第二維是列。數(shù)組元素的數(shù)據(jù)類型是通過所賦值的數(shù)據(jù)類型來確定的。2.2.2變量5.?dāng)?shù)組內(nèi)存中連續(xù)的一片存儲(chǔ)區(qū)域,由一組稱為數(shù)組元素的變量組成。通過賦值語句可以為各個(gè)元素分別賦值,且所賦值的數(shù)據(jù)類型可以不同。

數(shù)組變量:一組變量的集合,這些變量的數(shù)據(jù)類型可以不同,每個(gè)數(shù)組元素都可以通過一個(gè)數(shù)值下標(biāo)被引用,相當(dāng)于一個(gè)內(nèi)存變量。一維數(shù)組:各個(gè)元素按線性排列;

二維數(shù)組:類似于一個(gè)數(shù)據(jù)表,第一維是行,第二維是列。數(shù)組元素的數(shù)據(jù)類型是通過所賦值的數(shù)據(jù)類型來確定的。數(shù)組下標(biāo)的排列規(guī)則:數(shù)組從下標(biāo)1開始排列,二維數(shù)組的元素排列是先按行排,后按列排。例:己定義了數(shù)組A(6)與數(shù)組B(2,3),它們對應(yīng)的下標(biāo)排列如下:A(6):A(1),A(2),A(3),A(4),A(5),A(6)B(2,3):B(1,1),B(1,2),B(1,3),

B(2,1),B(2,2),B(2,3)2.2.2變量

定義:DIMENSION<數(shù)組名1>(<數(shù)值表達(dá)式1>[,<數(shù)值表達(dá)式2>])[,<數(shù)組名2>(<數(shù)值表達(dá)式3>[,<數(shù)值表達(dá)式4>])]…

數(shù)組必須先定義后使用,

且使用時(shí)下標(biāo)不能出界。每個(gè)數(shù)組元素通過數(shù)組名和

相應(yīng)的下標(biāo)被引用。第1個(gè)元素第2個(gè)元素第3個(gè)元素第4個(gè)元素第5個(gè)元素第6個(gè)元素內(nèi)存中的數(shù)組元素?cái)?shù)組示意圖數(shù)組定義后,系統(tǒng)自動(dòng)給每個(gè)元素賦以邏輯假值.F.5.?dāng)?shù)組說明:

<數(shù)值表達(dá)式>為數(shù)組下標(biāo),對一維數(shù)組來說,指的是數(shù)組元素的個(gè)數(shù);對二維數(shù)組來說,指的是數(shù)組的最大行號和最大列號。

數(shù)組的下標(biāo)允許使用圓括號或方括號括起來。

在同一個(gè)數(shù)組中,不同的數(shù)組元素?cái)?shù)據(jù)類型可以不同。

數(shù)組一旦被定義之后,該數(shù)組的每個(gè)元素的初值為邏輯假值,可以使用有關(guān)的命令給數(shù)組元素賦值。示例:DIMENSIONAB(3),C[2,3]定義:DIMENSION<數(shù)組名1>(<數(shù)值表達(dá)式1>[,<數(shù)值表達(dá)式2>])[,<數(shù)組名2>(<數(shù)值表達(dá)式3>[,<數(shù)值表達(dá)式4>])]…

數(shù)組元素的賦值與普通內(nèi)存變量一樣,可以通過STORE命令或“=”來實(shí)現(xiàn)。數(shù)組的賦值例:給二維數(shù)組X和一維數(shù)組Y進(jìn)行賦值。

DIMENSIONX(3,4),Y(3)STORE5TOXY(1)=325Y(2)=“ABC”Y(3)=.T.例如,定義一個(gè)一維數(shù)組AA和一個(gè)二維數(shù)組BB

DIMENSI0NAA(5),BB(2,3)

將數(shù)值0賦給數(shù)組AA中的所有元素

STORE0TOAA將字符串xyz賦給數(shù)組元素BB(1,1)

BB(1,1)="XYZ"將數(shù)值125賦給數(shù)組元素BB(2,1)

BB(2,1)=125將邏輯真值T賦給數(shù)組元素BB(2,3)

BB(2,3)=.T.2.2.3其它數(shù)據(jù)存儲(chǔ)容器

1.字段、記錄和數(shù)據(jù)表

字段是數(shù)據(jù)表中存儲(chǔ)、處理數(shù)據(jù)的基本元素,一個(gè)具體的字段只能存儲(chǔ)一種類型的數(shù)據(jù)。

記錄是數(shù)據(jù)表中一組字段的集合,同一個(gè)數(shù)據(jù)表中所有記錄都具有相同的字段名,且同名字段在每個(gè)記錄中的數(shù)據(jù)類型、數(shù)據(jù)長度都是相同的。數(shù)據(jù)表是一系列相關(guān)數(shù)據(jù)的集合,由多條記錄構(gòu)成。

字段和記錄構(gòu)成了一個(gè)數(shù)據(jù)表的全部內(nèi)容。2.2.3其它數(shù)據(jù)存儲(chǔ)容器2.對象(Object)

對象是一個(gè)具有屬性和行為特征的實(shí)體,在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,對象是編程的基本元素,它將某一數(shù)據(jù)和使用該數(shù)據(jù)的一組基本操作或過程封裝在一起,構(gòu)成一個(gè)統(tǒng)一體。每個(gè)對象都有自己的屬性和行為特征。

2.3運(yùn)算符和表達(dá)式(1)運(yùn)算符:對相同類型數(shù)據(jù)進(jìn)行運(yùn)算操作的符號。(2)表達(dá)式:用運(yùn)算符將常量、變量、函數(shù)等數(shù)據(jù)連接起來的式子。

表達(dá)式的類型由運(yùn)算符的類型決定,每個(gè)表達(dá)式按照規(guī)定的運(yùn)算規(guī)則都產(chǎn)生一個(gè)惟一的值。

2.3.1數(shù)值運(yùn)算符及數(shù)值表達(dá)式算術(shù)運(yùn)算符

1.算術(shù)(數(shù)值)運(yùn)算符:圓括號()、乘方(**或^)、乘(*)、除(/)、模運(yùn)算或取余(%)、加(+)、減(-)

2.3.1數(shù)值運(yùn)算符及數(shù)值表達(dá)式算術(shù)運(yùn)算符

(2)數(shù)值表達(dá)式:由數(shù)值運(yùn)算符將數(shù)值型常量、變量、函數(shù)等連接起來的式子,其結(jié)果為數(shù)值型。例:5+7,70/(5+2),7*3**2

2.3.1數(shù)值運(yùn)算符及數(shù)值表達(dá)式算術(shù)運(yùn)算符

(3)運(yùn)算符的優(yōu)先順序:括號、乘方、乘除與取模、加減例:5+7,70/(5+2),7*3**2結(jié)果為:

121063

2.3.2字符運(yùn)算符及字符表達(dá)式1.字符運(yùn)算符(1)“+”運(yùn)算符:兩個(gè)字符串首尾相連形成一個(gè)新的字符串。(2)“-”運(yùn)算符:兩個(gè)字符串相連,并將前字符串尾部的空格移到合并后的新字符串的尾部。2.字符表達(dá)式:用字符串運(yùn)算符將字符型數(shù)據(jù)連接起來的式子,其結(jié)果仍是字符型數(shù)據(jù)。例如,?”ABCD”+”EFG”+”1234”

&&結(jié)果為:

?”ABCD”-”EFG”+”1234”&&結(jié)果為:ABCDEFG1234ABCDEFG12342.3.3日期運(yùn)算符及日期表達(dá)式1.日期型運(yùn)算符:加法(+)、減法(-)2.日期表達(dá)式:由日期運(yùn)算符將日期型常量、變量、函數(shù)等數(shù)據(jù)連接起來的式子,其返回結(jié)果為日期型或者數(shù)值型數(shù)據(jù)。2.3.3日期運(yùn)算符及日期表達(dá)式

例如,

?{^2010-09-08}+5

&&結(jié)果為日期

?{^2010-09-08}-5

&&結(jié)果為日期

?{^2013-07-01}-{^2010-09-08}

&&結(jié)果為天數(shù)3.日期表達(dá)式的幾種形式:<日期型數(shù)據(jù)>+<數(shù)值型數(shù)據(jù)>結(jié)果為指定日期若干天后的日期<數(shù)值型數(shù)據(jù)>+<日期型數(shù)據(jù)>

同上<日期型數(shù)據(jù)>-<數(shù)值型數(shù)據(jù)>結(jié)果為指定日期若干天前的日期<日期型數(shù)據(jù)>-<日期型數(shù)據(jù)>兩個(gè)日期相差的天數(shù)09/13/1009/03/101027

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式1.關(guān)系運(yùn)算符:如下表所示。關(guān)系運(yùn)算符

2.關(guān)系表達(dá)式:用關(guān)系運(yùn)算符將運(yùn)算元素連接起來的式子,其結(jié)果為邏輯真值(.T.)或邏輯假值(.F.)。

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式1.關(guān)系運(yùn)算符:關(guān)系運(yùn)算符

2.關(guān)系表達(dá)式:3.關(guān)系運(yùn)算符的兩邊:可以是字符表達(dá)式、數(shù)值表達(dá)式或者日期表達(dá)式,但兩邊的數(shù)據(jù)類型必須一致才能進(jìn)行比較。

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式例如:“A”>“B”、“A”<=“B”“A”=“B”、“A”<>“B”、5+6>8關(guān)系運(yùn)算符

看書中的規(guī)定

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式例如:

S1="讀者"

S2="讀者文摘"

SETEXACTON?S1=S2,S2=S1,S2==S1

&&結(jié)果是

.F..F..F.

SETEXACTOFF

?S1=S2,S2=S1,S2==S1

&&結(jié)果是

.F..T..F.關(guān)系運(yùn)算符

看書中的規(guī)定

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式例如:?“abc”>“A”&&結(jié)果是

.T.?{^2006-09-08}>{^2005-12-10}&&結(jié)果是

.T.

?“男”>“女”&&結(jié)果是

.T.

?“美國”<“中國”&&結(jié)果是

.F.

?2>=1&&結(jié)果是

.T.關(guān)系運(yùn)算符

看書中的規(guī)定

2.3.4關(guān)系運(yùn)算符和關(guān)系表達(dá)式例如:?“abc”>“A”&&結(jié)果是

.T.?{^2006-09-08}>{^2005-12-10}&&結(jié)果是

.T.

?“Pro”$“FOXPro”&&結(jié)果是

.T.關(guān)系運(yùn)算符

看書中的規(guī)定“$”字符串包含運(yùn)算符:檢測左邊的字符串是否被包含在右邊的字符串中。如果包含,返回邏輯真值(.T.),否則返回邏輯假值(.F.)?“麗”$“李小麗”&&結(jié)果是

.T.?“麗”$“李麗姍”&&結(jié)果是

.T.注意:

假設(shè)X的值為1,則

x=10?x=10

有何區(qū)別?????2.3.5邏輯運(yùn)算符和邏輯表達(dá)式1.邏輯運(yùn)算符:AND(與):兩個(gè)表達(dá)式的值均為真,結(jié)果才為真;否則為假。OR(或):兩個(gè)表達(dá)式的值均為假,結(jié)果才為假。NOT、!(非):真值變?yōu)榧僦?,假值變?yōu)檎嬷怠?yōu)先級為:NOT,AND,OR2.邏輯表達(dá)式:用邏輯運(yùn)算符將邏輯型運(yùn)算元素連接起來的式子,其結(jié)果仍是邏輯型數(shù)據(jù)。例如,

?10>5.AND.5<2,10>5.OR.5<2

&&結(jié)果為.F..T.

2.3.5邏輯運(yùn)算符和邏輯表達(dá)式3.優(yōu)先級:括號→函數(shù)→算術(shù)運(yùn)算→字符運(yùn)算→關(guān)系運(yùn)算→邏輯運(yùn)算,同級運(yùn)算從左至右順序進(jìn)行。例如,x1=3,y1=-2,x2=8,y2=-6

x1+y1>x2+y2.AND..NOT.(y1<y2)

的結(jié)果為.F.2.3.6類與對象運(yùn)算符

2.3.7名稱表達(dá)式

后面再詳細(xì)介紹2.4函數(shù)(Function)

1.函數(shù)

函數(shù)是一種能夠完成某種特定操作或功能的數(shù)據(jù)形式。一個(gè)函數(shù)可以接受一個(gè)或多個(gè)參數(shù),并通過特定的運(yùn)算返回一個(gè)值。

格式:函數(shù)名([參數(shù)1][,參數(shù)2]…)函數(shù)值:函數(shù)的運(yùn)算結(jié)果

說明:任何可以使用表達(dá)式的地方都可以使用函數(shù)。2.4函數(shù)(Function)2.函數(shù)的類型系統(tǒng)函數(shù):由VFP提供的內(nèi)部函數(shù),包括數(shù)值處理函數(shù)、字符處理函數(shù)、日期和時(shí)間處理函數(shù)、數(shù)據(jù)類型轉(zhuǎn)換函數(shù)、測試函數(shù)、其它函數(shù)等.

如:DATE()函數(shù)等

自定義函數(shù):由用戶自己定義的函數(shù)2.4.1數(shù)值處理函數(shù)

1.取整函數(shù)INT()格式:INT(<數(shù)值表達(dá)式>)功能:返回?cái)?shù)值表達(dá)式的整數(shù)部分。例:?INT(5.96)結(jié)果:

?INT(-8.66)?INT(10.98-2.43)5-882.4.1數(shù)值處理函數(shù)

2.四舍五入函數(shù)ROUND()格式:ROUND(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>)

功能:對<數(shù)值表達(dá)式1>的值進(jìn)行四舍五入運(yùn)算。例:?ROUND(345.6799,3)結(jié)果:

?ROUND(345.6799,0)?ROUND(345.6799,-2)345.6803463002.4.1數(shù)值處理函數(shù)

3.取絕對值函數(shù)ABS()格式:ABS(<數(shù)值表達(dá)式>)功能:求數(shù)值表達(dá)式的絕對值。例:?ABS(35)結(jié)果:

?ABS(-35)

35352.4.1數(shù)值處理函數(shù)

4.求最大值函數(shù)MAX()格式:MAX(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>[,<數(shù)值表達(dá)式3>…)功能:返回幾個(gè)數(shù)值表達(dá)式中最大的值。例:?MAX(10,20,30)

結(jié)果:

?MAX(-10,-20,100)

301002.4.1數(shù)值處理函數(shù)

5.求最小值函數(shù)MIN()格式:MIN(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>[,<數(shù)值表達(dá)式3>…)功能:返回幾個(gè)數(shù)值表達(dá)式中最小的值。例:?MIN(10,20,30)

結(jié)果:

?MIN(-10,-20,100)

10-202.4.1數(shù)值處理函數(shù)

6.求平方根函數(shù)SQRT()格式:SQRT(<數(shù)值表達(dá)式>)功能:返回?cái)?shù)值表達(dá)式的算術(shù)平方根。例:?SQRT(16)結(jié)果:

42.4.1數(shù)值處理函數(shù)

7.求自然對數(shù)函數(shù)LOG()格式:LOG(<數(shù)值表達(dá)式>)功能:求數(shù)值表達(dá)式的自然對數(shù)值。例:?LOG(32.78)結(jié)果:

3.492.4.1數(shù)值處理函數(shù)

8.指數(shù)函數(shù)EXP()書本錯(cuò)格式:EXP(<數(shù)值表達(dá)式>)功能:求數(shù)值表達(dá)式對于e的指數(shù)函數(shù)的值。(e數(shù)值表達(dá)式)例:?EXP(3)結(jié)果:

20.092.4.1數(shù)值處理函數(shù)

9.求余數(shù)函數(shù)MOD()格式:MOD(<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>)功能:求<數(shù)值表達(dá)式1>除以<數(shù)值表達(dá)式2>的余數(shù),且<數(shù)值表達(dá)式2>的值不能為0。說明:函數(shù)返回值的符號與<數(shù)值表達(dá)式2>的符號相同。例:?MOD(15,4),MOD(15,-4),MOD(-15,4),MOD(-15,-4)結(jié)果:

3-11-32.4.2字符處理函數(shù)

1.宏代換函數(shù)&格式:&<字符型變量>[.<字符表達(dá)式>]功能:替換一個(gè)字符型變量的內(nèi)容,即&的值是變量中的字符串。如果該函數(shù)與其后的字符無明確分界,則要用“.”作為函數(shù)結(jié)束標(biāo)識(shí)。宏替換可以嵌套使用。例:aa="bb"

結(jié)果:

bb=

"北京"?aa,bb,&aa?"&bb.是中國的首都"n="567.83"?356.08+&nbb北京北京北京是中國的首都923.912.4.2字符處理函數(shù)

2.計(jì)算字符串長度函數(shù)LEN()格式:LEN(<字符表達(dá)式>)功能:計(jì)算字符串中的字符個(gè)數(shù),返回結(jié)果為數(shù)值型。例:結(jié)果:

?LEN("ABCDF")?LEN("ABCDF")X="首都經(jīng)貿(mào)大學(xué)"?LEN(X)58122.4.2字符處理函數(shù)

3.生成空格函數(shù)SPACE()格式:SPACE(<數(shù)值表達(dá)式>)功能:產(chǎn)生由數(shù)值表達(dá)式指定數(shù)目的空格,返回結(jié)果為字符型。例:結(jié)果:

?"北京"+SPACE(3)+"首都"北京首都2.4.2字符處理函數(shù)

10.取子字符串函數(shù)SUBSTR()格式:SUBSTR(<字符表達(dá)式>,<數(shù)值表達(dá)式1>[,<數(shù)值表達(dá)式2>])功能:從指定的<字符表達(dá)式>中,截取一個(gè)子字符串。子字符串的起點(diǎn)位置由<數(shù)值表達(dá)式1>給出,截取子字符串的字符個(gè)數(shù)由<數(shù)值表達(dá)式2>給出。例:

?SUBSTR("城市經(jīng)濟(jì)",5,4)?SUBSTR("中華人民共和國",5)結(jié)果:經(jīng)濟(jì)人民共和國2.4.2字符處理函數(shù)

11.取左邊子字符串函數(shù)LEFT()格式:LEFT(<字符表達(dá)式>,<數(shù)值表達(dá)式>)功能:從指定的<字符表達(dá)式>的左邊開始截取<數(shù)值表達(dá)式>指定個(gè)數(shù)的字符。例:

?LEFT("城市經(jīng)濟(jì)",4)結(jié)果:城市2.4.2字符處理函數(shù)

12.取右邊子字符串函數(shù)RIGHT()格式:RIGHT(<字符表達(dá)式>,<數(shù)值表達(dá)式>)功能:從指定的<字符表達(dá)式>的右邊開始截取<數(shù)值表達(dá)式>指定個(gè)數(shù)的字符。例:

?RIGHT("城市經(jīng)濟(jì)",4)結(jié)果:經(jīng)濟(jì)2.4.2字符處理函數(shù)

13.子字符串位置測試函數(shù)AT()格式:AT(<子字符串>,<主字符串>[,

<數(shù)字>])功能:求<子字符串>在<主字符串>中的起始位置,函數(shù)返回值為數(shù)值型。說明:<數(shù)字>表示<子字符串>在<主字符串>中第幾次出現(xiàn),默認(rèn)為第1次.如果不在,則返回值為0.例:?AT("大學(xué)","清華大學(xué)是一所著名大學(xué)")?AT("大學(xué)","清華大學(xué)是一所著名大學(xué)",2)結(jié)果:5192.5命令2.5.1命令組成和書寫規(guī)則命令格式:命令動(dòng)詞+修飾子句1.命令動(dòng)詞

所有命令都以命令動(dòng)詞開頭,一般為一個(gè)英文動(dòng)詞,表示要執(zhí)行的命令功能。如:2.子句

用來修飾或限制命令。(1)范圍子句

指明在哪些記錄范圍內(nèi)執(zhí)行命令,有四種:

RECORD<N>

表示指定第N個(gè)記錄;

NEXT<N>

表示從當(dāng)前記錄開始的N個(gè)記錄;

ALL

表示數(shù)據(jù)庫的所有記錄;

REST

表示從當(dāng)前記錄開始到最后一個(gè)記錄。

學(xué)生RECORD<N>

表示指定第N個(gè)記錄;如:LISTRECORD5學(xué)生NEXT<N> 表示從當(dāng)前記錄開始的N個(gè)記錄;如:3LISTNEXT5學(xué)生ALL 表示數(shù)據(jù)庫的所有記錄;如:LISTALL學(xué)生REST 表示從當(dāng)前記錄開始到最后一個(gè)記錄;如:3LISTREST2.5.1命令組成和書寫規(guī)則命令格式:命令動(dòng)詞+修飾子句1.命令動(dòng)詞2.子句

用來修飾或限制命令。(2)FIELDS子句

指明對數(shù)據(jù)表中的哪些字段執(zhí)行命令。學(xué)生如:LISTALLFIELDS姓名,性別2.5.1命令組成和書寫規(guī)則命令格式:命令動(dòng)詞+修飾子句1.命令動(dòng)詞2.子句

用來修飾或限制命令。(3)FOR/WHILE子句

后面跟一個(gè)邏輯表達(dá)式,表示僅對符合條件(即表達(dá)式的結(jié)果為.T.)的記錄執(zhí)行命令操作。顯示命令范圍要顯示的字段條件LIST

ALL

FIELDS學(xué)號,姓名,出生日期

FOR性別=”女”

學(xué)生√√√√√顯示命令范圍要顯示的字段條件LIST

ALL

FIELDS學(xué)號,姓名,出生日期

FOR性別=”女”

學(xué)生顯示命令范圍要顯示的字段條件LIST

ALL

FIELDS學(xué)號,姓名,出生日期

FOR性別=”女”

結(jié)果為:2.5.1命令組成和書寫規(guī)則3.命令書寫規(guī)則(1)必須

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論