




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第 2章章 Visual FoxPro 程序設(shè)計基礎(chǔ)程序設(shè)計基礎(chǔ) 本章重點:本章重點: 1、掌握不同類型數(shù)據(jù)的正確表達形式。、掌握不同類型數(shù)據(jù)的正確表達形式。 2、掌握運算符的運算規(guī)則、優(yōu)先級、結(jié)合性、掌握運算符的運算規(guī)則、優(yōu)先級、結(jié)合性; 3、掌握程序設(shè)計的三種基本結(jié)構(gòu),會編寫簡單、掌握程序設(shè)計的三種基本結(jié)構(gòu),會編寫簡單的程序。的程序。第第 2章章 Visual FoxPro 程序設(shè)計基礎(chǔ)程序設(shè)計基礎(chǔ) 2.1 常量與變量常量與變量 2.2 表達式表達式 2.3 常用函數(shù)常用函數(shù) 2.4 程序與程序文件程序與程序文件 2.5 程序的基本結(jié)構(gòu)程序的基本結(jié)構(gòu) 2.6 多模塊程序設(shè)計多模塊程序設(shè)計
2、2.1 常量與變量常量與變量 2.1.1 數(shù)據(jù)類型數(shù)據(jù)類型 1.定義定義 指數(shù)據(jù)對象取值和運算的集合指數(shù)據(jù)對象取值和運算的集合; 數(shù)據(jù)類型一旦被定義,就確定了其存儲方式和數(shù)據(jù)類型一旦被定義,就確定了其存儲方式和使用方式使用方式; 2.類型類型 數(shù)值型和非數(shù)值型數(shù)值型和非數(shù)值型 3.數(shù)據(jù)基本類型數(shù)據(jù)基本類型 表創(chuàng)建時必須指明數(shù)據(jù)類型,不能改變;表創(chuàng)建時必須指明數(shù)據(jù)類型,不能改變; 變量和數(shù)組由存入其中的值決定;變量和數(shù)組由存入其中的值決定; 一、一、 字符型字符型(C:Character) 不具有計算能力的文字數(shù)據(jù)類型。不具有計算能力的文字數(shù)據(jù)類型。 由任意字符組成:由任意字符組成: 如漢字和如
3、漢字和ASCII字符集中可打印字符字符集中可打印字符(字母字符、數(shù)字字母字符、數(shù)字字符、空格、符號等字符、空格、符號等)組成,長度范圍是組成,長度范圍是0254個字個字符符 必須用定界符雙引號必須用定界符雙引號(“”)或單引號或單引號( )、 括起括起來。來。 注意注意: 必須用西文方式的單或雙引號括起。必須用西文方式的單或雙引號括起。 學(xué)號、工號、電話號碼、郵政編碼學(xué)號、工號、電話號碼、郵政編碼(看上去象數(shù)值型看上去象數(shù)值型)一般用字符型表示。一般用字符型表示。 二、二、 數(shù)值型數(shù)值型(N:Numeric) 數(shù)值型用來表示數(shù)量數(shù)值型用來表示數(shù)量. 分為以下四種類型:分為以下四種類型: (1)
4、基本數(shù)值型(基本數(shù)值型(Numeric) 由數(shù)字(由數(shù)字(09)、小數(shù)點和正負號組成。最大長度為)、小數(shù)點和正負號組成。最大長度為20位(包括位(包括、和小數(shù)點)。、和小數(shù)點)。 指數(shù)形式:例如:指數(shù)形式:例如: 123400000可以表示為:可以表示為:1.234E+8, 0.0002356可以表示為:可以表示為:2.356E-4 (2)浮點型浮點型* (F:Float) 與數(shù)值型數(shù)據(jù)完全等價與數(shù)值型數(shù)據(jù)完全等價,只是在存儲形式上采取浮點格式。只是在存儲形式上采取浮點格式。 (3)雙精度型雙精度型* (B:Double) 是更高精度的數(shù)值型數(shù)據(jù),位數(shù)固定。只用于數(shù)據(jù)表中的字段數(shù)是更高精度的數(shù)
5、值型數(shù)據(jù),位數(shù)固定。只用于數(shù)據(jù)表中的字段數(shù)據(jù)類型的定義,并采用固定長度浮點格式存儲。據(jù)類型的定義,并采用固定長度浮點格式存儲。 (4)整型整型* (I:Integer) 是不包含小數(shù)點部分的數(shù)值型數(shù)據(jù)。它只用于數(shù)據(jù)表中的字段類是不包含小數(shù)點部分的數(shù)值型數(shù)據(jù)。它只用于數(shù)據(jù)表中的字段類型的定義。整型數(shù)據(jù)以二進制形式存儲,大小占型的定義。整型數(shù)據(jù)以二進制形式存儲,大小占4個字節(jié)。個字節(jié)。 三、貨幣型三、貨幣型(Y:Currency) 描述貨幣數(shù)據(jù)(小數(shù)位數(shù)超過描述貨幣數(shù)據(jù)(小數(shù)位數(shù)超過4位四舍五入)位四舍五入) cPrice=$100.356 四、日期型四、日期型(Date) 用于表示有關(guān)日期的數(shù)據(jù)
6、:用于表示有關(guān)日期的數(shù)據(jù): birthday=1968/05/20 日期型數(shù)據(jù)以日期型數(shù)據(jù)以yyyymmdd樣式保存樣式保存,8字節(jié)字節(jié) (1)嚴格的日期格式)嚴格的日期格式 格式:格式:yyyy/mm/dd 注:花括號內(nèi)第一字符必須是脫字符注:花括號內(nèi)第一字符必須是脫字符“”; 年份必須使用年份必須使用4位;位; 年月日順序不能顛倒。年月日順序不能顛倒。 例:例:2009-09-15 (2)傳統(tǒng)日期格式)傳統(tǒng)日期格式 只能在只能在set strictdate to 0狀態(tài)下使用。狀態(tài)下使用。 系統(tǒng)默認美國日期格式系統(tǒng)默認美國日期格式mm/dd/yy年份可以是年份可以是2位也位也可以是可以是4
7、位。年月日的次序可以任意。受系統(tǒng)設(shè)置影位。年月日的次序可以任意。受系統(tǒng)設(shè)置影響,在不同狀態(tài)下,對日期的解釋不同。響,在不同狀態(tài)下,對日期的解釋不同。 例:例: 04/02/09 可以解釋為可以解釋為2009年年4月月2日日 也可以解釋為也可以解釋為2004年年2月月9日日 還可以解釋為還可以解釋為2009年年2月月4日日 (3)影響日期格式的設(shè)置命令)影響日期格式的設(shè)置命令 set mark to 日期分隔符日期分隔符 指定日期的顯示分隔符如指定日期的顯示分隔符如“-”、“.”。 注:若省略注:若省略日期分隔符日期分隔符,則用恢復(fù)系統(tǒng)默認值,則用恢復(fù)系統(tǒng)默認值“/”。 set date to
8、MDY|DMY|YMD 設(shè)置日期顯示的格式??捎玫娜掌诟袷饺缦拢涸O(shè)置日期顯示的格式。可用的日期格式如下:短語短語格式格式短語短語格式格式AMERICANmm/dd/yyANSIyy.mm.ddFRENCHdd/mm/yyGERMANdd.mm.yyITALIANdd-mm-yyJANPANyy/mm/ddUSAmm-dd-yy MDYmm/dd/yy DMYdd/mm/yy YMDyy/mm/dd 五、五、 日期時間型日期時間型(DateTime) 表述日期表述日期時間或二者兼而有之的數(shù)據(jù)時間或二者兼而有之的數(shù)據(jù) tdatetime=3/11/ 2005 10:30pm Tdateonly=3
9、/11/2005 Ttimeonly=10:30 am 日期時間型數(shù)據(jù)占日期時間型數(shù)據(jù)占8字節(jié),字節(jié),4個字節(jié)表示日期,個字節(jié)表示日期,另另4個字節(jié)表示時間個字節(jié)表示時間 日期時間型數(shù)據(jù)的缺省默認值日期時間型數(shù)據(jù)的缺省默認值: ?ctot(“03/05/2008”)、?ctot(2:40 am) 時間格式受時間格式受SET HOURS、SET SECONDS等命令的等命令的影響影響 六、六、 邏輯型邏輯型(Logical) 是描述客觀事物真假的數(shù)據(jù),用于表示邏輯判是描述客觀事物真假的數(shù)據(jù),用于表示邏輯判斷結(jié)果。斷結(jié)果。 只有真(只有真(.T.)和假()和假(.F.)兩種值,長度固定為)兩種值,
10、長度固定為1位字節(jié)。位字節(jié)。 如:是否必修課?如:是否必修課? 七、七、 備注型備注型*(Memo) 用于在表字段中存放較長的字符型數(shù)據(jù)類型。用于在表字段中存放較長的字符型數(shù)據(jù)類型。是字符型數(shù)據(jù)的特殊形式。是字符型數(shù)據(jù)的特殊形式。 沒有數(shù)據(jù)長度限制,僅受限于現(xiàn)有的磁盤空間。沒有數(shù)據(jù)長度限制,僅受限于現(xiàn)有的磁盤空間。 其字段長度固定為其字段長度固定為4位,用于存放引用信息,指位,用于存放引用信息,指向該字段的真正內(nèi)容。向該字段的真正內(nèi)容。 實際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名的備注文實際數(shù)據(jù)被存放在與數(shù)據(jù)表文件同名的備注文件中,長度根據(jù)數(shù)據(jù)的內(nèi)容而定。件中,長度根據(jù)數(shù)據(jù)的內(nèi)容而定。 八、八、 通用型
11、通用型*(General) 用于在表中存儲用于在表中存儲OLE(對象鏈接與嵌入對象鏈接與嵌入)對象對象 OLE對象可以是電子表格、文檔、圖片等。對象可以是電子表格、文檔、圖片等。 只用于數(shù)據(jù)表中的字段類型的定義。只用于數(shù)據(jù)表中的字段類型的定義。 OLE對象的實際內(nèi)容、類型和數(shù)據(jù)量則取決于連接或?qū)ο蟮膶嶋H內(nèi)容、類型和數(shù)據(jù)量則取決于連接或嵌入嵌入OLE對象的操作方式。對象的操作方式。 連接連接OLE對象方式,數(shù)據(jù)表中只包含對對象方式,數(shù)據(jù)表中只包含對OLE對象的引用說明,對象的引用說明,以及對創(chuàng)建該以及對創(chuàng)建該OLE對象的應(yīng)用程序的引用說明;對象的應(yīng)用程序的引用說明; 嵌入嵌入OLE對象方式,數(shù)據(jù)
12、表中除包含對創(chuàng)建該對象方式,數(shù)據(jù)表中除包含對創(chuàng)建該OLE對象的應(yīng)用對象的應(yīng)用程序的引用說明,還包含程序的引用說明,還包含OLE對象中的實際數(shù)據(jù)。對象中的實際數(shù)據(jù)。 長度固定為長度固定為4位,用于存放引用信息,指向該字段的真位,用于存放引用信息,指向該字段的真正內(nèi)容。正內(nèi)容。 實際數(shù)據(jù)長度僅受限于現(xiàn)有的磁盤空間。實際數(shù)據(jù)長度僅受限于現(xiàn)有的磁盤空間。 2.2.1 存儲容器名稱命名規(guī)則存儲容器名稱命名規(guī)則 2.2.2 常量(常量(Constants) 2.2.3 內(nèi)存變量(內(nèi)存變量(Variables) 2.2.4 數(shù)組(數(shù)組(Arrays) 2.2.5 字段(字段(Fields) 2.2.6 對象
13、(對象(Objects)2.2 常量和變量常量和變量 VFP允許使用常量、變量、數(shù)組、字段和對象來允許使用常量、變量、數(shù)組、字段和對象來存儲數(shù)據(jù),它們也被稱為存儲數(shù)據(jù)的容器存儲數(shù)據(jù),它們也被稱為存儲數(shù)據(jù)的容器 1.名稱中只能包含字母、下劃線、數(shù)字符號和漢字符號名稱中只能包含字母、下劃線、數(shù)字符號和漢字符號 2.名稱的開頭只能是字母、漢字、下劃線,不能是數(shù)字名稱的開頭只能是字母、漢字、下劃線,不能是數(shù)字符號符號 注意:盡可能避免下劃線作為名稱開頭注意:盡可能避免下劃線作為名稱開頭 表的字段名不能用下劃線開頭表的字段名不能用下劃線開頭 3.名稱的長度可以是名稱的長度可以是1-128個字符長度個字符
14、長度 注意:自由表字段名、索引標識名只能為注意:自由表字段名、索引標識名只能為10個字符個字符 4.應(yīng)避免使用系統(tǒng)保留字應(yīng)避免使用系統(tǒng)保留字2.1.2存儲容器名稱命名規(guī)則存儲容器名稱命名規(guī)則 1. 數(shù)值型:數(shù)值型: 由小數(shù)點、數(shù)字、正負號組成由小數(shù)點、數(shù)字、正負號組成 長度長度nVar 6.內(nèi)存變量的保存與恢復(fù)(內(nèi)存變量的保存與恢復(fù)(.mem) Save to filenameall like 通配符通配符|all except 通通配符配符 Save to mVar all like ?yan* & Restore from filename additive 7、內(nèi)存變量的顯示、內(nèi)
15、存變量的顯示 格式格式1:list memory like to printer|to file 格式格式2:display memory like to printer|to file 注:注: 1)功能:顯示內(nèi)存變量的當(dāng)前信息:變量名、作用域、類功能:顯示內(nèi)存變量的當(dāng)前信息:變量名、作用域、類型、取值。型、取值。 2)List:連屏顯示,如超過一屏,則只看到最后一屏的內(nèi)容;連屏顯示,如超過一屏,則只看到最后一屏的內(nèi)容; display:分屏顯示。:分屏顯示。 2)like:只顯示與通配符相匹配的內(nèi):只顯示與通配符相匹配的內(nèi) 存變量。存變量。 8、內(nèi)存變量的清除、內(nèi)存變量的清除 格式格式1:
16、clear memory:清除所有內(nèi)存變量:清除所有內(nèi)存變量 格式格式2:release :清除指定:清除指定 的內(nèi)存變量。的內(nèi)存變量。 格式格式3:release all like|except:清除與通配符匹配的內(nèi)存變量。清除與通配符匹配的內(nèi)存變量。 格式格式4:release all extended:清除所有的內(nèi)清除所有的內(nèi) 存變量。存變量。 例:例: 在命令窗口中輸入:在命令窗口中輸入: x1=123 x2=“abc” x3=2006/02/25 Disp memory like x? 則:在主屏幕中顯示結(jié)果為:則:在主屏幕中顯示結(jié)果為: x1 pub n 123 x2 pub c
17、“abc” x3 pub d 25/02/20062.1.5 數(shù)組數(shù)組 1. 定義定義 數(shù)組由一系列被稱為元素的有序數(shù)據(jù)值系列構(gòu)成,可以數(shù)組由一系列被稱為元素的有序數(shù)據(jù)值系列構(gòu)成,可以用序號引用這些元素。用序號引用這些元素。 數(shù)組屬于內(nèi)存變量數(shù)組屬于內(nèi)存變量 數(shù)組有一維數(shù)組和二維數(shù)組數(shù)組有一維數(shù)組和二維數(shù)組 2. 數(shù)組的聲明數(shù)組的聲明(數(shù)組的定義數(shù)組的定義) 數(shù)組使用前應(yīng)預(yù)先聲明:即數(shù)組的定義數(shù)組使用前應(yīng)預(yù)先聲明:即數(shù)組的定義 DECLARE X(5), Y(5,5) 私有數(shù)組私有數(shù)組 DIMENSION A(10),B(10,10) 私有數(shù)組私有數(shù)組 PUBLIC X(3,4) 全局數(shù)組全局
18、數(shù)組 LOCAL M(9) 局部數(shù)組局部數(shù)組 數(shù)組在聲明之后,每個元素被默認地賦予數(shù)組在聲明之后,每個元素被默認地賦予.F.值值 3. 數(shù)組元素賦值數(shù)組元素賦值 例例: Dimension arrayname6,3 Arrayname1,2=1113 可以用一個語句為所有元素賦相同的值可以用一個語句為所有元素賦相同的值 Arrayname=1113 STORE 10 TO A,B(2),M(4) 與數(shù)組相關(guān)的命令與數(shù)組相關(guān)的命令(可在數(shù)組元素與字段之間移可在數(shù)組元素與字段之間移動值動值) SCATTER、GATHER、 COPY TO ARRAY、 APPEND FROM ARRAY 4、表與
19、數(shù)組之間的數(shù)據(jù)傳遞、表與數(shù)組之間的數(shù)據(jù)傳遞 SCATTER FIELDS 字段名表字段名表 MEMOTO數(shù)組名數(shù)組名 BLANK GATHER from數(shù)組名數(shù)組名 FIELDS 字段名表字段名表 MEMO2.3 函數(shù)函數(shù) 2.3.1 概述概述 函數(shù):函數(shù): 是預(yù)先編制好的計算模塊(程序代碼)是預(yù)先編制好的計算模塊(程序代碼),可供可供VFP程程序或用戶在任何地方調(diào)用;序或用戶在任何地方調(diào)用; 函數(shù)接收一個或多個參數(shù)而返回單個值,它可函數(shù)接收一個或多個參數(shù)而返回單個值,它可嵌入到一個表達式中;嵌入到一個表達式中; 函數(shù)格式為:函數(shù)名(參數(shù))函數(shù)格式為:函數(shù)名(參數(shù)) 如如:date() bof
20、() eof() 參數(shù)是供函數(shù)或過程操作的一個值參數(shù)是供函數(shù)或過程操作的一個值 如如:space(10) 中的中的“10”即為參數(shù)即為參數(shù). 函數(shù)分系統(tǒng)函數(shù)和用戶自定義函數(shù)函數(shù)分系統(tǒng)函數(shù)和用戶自定義函數(shù) 2.3.2 系統(tǒng)函數(shù)的分類系統(tǒng)函數(shù)的分類(P46表表2-5) 數(shù)據(jù)類函數(shù)數(shù)據(jù)類函數(shù) 數(shù)據(jù)庫類函數(shù)數(shù)據(jù)庫類函數(shù) 環(huán)境類函數(shù)環(huán)境類函數(shù) 輸入輸出類函數(shù)輸入輸出類函數(shù) 程序設(shè)計類函數(shù)程序設(shè)計類函數(shù) 函數(shù):函數(shù): 是是vfp語言的重要組成部分語言的重要組成部分 一個大的一個大的Vfp應(yīng)用程序往往是由若干個過程(子程序)應(yīng)用程序往往是由若干個過程(子程序)和函數(shù)組合而成的和函數(shù)組合而成的 函數(shù)將最常用的
21、某些程序功能所對應(yīng)的命令代碼集函數(shù)將最常用的某些程序功能所對應(yīng)的命令代碼集中起來形成文件,供應(yīng)用程序隨時調(diào)用中起來形成文件,供應(yīng)用程序隨時調(diào)用 如何正確使用函數(shù)?如何正確使用函數(shù)? 熟記各函數(shù)的名稱、功能作用熟記各函數(shù)的名稱、功能作用 熟練掌握其語法結(jié)構(gòu)、參數(shù)含義熟練掌握其語法結(jié)構(gòu)、參數(shù)含義 掌握各函數(shù)的返回值內(nèi)容掌握各函數(shù)的返回值內(nèi)容2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 定義定義是指函數(shù)值為數(shù)值的一類函數(shù),它們的自變量和返回值是指函數(shù)值為數(shù)值的一類函數(shù),它們的自變量和返回值往往都是數(shù)值型數(shù)據(jù)。往往都是數(shù)值型數(shù)據(jù)。 1.1.絕對值函數(shù)絕對值函數(shù)格式:格式:ABS(ABS(數(shù)值表達式
22、數(shù)值表達式) )功能:返回指定的數(shù)值表達式的絕對值。功能:返回指定的數(shù)值表達式的絕對值。例例 ? ABS(10),ABS(-5)? ABS(10),ABS(-5)2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 2.2.求平方根函數(shù)求平方根函數(shù)格式:格式:SQRT(SQRT(數(shù)值表達式數(shù)值表達式) )功能:返回指定表達式的平方根。自變量表達式的值不功能:返回指定表達式的平方根。自變量表達式的值不能為負。能為負。例例 ? SQRT(4)? SQRT(4) 3.3.圓周率函數(shù)圓周率函數(shù)格式:格式:PI()PI()功能:返回圓周率功能:返回圓周率(數(shù)值型數(shù)值型) )。該函數(shù)沒有自變量。該函數(shù)沒有自變
23、量。SET DECIMALS TO nDecimalPlacesSET DECIMALS TO nDecimalPlaces set deci to 42.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 4.4.求整數(shù)函數(shù)求整數(shù)函數(shù)格式:格式: INT(INT(數(shù)值表達式數(shù)值表達式) ) CEILING(CEILING(數(shù)值表達式數(shù)值表達式) ) FLOOR(FLOOR(數(shù)值表達式數(shù)值表達式) )功能:功能: INT()INT()返回指定數(shù)值表達式的整數(shù)部分。返回指定數(shù)值表達式的整數(shù)部分。 CEILING()CEILING()返回大于或等于指定數(shù)值表達式的最小整數(shù)。返回大于或等于指定數(shù)值表達式的
24、最小整數(shù)。 FLOOR()FLOOR()返回小于或等于指定數(shù)值表達式的最大整數(shù)。返回小于或等于指定數(shù)值表達式的最大整數(shù)。例例 X=5.8X=5.8 ? INT(X)? INT(X);INT(-X)INT(-X);CEILING(X)CEILING(X);CEILING(-X)CEILING(-X);FLOOR(X)FLOOR(X);FLOOR(-X) FLOOR(-X) 2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 5.5.四舍五入函數(shù)四舍五入函數(shù)格式:格式: ROUND(ROUND(數(shù)值表達式數(shù)值表達式1 1,數(shù)值表達式數(shù)值表達式2 2) )功能:功能: 返回指定表達式在指定位置四舍五入
25、后的結(jié)果。返回指定表達式在指定位置四舍五入后的結(jié)果。說明:說明: 數(shù)值表達式數(shù)值表達式2 2指明四舍五入的位置。若指明四舍五入的位置。若數(shù)值表達式數(shù)值表達式2 2大大于等于于等于0 0,那么它表示的是要保留的小數(shù)位數(shù):若,那么它表示的是要保留的小數(shù)位數(shù):若數(shù)值表達式數(shù)值表達式2 2小于小于0 0,那么它表示的是整數(shù)部分的舍入位數(shù)。,那么它表示的是整數(shù)部分的舍入位數(shù)。例例 X=645.345X=645.345 ? ROUND(X,2) ROUND(X,1),ROUND(X,0),ROUND(X,-1) ? ROUND(X,2) ROUND(X,1),ROUND(X,0),ROUND(X,-1)
26、2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 6.6.求余數(shù)函數(shù)求余數(shù)函數(shù)* * * * * * 模模格式:格式: MOD(MOD(數(shù)值表達式數(shù)值表達式1 1,數(shù)值表達式數(shù)值表達式) )功能:功能: 返回兩個數(shù)值相除后的余數(shù)。返回兩個數(shù)值相除后的余數(shù)。說明:說明: 數(shù)值表達式數(shù)值表達式1 1是被除數(shù),是被除數(shù),數(shù)值表達式數(shù)值表達式2 2是除數(shù)。是除數(shù)。 余數(shù)的正負號與除數(shù)相同余數(shù)的正負號與除數(shù)相同。 如果被除數(shù)與除數(shù)同號,那么函數(shù)值即為兩數(shù)相除的余數(shù);如果被除數(shù)與除數(shù)同號,那么函數(shù)值即為兩數(shù)相除的余數(shù); 如果被除數(shù)與除數(shù)異號,則函數(shù)值為兩數(shù)相除的余數(shù)再加上除如果被除數(shù)與除數(shù)異號,則函數(shù)值為
27、兩數(shù)相除的余數(shù)再加上除數(shù)的值。數(shù)的值。例例 ? MOD(10? MOD(10,3)3),MOD(10MOD(10,-3)-3),MOD(-10MOD(-10,3)3),MOD(-10MOD(-10,-3)-3)2.3.2.1 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 7.求最大值和最小值函數(shù)求最大值和最小值函數(shù) 格式:格式: MAX(數(shù)值表達式數(shù)值表達式1,數(shù)值表達式數(shù)值表達式2,數(shù)值表達式數(shù)值表達式3 MIN(數(shù)值表達式數(shù)值表達式1,數(shù)值表達式數(shù)值表達式2,數(shù)值表達式數(shù)值表達式3 功能:功能: MAX()計算各自變量表達式的值,并返回其中的最大值。計算各自變量表達式的值,并返回其中的最大值。 MIN
28、()計算各自變量表達式的值,并返回其中的最小值。計算各自變量表達式的值,并返回其中的最小值。 說明:說明: 自變量表達式的類型可以是數(shù)值型、字符型、貨幣型、雙精度型、自變量表達式的類型可以是數(shù)值型、字符型、貨幣型、雙精度型、浮點型、日期型和浮點型、日期型和 日期時間型,但所有表達式的類型必須相同。日期時間型,但所有表達式的類型必須相同。 例例 ? MAX(8,100),MAX(8,100),MIN(工作工作,學(xué)習(xí)學(xué)習(xí),休休息息) 2.3.2.1 數(shù)值函數(shù)數(shù)值函數(shù) 8.隨機數(shù)函數(shù)隨機數(shù)函數(shù)*(參考參考) 格式:格式: RAND() 功能:功能: 返回返回01之間的隨機數(shù)。之間的隨機數(shù)。 例例 ?
29、 rand()2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù)字符函數(shù)是指自變量一般是字符型數(shù)據(jù)的函數(shù)。字符函數(shù)是指自變量一般是字符型數(shù)據(jù)的函數(shù)。 1.1.求字符串長度函數(shù)求字符串長度函數(shù)格式:格式: LEN(LEN(字符表達式字符表達式) )功能:功能: 返回指定字符表達式值的長度,即所包含的字符個數(shù)。函數(shù)值返回指定字符表達式值的長度,即所包含的字符個數(shù)。函數(shù)值為數(shù)值型。為數(shù)值型。例例 X=bookX=book ? LEN(X)? LEN(X)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 2.2.小寫轉(zhuǎn)換函數(shù)小寫轉(zhuǎn)換函數(shù)格式:格式: LOWER(LOWER(字符表達式字符表達式) )功能
30、:功能: 將指定表達式值中的大寫字母轉(zhuǎn)換成小寫字母,其將指定表達式值中的大寫字母轉(zhuǎn)換成小寫字母,其他字符不變。他字符不變。例例 ? LOWER(BOOK),LOWER(abcDeFg20)? LOWER(BOOK),LOWER(abcDeFg20)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 3.3.大寫轉(zhuǎn)換函數(shù)大寫轉(zhuǎn)換函數(shù)格式:格式: UPPER(UPPER(字符表達式字符表達式) )功能:功能: 將指定表達式值中的小寫字母轉(zhuǎn)換成大寫字母,其將指定表達式值中的小寫字母轉(zhuǎn)換成大寫字母,其他字符不變。他字符不變。例例 ? UPPER(work)? UPPER(work),UPPER(abcD
31、eFg)UPPER(abcDeFg)2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 4.空格字符串生成函數(shù)空格字符串生成函數(shù) 格式:格式: SPACE(數(shù)值表達式數(shù)值表達式) 功能:功能: 返回由指定數(shù)目的空格組成的字符串。返回由指定數(shù)目的空格組成的字符串。 5.刪除前后空格函數(shù)刪除前后空格函數(shù) 格式:格式: TRIM(字符表達式字符表達式 LTRIM(字符表達式字符表達式) ALLTRIM(字符表達式字符表達式) 功能:功能: TRIM()返回指定字符表達式值去掉尾部空格后形成的字符串。返回指定字符表達式值去掉尾部空格后形成的字符串。 LTRIM()返回指定字符表達式值去掉前導(dǎo)空格后形成的
32、字符串。返回指定字符表達式值去掉前導(dǎo)空格后形成的字符串。 ALLtRIM()返回指定字符表達式值去掉前導(dǎo)和尾部空格后形成的字返回指定字符表達式值去掉前導(dǎo)和尾部空格后形成的字符串。符串。 例例 STORE SPACE(1)+VFP+SPACE(3) TO X ? TRIM(X) +LTRIM(X)+ALLTRIM(X)6.取子串函數(shù)取子串函數(shù)格式:格式: LEFT(字符表達式字符表達式,長度長度) RIGHT(字符表達式字符表達式,長度長度) SUBSTR(字符表達式字符表達式,起始位置起始位置,長度長度)功能:功能: LEFT()從指定表達式值的左端取一個指定長度的子串作為函數(shù)值。從指定表達式
33、值的左端取一個指定長度的子串作為函數(shù)值。 RIGHT()從指定表達式值的右端取一個指定長度的子串作為函數(shù)值。從指定表達式值的右端取一個指定長度的子串作為函數(shù)值。 SUBSTR()從指定表達式的值指定起始位置取指定長度的子串作為函數(shù)值。從指定表達式的值指定起始位置取指定長度的子串作為函數(shù)值。說明:說明: 在在SUBSTR()函數(shù)中,若缺省第三個自變量函數(shù)中,若缺省第三個自變量長度長度,則函數(shù)從指定位置,則函數(shù)從指定位置一直取到最后一個字符。一直取到最后一個字符。例:例: STORE GOOD BYE! TO X ? LEFT(X,2),SUBSTR(X,6,2)+SUBSTR(X,6),RIGH
34、T(X,3) 7.計算子串出現(xiàn)次數(shù)函數(shù)計算子串出現(xiàn)次數(shù)函數(shù) 格式:格式: OCCURE(字符表達式字符表達式1,字符表達式字符表達式2) 功能:功能: 返回第一個字符串在第二個字符串中出現(xiàn)的次數(shù),函數(shù)返回第一個字符串在第二個字符串中出現(xiàn)的次數(shù),函數(shù)值為數(shù)值型。若第二個字符串不是第一個字符串的子串,值為數(shù)值型。若第二個字符串不是第一個字符串的子串,函數(shù)值為函數(shù)值為0。 例例 STORE abarabcadababcr TO X ?OCCURS(a,X),OCCURS(b,X),OCCURS(c,X),OCCURS(f,X),OCCURS(r,X) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù)
35、 8.求子串位置函數(shù)求子串位置函數(shù) 格式:格式: AT(字符表達式字符表達式1,字符表達式字符表達式2,數(shù)值表達式數(shù)值表達式) ATC(字符表達式字符表達式1,字符表達式字符表達式2,數(shù)值表達式數(shù)值表達式) 功能:功能: AT()的函數(shù)值為數(shù)值型。如果的函數(shù)值為數(shù)值型。如果字符表達式字符表達式1是是字符表達式字符表達式2的子串,則返回的子串,則返回字符表達式字符表達式1值的首字符在值的首字符在字符表達式字符表達式2值值中的位置;若不是子串,則返回中的位置;若不是子串,則返回0。 說明:說明: ATC()與與AT()功能類似,但在子串比較時不區(qū)分字母大小寫。功能類似,但在子串比較時不區(qū)分字母大小
36、寫。 第三個自變量第三個自變量數(shù)值表達式數(shù)值表達式用于表明要在用于表明要在字符表達式字符表達式2值中值中搜索搜索字符表達式字符表達式1值的第幾次出現(xiàn),其默認值是值的第幾次出現(xiàn),其默認值是1。 例例 STORE This is Visual FoxPro TO x ? AT(pro,x),ATC(fox,x),AT(is,x,3),AT(xo,x) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 9.9.子串替換函數(shù)子串替換函數(shù) 格式:格式:STUFF(STUFF(字符表達式字符表達式1 1,起始位置起始位置,長度長度,字符表達字符表達式式2 2) ) 功能:功能:用用字符表達式字符表達式2
37、2值替換值替換字符表達式字符表達式1 1中由中由起始位置起始位置和和長度長度指明的一個子串。指明的一個子串。 說明:說明:替換和被替換的字符個數(shù)不一定相等。如果替換和被替換的字符個數(shù)不一定相等。如果長度長度值是值是0 0,字字符表達式符表達式2 2則插在由則插在由起始位置起始位置指定的字符前面。如果指定的字符前面。如果字符字符表達式表達式2 2值是空串,那么值是空串,那么字符表達式字符表達式1 1中由中由起始位置起始位置和和長度長度指明的子串被刪去。指明的子串被刪去。 例例STORE GOOD BYE! TO X1STORE GOOD BYE! TO X1STORE MORNING TO X2
38、STORE MORNING TO X2? STUFF(X1,6,3,X2),STUFF(X1,1,4,X2) ? STUFF(X1,6,3,X2),STUFF(X1,1,4,X2) 2.3.2.2 2.3.2.2 字符函數(shù)字符函數(shù) 10.字符串匹配函數(shù)字符串匹配函數(shù) 格式:格式: LIKE(字符表達式字符表達式1,字符表達式字符表達式2) 功能:功能: 比較兩個字符串對應(yīng)位置上的字符,若所有對應(yīng)字符都相匹配,則比較兩個字符串對應(yīng)位置上的字符,若所有對應(yīng)字符都相匹配,則函數(shù)返回邏輯真函數(shù)返回邏輯真(.T.),否則返回邏輯假,否則返回邏輯假(.F.)。 說明:說明: 字符表達式字符表達式1中可以包
39、含通配符中可以包含通配符*和和?。*可與任何數(shù)目的字符相可與任何數(shù)目的字符相匹配,匹配,?可以與任何單個字符相匹配??梢耘c任何單個字符相匹配。 例如:例如: STORE abc TO X STORE abcd TO y ?LIKE(ab*,x),LIKE(ab*,y),LIKE(x,y),LIKE(?b?,x),LIKE(Abc,x) 11.11.字符替換函數(shù)字符替換函數(shù)格式:格式: CHRTRAN(CHRTRAN(字符表達式字符表達式1 1,字符表達式字符表達式2 2,字符表達式字符表達式3 3) )功能:功能: 當(dāng)?shù)谝粋€字符串中的一個或多個字符與第二個字符串中的某個字符相當(dāng)?shù)谝粋€字符串中的
40、一個或多個字符與第二個字符串中的某個字符相匹配時,就用第三個字符串中的對應(yīng)字符匹配時,就用第三個字符串中的對應(yīng)字符( (相同位置相同位置) )替換第一個字符替換第一個字符串中這些字符。串中這些字符。說明:說明: 如果第三個字符串包含的字符個數(shù)少于第二個字符串包含的字符個數(shù),如果第三個字符串包含的字符個數(shù)少于第二個字符串包含的字符個數(shù),因而沒有對應(yīng)字符,那么第一個字符串中相匹配的各字符將被刪除。因而沒有對應(yīng)字符,那么第一個字符串中相匹配的各字符將被刪除。如果第三個字符串包含的字符個數(shù)多于第二個字符串包含的字符個數(shù),如果第三個字符串包含的字符個數(shù)多于第二個字符串包含的字符個數(shù),多余字符被忽略。該函
41、數(shù)的自變量是三個字符表達式。多余字符被忽略。該函數(shù)的自變量是三個字符表達式。例如:例如: x1=CHRTRAN(ABACAD,ACD,X12)x1=CHRTRAN(ABACAD,ACD,X12) y1=CHRTRAN(y1=CHRTRAN(計算機計算機ABCABC, 計算機計算機 , 電腦電腦) z1=CHRTRAN(z1=CHRTRAN(大家好大家好!, 大家大家 , 您您) ? x1,y1,z1? x1,y1,z1 XBX1X2 XBX1X2 電腦電腦 ABC ABC 您好您好! ! 23.函數(shù)函數(shù)LEN(SPACE(3)-SPACE(2)的返回的返回值是值是_(23)_(11春)春) A
42、.1 B.3 C.2 D.5 23.函數(shù)函數(shù)LEN(DTOC(DATE(),1)的返回值是的返回值是 _(23)_ (10秋秋) A.1 B.4 C.8 D.10 ?mod(5,3), mod(-5,3), mod(5,-3), mod(-5,-3)2.3.2.3 2.3.2.3 日期和時間函數(shù)日期和時間函數(shù)1.系統(tǒng)日期和時間函數(shù)系統(tǒng)日期和時間函數(shù) 格式:格式: DATE() TIME() DATETIME() 功能:功能: DATE()返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期型。返回當(dāng)前系統(tǒng)日期,函數(shù)值為日期型。 TIME()以以24小時制、小時制、hh:mm:ss格式返回當(dāng)前系統(tǒng)時間,格式返回當(dāng)前系
43、統(tǒng)時間,函數(shù)值為字符型。函數(shù)值為字符型。 DATETIME()返回當(dāng)前系統(tǒng)日期時間,函數(shù)值為日期時返回當(dāng)前系統(tǒng)日期時間,函數(shù)值為日期時間型。間型。 例如:例如: ? DATE(),TIME(),DATETIME()2.3.2.3 2.3.2.3 日期和時間函數(shù)日期和時間函數(shù) 2.求年份、月份和天數(shù)函數(shù)求年份、月份和天數(shù)函數(shù) 格式:格式: YEAR(日期表達式日期表達式|日期時間表達式日期時間表達式) MONTH(日期表達式日期表達式|日期時間表達式日期時間表達式) DAY(日期表達式日期表達式|日期時間表達式日期時間表達式) 功能:功能: YEAR()從指定的日期表達式或日期時間表達式中返回年
44、份從指定的日期表達式或日期時間表達式中返回年份(如如2003)。 MONTH()從指定的日期表達式或日期時間表達式中返回月份。從指定的日期表達式或日期時間表達式中返回月份。 DAY()從指定的日期表達式或日期時間表達式中返回月里面的天數(shù)。從指定的日期表達式或日期時間表達式中返回月里面的天數(shù)。 說明:說明: 這三個函數(shù)的返回值都為數(shù)值型。這三個函數(shù)的返回值都為數(shù)值型。 例例 STORE 2001-08-25 TO d ? YEAR(d),MONTH(d),DAY(d) 2.3.2.3 2.3.2.3 日期和時間函數(shù)日期和時間函數(shù) 3.3.時、分和秒函數(shù)時、分和秒函數(shù)格式:格式: HOUR(HOU
45、R(日期時間表達式日期時間表達式) ) MINUTE(MINUTE(日期時間表達式日期時間表達式) ) SEC(SEC(日期時間表達式日期時間表達式) )功能:功能: HOUR()HOUR()從指定的日期時間表達式中返回小時部分從指定的日期時間表達式中返回小時部分(24(24小時制小時制) )。 MINUTE()MINUTE()從指定的日期時間表達式中返回分種部分。從指定的日期時間表達式中返回分種部分。 SEC()SEC()從指定的日期時間表達式中返回秒數(shù)部分。從指定的日期時間表達式中返回秒數(shù)部分。說明:說明: 這三個函數(shù)的返回值都為數(shù)值型。這三個函數(shù)的返回值都為數(shù)值型。例如:例如: STOR
46、E 2003-08-25 04:20:40 P TO tSTORE 2003-08-25 04:20:40 P TO t ? HOUR(t)? HOUR(t),MINUTE(t)MINUTE(t),SEC(t) SEC(t) 4.DOW()函數(shù)函數(shù)*格式:格式: dow(dow(日期表達式日期表達式/ /日期時間表達式日期時間表達式) )功能:功能: 從指定的日期表達式從指定的日期表達式/ /日期時間表達式返回該日期日期時間表達式返回該日期是一周的第幾天是一周的第幾天. .說明:說明: 返回值為數(shù)值型。返回值為數(shù)值型。( (注意值與星期對應(yīng)關(guān)系注意值與星期對應(yīng)關(guān)系) )例例 ? dow(dat
47、e()? dow(date()數(shù)值函數(shù)名數(shù)值函數(shù)名功能功能說明說明ABS()絕對值絕對值返回返回X的絕對值的絕對值SIGN()符號函數(shù)符號函數(shù)當(dāng)當(dāng)X為正數(shù)、負數(shù)和為正數(shù)、負數(shù)和0時返回時返回1、-1、0SQRT()平方根平方根返回返回X的平方根的平方根PI()圓周率圓周率沒有自變量,直接返回圓周率沒有自變量,直接返回圓周率INT()求整數(shù)求整數(shù)返回返回X的整數(shù)部分的整數(shù)部分CEILING()求整數(shù)求整數(shù)返回大于等于返回大于等于X的最小整數(shù)的最小整數(shù)FLOOR()求整數(shù)求整數(shù)返回小于等于返回小于等于X的最大整數(shù)的最大整數(shù)ROUND(,)四舍五入四舍五入由由Y指定指定X的舍入時小數(shù)點后的位數(shù)的舍入
48、時小數(shù)點后的位數(shù),返回返回X的四舍五入的結(jié)果。的四舍五入的結(jié)果。MOD(,)求余數(shù)求余數(shù)返回返回X除以除以Y時的余數(shù)時的余數(shù)MAX(,.)最大值最大值返回所有自變量中的最大值返回所有自變量中的最大值MIN(,.)最小值最小值返回所有自變量中的最小值返回所有自變量中的最小值函數(shù)名函數(shù)名功能功能說明說明LEN()字符串長度字符串長度返回返回X的字節(jié)數(shù)的字節(jié)數(shù).字符占字符占1個個,漢字占漢字占2個個LOWER()轉(zhuǎn)換為小寫轉(zhuǎn)換為小寫返回返回X所有英文字符轉(zhuǎn)換為小寫的字符串所有英文字符轉(zhuǎn)換為小寫的字符串UPPER()轉(zhuǎn)換為大寫轉(zhuǎn)換為大寫返回返回X所有英文字符轉(zhuǎn)換為大寫的字符串所有英文字符轉(zhuǎn)換為大寫的字
49、符串SPACE()空格字符串空格字符串返回返回Y個空格的空格字符串個空格的空格字符串TRIM()壓縮尾部空格壓縮尾部空格返回去掉返回去掉X尾部空格的字符串尾部空格的字符串LTRIM()壓縮前導(dǎo)空格壓縮前導(dǎo)空格返回去掉返回去掉X左部空格的字符串左部空格的字符串ALLTRIM()壓縮頭尾空格壓縮頭尾空格返回去掉返回去掉X頭尾空格的字符串頭尾空格的字符串LEFT(,)取左子串取左子串返回返回X從左部開始的從左部開始的Y個字符的字符串個字符的字符串RIGHT(,)取右子串取右子串返回返回X從右部開始的從右部開始的Y個字符的字符串個字符的字符串SUBSTR(,)取子串取子串返回返回X從中間從中間Y1位置
50、開始的位置開始的Y2個字符的字符串個字符的字符串AT(,) 子串位置子串位置返回返回X1在在X2中第中第Y次出現(xiàn)的首字符位置,次出現(xiàn)的首字符位置,區(qū)分大小寫區(qū)分大小寫STUFF(,)子串替換子串替換返回用返回用X2替換替換X1中從中從Y1位置開始的位置開始的Y2個字符個字符CHRTRAN(,)字符替換字符替換返回所有返回所有X2在在X1中的內(nèi)容被中的內(nèi)容被X3替換后的字符串替換后的字符串LIKE(,)字符串匹配字符串匹配返回返回X2是否和是否和X1對應(yīng)位置上的內(nèi)容匹配,對應(yīng)位置上的內(nèi)容匹配,X1可以含通配符可以含通配符函數(shù)名函數(shù)名功能功能說明說明注:注:X1,X2,X3均為字符串表達式,均為字
51、符串表達式,Y1,Y2均為數(shù)值表達式均為數(shù)值表達式函數(shù)名函數(shù)名功能功能說明說明DATE()系統(tǒng)日期系統(tǒng)日期返回系統(tǒng)日期返回系統(tǒng)日期TIME()系統(tǒng)時間系統(tǒng)時間返回系統(tǒng)時間返回系統(tǒng)時間DATETIME()系統(tǒng)日期時間系統(tǒng)日期時間返回系統(tǒng)日期時間返回系統(tǒng)日期時間YEAR()年份年份返回返回X中的年份中的年份MONTH()月份月份返回返回X中的月份中的月份DAY()天數(shù)天數(shù)返回返回X中月份里的天數(shù)中月份里的天數(shù)HOUR()小時小時返回返回Y中的小時部分(中的小時部分(24小時制)小時制)MINUTE()分鐘分鐘返回返回Y中的分鐘部分中的分鐘部分SEC()秒秒返回返回Y中的秒鐘部分中的秒鐘部分注:注:
52、X為日期型表達式或日期時間型表達式,為日期型表達式或日期時間型表達式,Y為日期時間型表達式為日期時間型表達式2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 是將某一種類型的數(shù)據(jù)轉(zhuǎn)換成另一種類型的數(shù)據(jù)。是將某一種類型的數(shù)據(jù)轉(zhuǎn)換成另一種類型的數(shù)據(jù)。 1.數(shù)值轉(zhuǎn)換成字符串?dāng)?shù)值轉(zhuǎn)換成字符串 * 格式:格式: STR(數(shù)值表達式數(shù)值表達式,長度長度,小數(shù)位數(shù)小數(shù)位數(shù)) 功能:功能: 將將數(shù)值表達式數(shù)值表達式的值轉(zhuǎn)換成字符串,轉(zhuǎn)換時根據(jù)需要自動進行四的值轉(zhuǎn)換成字符串,轉(zhuǎn)換時根據(jù)需要自動進行四舍五入。舍五入。 說明:說明: (1)返回字符串的理想長度返回字符串的理想長度L應(yīng)該是應(yīng)該是數(shù)值表
53、達式數(shù)值表達式值的整數(shù)部分位值的整數(shù)部分位數(shù)加上數(shù)加上小數(shù)位數(shù)小數(shù)位數(shù)值,再加上值,再加上1位小數(shù)點。位小數(shù)點。 (2)如果如果長度長度值大于值大于L,則字符串加前導(dǎo)空格以滿足規(guī)定的,則字符串加前導(dǎo)空格以滿足規(guī)定的長長度度要求;要求; (3)如果如果長度長度值大于等于值大于等于數(shù)值表達式數(shù)值表達式值的整數(shù)部分位數(shù)值的整數(shù)部分位數(shù)(包包括負號括負號)但又小于但又小于L,則優(yōu)先滿足整數(shù)部分而自動調(diào)整小數(shù)位數(shù);,則優(yōu)先滿足整數(shù)部分而自動調(diào)整小數(shù)位數(shù);2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)(4)(4)如果如果長度長度值小于值小于數(shù)值表達式數(shù)值表達式值的整數(shù)部分值的整數(shù)部分位數(shù)
54、,則返回一串星號位數(shù),則返回一串星號( (* *) )。(5)(5)小數(shù)位數(shù)小數(shù)位數(shù)的默認值為的默認值為0 0,長度長度的默認值為的默認值為1010。例例 STORE -834.456 TO XSTORE -834.456 TO X ? X=+STR(X? X=+STR(X,8 8,3)3) X=-834.456X=-834.456 ? STR(X? STR(X,9 9,2)2),STR(XSTR(X,6 6,2)2),(STR(X(STR(X,3)3),STR(XSTR(X,6)6),STR(X) STR(X) 2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 2.2.字符串
55、轉(zhuǎn)換成數(shù)值字符串轉(zhuǎn)換成數(shù)值格式:格式: VAL(VAL(字符表達式字符表達式) )功能:功能: 將由數(shù)字符號將由數(shù)字符號( (包括正負號、小數(shù)點包括正負號、小數(shù)點) )組成的字符型數(shù)據(jù)轉(zhuǎn)換成組成的字符型數(shù)據(jù)轉(zhuǎn)換成相應(yīng)的數(shù)值型數(shù)據(jù)。相應(yīng)的數(shù)值型數(shù)據(jù)。說明:說明: (1)(1)若字符串內(nèi)出現(xiàn)非數(shù)字字符,那么只轉(zhuǎn)換前面部分;若字符串內(nèi)出現(xiàn)非數(shù)字字符,那么只轉(zhuǎn)換前面部分; (2)(2)若字符串的首字符不是數(shù)字符號,則返回數(shù)值零若字符串的首字符不是數(shù)字符號,則返回數(shù)值零,但忽略前,但忽略前導(dǎo)空格。導(dǎo)空格。 例如:例如:STORE -6789TO xSTORE -6789TO xSTORE .23 TO
56、ySTORE .23 TO ySTORE A42TO zSTORE A42TO z? VAL(x),VAL(x+y),VAL(x+z),VAL(z+y) ? VAL(x),VAL(x+y),VAL(x+z),VAL(z+y) 2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù)3.字符串轉(zhuǎn)換成日期或日期時間字符串轉(zhuǎn)換成日期或日期時間格式:格式:CTOD(字符表達式字符表達式)CTOT(字符表達式字符表達式)功能:功能:CTOD()將將字符表達式字符表達式值轉(zhuǎn)換成日期型數(shù)據(jù)。值轉(zhuǎn)換成日期型數(shù)據(jù)。CTOT()將將字符表達式字符表達式值轉(zhuǎn)換成日期時間型數(shù)據(jù)。值轉(zhuǎn)換成日期時間型數(shù)據(jù)。說明:
57、說明:字符串中的日期部分格式要與字符串中的日期部分格式要與SET DATE TO 命令設(shè)置的格式一致。其中的年份可命令設(shè)置的格式一致。其中的年份可以用四位,也可以用兩位。如果用兩位,則世紀由以用四位,也可以用兩位。如果用兩位,則世紀由SET CENTURY TO 語句指定。語句指定。例如:例如: SET DATE TO YMD SET CENTURY ON &顯示日期或日期時間時,用顯示日期或日期時間時,用4位數(shù)顯示年分位數(shù)顯示年分 SET CENTURY TO 19 ROLLOVER 51 d1=CTOD(20030725) t1=CTOT(20030725+TIME() ? d1,
58、t1,CTOD(500101),CTOD(510101)這里,這里,SET CENTURY TO語句指定:小于語句指定:小于51的兩位數(shù)年份屬于的兩位數(shù)年份屬于21世紀世紀(19+1),而大于等,而大于等于于51的兩位數(shù)年份屬于的兩位數(shù)年份屬于20世紀世紀(19)。2.3.2.4 2.3.2.4 數(shù)據(jù)類型轉(zhuǎn)換函數(shù)數(shù)據(jù)類型轉(zhuǎn)換函數(shù) 4.4.日期或日期時間轉(zhuǎn)換成字符串日期或日期時間轉(zhuǎn)換成字符串格式:格式: DTOC(DTOC(日期表達式日期表達式| |日期時間表達式日期時間表達式,1 1) ) TTOC(TTOC(日期時間表達式日期時間表達式,1 1) )功能:功能: DTOC()DTOC()將日
59、期型數(shù)據(jù)或日期時間數(shù)據(jù)的日期部分轉(zhuǎn)換成字符串將日期型數(shù)據(jù)或日期時間數(shù)據(jù)的日期部分轉(zhuǎn)換成字符串 TTOC()TTOC()將日期時間數(shù)據(jù)轉(zhuǎn)換成字符串。將日期時間數(shù)據(jù)轉(zhuǎn)換成字符串。說明:說明: (1)(1)字符串中日期部分的格式與字符串中日期部分的格式與SET DATE TOSET DATE TO語句的設(shè)置和語句的設(shè)置和SET SET CENTURY ON|OFF(ON CENTURY ON|OFF(ON 為四位年份,為四位年份,OFFOFF為兩位數(shù)年份為兩位數(shù)年份) )語句的設(shè)語句的設(shè)置有關(guān)。置有關(guān)。 (2)(2)時間部分的格式與時間部分的格式與SET HOURS TO 12|24SET HOUR
60、S TO 12|24語句的設(shè)置有關(guān)。語句的設(shè)置有關(guān)。 (3)DTOC()(3)DTOC()函數(shù),如果使用選項函數(shù),如果使用選項1 1,則字符串的格式總是,則字符串的格式總是YYYYMMDDYYYYMMDD,共,共8 8個字符。對個字符。對TTOC()TTOC()來說,如果使用選項來說,如果使用選項1 1,則字,則字符串的格式總是為符串的格式總是為YYYYMMDDHHMMSSYYYYMMDDHHMMSS,采用,采用2424小時制,共小時制,共1414個字個字符符. .例如:例如: STORE DATETIME() TO tSTORE DATETIME() TO t ? t? t 0808252503 10:54
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保險代理合同補充協(xié)議
- 居家養(yǎng)老服務(wù)合同
- 投標保證金擔(dān)保合同
- 日元借款合同8篇
- 2025年經(jīng)典的購銷合同6篇
- 2023年高考全國乙卷理科綜合真題(解析版)
- 2025年高中化學(xué)新教材同步 必修第一冊 第4章 第1節(jié) 研究與實踐3 認識元素周期表
- 烹飪用具采購合同范本
- 無損檢測儀競爭策略分析報告
- 庫房存儲合同范本
- GB/T 42828.2-2023鹽堿地改良通用技術(shù)第2部分:稻田池塘漁農(nóng)改良
- 泡沫混凝土教學(xué)課件
- 國際反洗錢師cams考試真題中文版題庫匯總(含答案)
- DB33-T 2477-2022 消防物聯(lián)網(wǎng)系統(tǒng)對接技術(shù)規(guī)范
- (完整版)離婚協(xié)議書標準版下載
- 第三章生產(chǎn)勘探課件
- 2023年安徽高校教師崗前培訓(xùn)結(jié)業(yè)統(tǒng)考試題及參考答案
- 聽胎心音操作評分標準
- 風(fēng)機齒輪箱的機構(gòu)和工作原理
- 高效能人士的七個習(xí)慣 周計劃表 完美版
- 新生兒疾病診療規(guī)范診療指南診療常規(guī)2022版
評論
0/150
提交評論