3.1 VFP6.0表
1. 表的概念
表(數(shù)據(jù)表):
是指存放在磁盤文件中的一張二維表。(相當(dāng)FoxPro 2.x 版本中的數(shù)據(jù)庫(kù))
自由表:不屬于任何數(shù)據(jù)庫(kù)的表。
數(shù)據(jù)庫(kù)表:包含在一個(gè)數(shù)據(jù)庫(kù)中的表。
表文件名:
表名可以由字母、數(shù)字或下劃線組成,系統(tǒng)自動(dòng)給出的擴(kuò)展名為 .DBF。
備注文件名:
當(dāng)表中有備注型或通用型字段時(shí),系統(tǒng)自動(dòng)生成與所屬數(shù)據(jù)表的表名相同、擴(kuò)展名為:.FPT的文件名。
表結(jié)構(gòu):存儲(chǔ)表記錄的公共結(jié)構(gòu)。(就是指一張表的表頭結(jié)構(gòu),即字段的屬性)。
記錄:表中的一行。它是多個(gè)字段的集合,同一張表的每個(gè)記錄都有相同的字段。
字段:表中的一列。它規(guī)定了數(shù)據(jù)的特征。
關(guān)系型數(shù)據(jù)表的特點(diǎn):
(1)每一個(gè)字段不可再分解,也不能有名字相同的字段;
(2)每一列中的數(shù)據(jù)都有相同的數(shù)據(jù)類型;
(3)表中沒有內(nèi)容完全相同的行(記錄)。
2. 字段的基本屬性
字段的屬性:
包括:字段名、數(shù)據(jù)類型、字段寬度、小數(shù)位數(shù)、空值支持
字段名:
即每個(gè)字段的名字,必須以字母開頭,可由字母、數(shù)字、下劃線組合而成,字母大、小寫無區(qū)別,但其中不許有空格或其它字符。自由表的字段名多由10個(gè)字符組成,數(shù)據(jù)庫(kù)表的字段名支持長(zhǎng)名,多可達(dá)128個(gè)字符。如果從數(shù)據(jù)庫(kù)中移去一個(gè)表,那么此表的長(zhǎng)字段名將被截短成 10 個(gè)字符。
VFP允許長(zhǎng)字段名和長(zhǎng)表名,但使用長(zhǎng)名稱對(duì)于跨平臺(tái)的操作可能遇到難以預(yù)料的結(jié)果。
數(shù)據(jù)類型:指該字段的數(shù)據(jù)特征。
字段寬度:指該字段所能容納數(shù)據(jù)的的大字節(jié)數(shù)。
小數(shù)位數(shù):指數(shù)值型數(shù)據(jù)將保留幾位小數(shù)。此時(shí)的字段寬度 = 整數(shù)位數(shù)+1+小數(shù)位數(shù)。
NULL 值(空值):
無明確的值。NULL 值不等同于零或空格。一個(gè) NULL 值不能認(rèn)為比某個(gè)值(包括另一個(gè) NULL 值)大或小,相等或不同。
VFP 6.0表中字段的數(shù)據(jù)類型
字段類型
代號(hào)
說明
字段寬度
使用示例
字符型
C
字母、漢字和數(shù)字型文本每個(gè)字符為1個(gè)字節(jié),多可有 254 個(gè)字符學(xué)生的學(xué)號(hào)或姓名, "8199101" 或 '李立'貨幣型
Y
貨幣單位8 個(gè)字節(jié)工資, $1246.89日期型
D
包含有年、月和日的數(shù)據(jù)8 個(gè)字節(jié)出生日期,
{^1980/07/08}
日期時(shí)間型
T
包含有年、月、日、時(shí)、分、秒的數(shù)據(jù)8 個(gè)字節(jié)上班時(shí)間,
{^2005/02/20 9:15:15 AM}
邏輯型
L
“真”或“假”的布爾值1 個(gè)字節(jié)課程是否為必修課,
.T. 或 .F.
數(shù)值型
N
整數(shù)或小數(shù)在內(nèi)存中占 8 個(gè)字節(jié);在表中占1 至20個(gè)字節(jié)考試成績(jī), 83.5雙精度型
B
雙精度浮點(diǎn)數(shù)8 個(gè)字節(jié)實(shí)驗(yàn)要求的高精度數(shù)據(jù)浮點(diǎn)型
F
與數(shù)值型一樣 整型
I
不帶小數(shù)點(diǎn)的數(shù)值4 個(gè)字節(jié)學(xué)生的數(shù)量通用型
G
OLE 對(duì)象在表中占 4 個(gè)字節(jié)圖片或聲音備注型
M
不定長(zhǎng)度的一段文字在表中占 4 個(gè)字節(jié)學(xué)生簡(jiǎn)歷字符型(二進(jìn)制)
C
任意不經(jīng)過代碼頁(yè)修改而維護(hù)的字符數(shù)據(jù)每個(gè)字符用1個(gè)字節(jié),多可有 254 個(gè)字符 備注型(二進(jìn)制)
M
任意不經(jīng)過代碼頁(yè)修改而維護(hù)的備注數(shù)據(jù)在表中占 4 個(gè)字節(jié)
3. 表的基本操作
表的創(chuàng)建:設(shè)計(jì)表名和表結(jié)構(gòu)、輸入記錄、建立索引
數(shù)據(jù)維護(hù):增加記錄、修改記錄、刪除記錄
創(chuàng)建表的主要步驟: 設(shè)計(jì)表結(jié)構(gòu) → 輸入記錄 → 建立索引 → 數(shù)據(jù)維護(hù)
4.關(guān)于表操作的幾個(gè)基本命令
命令格式
功能
CREATE 表文件名創(chuàng)建一個(gè)新的自由表的結(jié)構(gòu)USE 表文件名打開指定的表文件USE關(guān)閉當(dāng)前表文件LIST ALL顯示當(dāng)前表的全部記錄內(nèi)容(類似于DOS 命令中的dir)DISPLAY ALL分屏式地顯示當(dāng)前表的全部記錄內(nèi)容(類似于DOS中的dir/p)DISPLAY STRUCTURE顯示當(dāng)前表的結(jié)構(gòu)(分屏顯示)LIST STRUCTURE顯示當(dāng)前表的結(jié)構(gòu)(不分屏顯示)MODIFY STRUCTURE調(diào)出表設(shè)計(jì)器,修改當(dāng)前表的結(jié)構(gòu)。CLEAR清除主窗口中的所有內(nèi)容
注意:
(1)必須先打開所需的數(shù)據(jù)表才可進(jìn)行以上操作;
(2)當(dāng)帶有命令子句時(shí),只對(duì)指定的記錄進(jìn)行操作;
(3)LIST 命令的默認(rèn)范圍是所有記錄,DISPLAY 命令的默認(rèn)范圍是當(dāng)前記錄。
1. 表的概念
表(數(shù)據(jù)表):
是指存放在磁盤文件中的一張二維表。(相當(dāng)FoxPro 2.x 版本中的數(shù)據(jù)庫(kù))
自由表:不屬于任何數(shù)據(jù)庫(kù)的表。
數(shù)據(jù)庫(kù)表:包含在一個(gè)數(shù)據(jù)庫(kù)中的表。
表文件名:
表名可以由字母、數(shù)字或下劃線組成,系統(tǒng)自動(dòng)給出的擴(kuò)展名為 .DBF。
備注文件名:
當(dāng)表中有備注型或通用型字段時(shí),系統(tǒng)自動(dòng)生成與所屬數(shù)據(jù)表的表名相同、擴(kuò)展名為:.FPT的文件名。
表結(jié)構(gòu):存儲(chǔ)表記錄的公共結(jié)構(gòu)。(就是指一張表的表頭結(jié)構(gòu),即字段的屬性)。
記錄:表中的一行。它是多個(gè)字段的集合,同一張表的每個(gè)記錄都有相同的字段。
字段:表中的一列。它規(guī)定了數(shù)據(jù)的特征。
關(guān)系型數(shù)據(jù)表的特點(diǎn):
(1)每一個(gè)字段不可再分解,也不能有名字相同的字段;
(2)每一列中的數(shù)據(jù)都有相同的數(shù)據(jù)類型;
(3)表中沒有內(nèi)容完全相同的行(記錄)。
2. 字段的基本屬性
字段的屬性:
包括:字段名、數(shù)據(jù)類型、字段寬度、小數(shù)位數(shù)、空值支持
字段名:
即每個(gè)字段的名字,必須以字母開頭,可由字母、數(shù)字、下劃線組合而成,字母大、小寫無區(qū)別,但其中不許有空格或其它字符。自由表的字段名多由10個(gè)字符組成,數(shù)據(jù)庫(kù)表的字段名支持長(zhǎng)名,多可達(dá)128個(gè)字符。如果從數(shù)據(jù)庫(kù)中移去一個(gè)表,那么此表的長(zhǎng)字段名將被截短成 10 個(gè)字符。
VFP允許長(zhǎng)字段名和長(zhǎng)表名,但使用長(zhǎng)名稱對(duì)于跨平臺(tái)的操作可能遇到難以預(yù)料的結(jié)果。
數(shù)據(jù)類型:指該字段的數(shù)據(jù)特征。
字段寬度:指該字段所能容納數(shù)據(jù)的的大字節(jié)數(shù)。
小數(shù)位數(shù):指數(shù)值型數(shù)據(jù)將保留幾位小數(shù)。此時(shí)的字段寬度 = 整數(shù)位數(shù)+1+小數(shù)位數(shù)。
NULL 值(空值):
無明確的值。NULL 值不等同于零或空格。一個(gè) NULL 值不能認(rèn)為比某個(gè)值(包括另一個(gè) NULL 值)大或小,相等或不同。
VFP 6.0表中字段的數(shù)據(jù)類型
字段類型
代號(hào)
說明
字段寬度
使用示例
字符型
C
字母、漢字和數(shù)字型文本每個(gè)字符為1個(gè)字節(jié),多可有 254 個(gè)字符學(xué)生的學(xué)號(hào)或姓名, "8199101" 或 '李立'貨幣型
Y
貨幣單位8 個(gè)字節(jié)工資, $1246.89日期型
D
包含有年、月和日的數(shù)據(jù)8 個(gè)字節(jié)出生日期,
{^1980/07/08}
日期時(shí)間型
T
包含有年、月、日、時(shí)、分、秒的數(shù)據(jù)8 個(gè)字節(jié)上班時(shí)間,
{^2005/02/20 9:15:15 AM}
邏輯型
L
“真”或“假”的布爾值1 個(gè)字節(jié)課程是否為必修課,
.T. 或 .F.
數(shù)值型
N
整數(shù)或小數(shù)在內(nèi)存中占 8 個(gè)字節(jié);在表中占1 至20個(gè)字節(jié)考試成績(jī), 83.5雙精度型
B
雙精度浮點(diǎn)數(shù)8 個(gè)字節(jié)實(shí)驗(yàn)要求的高精度數(shù)據(jù)浮點(diǎn)型
F
與數(shù)值型一樣 整型
I
不帶小數(shù)點(diǎn)的數(shù)值4 個(gè)字節(jié)學(xué)生的數(shù)量通用型
G
OLE 對(duì)象在表中占 4 個(gè)字節(jié)圖片或聲音備注型
M
不定長(zhǎng)度的一段文字在表中占 4 個(gè)字節(jié)學(xué)生簡(jiǎn)歷字符型(二進(jìn)制)
C
任意不經(jīng)過代碼頁(yè)修改而維護(hù)的字符數(shù)據(jù)每個(gè)字符用1個(gè)字節(jié),多可有 254 個(gè)字符 備注型(二進(jìn)制)
M
任意不經(jīng)過代碼頁(yè)修改而維護(hù)的備注數(shù)據(jù)在表中占 4 個(gè)字節(jié)
3. 表的基本操作
表的創(chuàng)建:設(shè)計(jì)表名和表結(jié)構(gòu)、輸入記錄、建立索引
數(shù)據(jù)維護(hù):增加記錄、修改記錄、刪除記錄
創(chuàng)建表的主要步驟: 設(shè)計(jì)表結(jié)構(gòu) → 輸入記錄 → 建立索引 → 數(shù)據(jù)維護(hù)
4.關(guān)于表操作的幾個(gè)基本命令
命令格式
功能
CREATE 表文件名創(chuàng)建一個(gè)新的自由表的結(jié)構(gòu)USE 表文件名打開指定的表文件USE關(guān)閉當(dāng)前表文件LIST ALL顯示當(dāng)前表的全部記錄內(nèi)容(類似于DOS 命令中的dir)DISPLAY ALL分屏式地顯示當(dāng)前表的全部記錄內(nèi)容(類似于DOS中的dir/p)DISPLAY STRUCTURE顯示當(dāng)前表的結(jié)構(gòu)(分屏顯示)LIST STRUCTURE顯示當(dāng)前表的結(jié)構(gòu)(不分屏顯示)MODIFY STRUCTURE調(diào)出表設(shè)計(jì)器,修改當(dāng)前表的結(jié)構(gòu)。CLEAR清除主窗口中的所有內(nèi)容
注意:
(1)必須先打開所需的數(shù)據(jù)表才可進(jìn)行以上操作;
(2)當(dāng)帶有命令子句時(shí),只對(duì)指定的記錄進(jìn)行操作;
(3)LIST 命令的默認(rèn)范圍是所有記錄,DISPLAY 命令的默認(rèn)范圍是當(dāng)前記錄。