自考數據庫及其應用筆記(5)
第五章 FoxPro綜述
數據庫每一記錄更大字段數是255,可以同時打開的數據庫文件數225 ,內存變量(數組)更大數65000。
1.數據類型:(1)字符型(C-254) (2)數據型(N-20) (3)浮點型(F-20) (4)邏輯型(L-1) (5)日期型(D-8) (6)備注型(M-10) (7)通用型(G-10)
2.常量: (1)字符型 (2)數據型 (3)日期型 (4)邏輯型
3.變量:
?。?)字段變量: 字符型, 數據型, 浮點型, 邏輯型, 日期型, 備注型, 通用型
?。?)內存變量: 字符型, 數據型, 浮點型, 邏輯型,屏幕型(S)
*當字段變量與內存變量同名時,字段變量優先。但可以通過內存變量名前加上前綴M.或M->來區別。
4.運算符及其優先級
| 類別 | 符號 | 說明 | 優先級 |
| 算術運算符 | () +、- **或∧ *、/、% +、- |
括號 正、負號 乘冪 乘除、求余 加、減 |
高 底 |
| 字符串 運算符 |
+ - |
字符串聯接 字符串聯接 |
同類優先級相等 |
| 關系運算符 | 〈 〉 |
小于 大于 |
同類優先級相等 |
| 邏輯運算符 | () 。NOT。 。AND。 。OR?!?/TD> | 括號 邏輯非 邏輯與 邏輯或 |
高 底 |
5.命令格式:〈命令名〉[〈表達式表〉][〈范圍〉][FOR〈條件〉][WHILE〈條件〉][TO FILE〈文件名〉|TO PRINTER|TO ARRAY〈數組表〉|TO〈內存變量〉]ALL[LIKE|EXCEPT〈通配符〉]][IN〈別名〉]
*范圍選擇:RECORD N 對第N條記錄進行操作
NEXT N 對從當前記錄開始的N條記錄進行操作
ALL 對所有的記錄進行操作
REST 對當前記錄開始到文件結束的所有記錄進行操作
FOR〈條件〉:對所有滿足“條件”的記錄進行操作。
WHILE〈條件〉:對直到不滿足條件的記錄為止的所有已滿足條件的記錄進行操作。
6.命令的執行方式;1.立即方式 2.程序方式
7.內存變量的賦值:(1)STORE <表達式> TO <內存變量表>
?。?)<內存變量>=<表達式>
?。?)SAVE SCREEN TO <屏幕型內存變量>
RESTORE SCREEN FROM <屏幕型內存變量>
8.內存變量的釋放:(1)RELEASE<內存變量表>
?。?)RELEASE ALL [LIKE|EXCEPT<通配符>]
?。?)CLEAR MEMORY/CLEAR ALL
9.內存變量文件:(1)內存變量文件的建立
SAVE TO <內存變量文件名>[ALL[LIKE|EXCEPT<通配符>]]
(2)內存變量的恢復
RESTORE FROM<內存變量文件名>[ ADDITIVE]
ADDITIVE沒有表示清除當前內存中所有的內存變量,有時表示保留當前內存變量。
10.內存變量的顯示:(1)LIST MENORY [TO PRINT]
?。?)DISPLAY MENORY [TO PRINT]
11.內存變量的輸出:(1)(光標所在的下一行顯示)|(從當前光標所在顯示)
12.數組操作:(1)數組定義DIMENSION<數組1>(<數值表達式>…。
?。?)數組元素的賦值:STORE<表達式> TO <數組>
<數組>=<表達式>
(3)數組與數據庫文件的記錄進行數據交換
數據庫文件記錄值傳送到數組:
SCATTER [FIELDS<字段表>]TO<數組>[BIANK]|MEMVAR[BLANK]
數組中的數據傳送到數據庫文件:
GATHER FROM <數組>|MEMVAR[FLELDS<字段表>]
13.函數:
?。?) 數組函數:
絕對值函數ABS(<數值表達式>) 取整函數INT(<數值表達式>)
更大值函數MAX(N1,N2,…。) 更小值函數MIN(N1,N2,…。)
四舍五入ROUND(<數值表達式1>,<數值表達式2>)
?。?) 字符串函數:
字符串長度函數LEN(<字符表達式>) 刪除尾部空格函數TRIM(<字符表達式>) 刪除頭部空格函數LTRIM(<字符表達式>)
子字符串函數SUBSTR(<字符表達式>,<數值表達式1>,[<數值表達式2>] 子字符串查找函數AT(<字符表達式1>,<字符表達式2>)
字符串替換函數STUFF(<字符表達式1>,<數值表達式1>,<數值表達式2>,<字符表達式2>) 大寫/小寫LOWER(<字符表達式>)
小寫/大寫UPPER(<字符表達式>) 宏替換函數&<內存變量>[,<字符表達式>](其中內存變量只能是字符型)
?。?) 日期和時間函數
DATE() TIME() YEAR(<日期表達式>) MONTH(<日期表達式>)
DAY(<日期表達式>) MDY(<日期表達式>)(以月,日,年顯示的字符串)
(4) 數據類型轉換函數
字符型轉數值型函數VAL(<字符表達式>)
數值型轉字符型函數STR(<數值表達式>)[,<數值表達式2>[.<數值表達式3>]])
字符型轉日期型函數CTOD(<字符型表達式>)
日期型轉字符型函數DTOC(<日期表達式>[,1])(帶“1”表示可以進行索引的日期字符串。)
(5) 測試函數
數據類型測試函數TYPE(<字符表達式>)
測試文件尾函數EOF([<工作區號>|<文件別名>])
測試文件頭函數BOF([<工作區號>|<文件別名>])
測試當前記錄號函數RECNO([<工作區號>|<文件別名>])
測試庫文件記錄數函數RECCOUNT([<工作區號>|<文件別名>])
測試查找記錄函數FOUND([<工作區號>|<文件別名>])
測試屏幕(打印頭)光標坐標函數ROW(PROW)()與COL(PCOL()



