版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 第第11章章 數(shù)據(jù)表和索引數(shù)據(jù)表和索引 表是處理數(shù)據(jù)和建立關(guān)系型數(shù)據(jù)庫及應(yīng)用程序的基本單元。表的操作包括創(chuàng)建新表、處理當(dāng)前存儲在表中的信息、定制已有的表??梢允褂盟饕龑τ涗浥判蚣翱焖偬幚怼?11.1 創(chuàng)建新表創(chuàng)建新表11.2 表的基本操作表的基本操作11.3 在表單中操作表在表單中操作表11.4 定制表定制表11.5 修改表結(jié)構(gòu)修改表結(jié)構(gòu)11.6 數(shù)據(jù)表的索引數(shù)據(jù)表的索引習(xí)題習(xí)題11 11.1 創(chuàng)建新表創(chuàng)建新表 創(chuàng)建一個(gè)VFP表,包括建立表的結(jié)構(gòu),和向表中添加記錄,就像手工制表時(shí),先畫一張含有欄目標(biāo)題的空表格,然后向表格中填寫數(shù)據(jù)。11.1.1 表的概念 數(shù)據(jù)表是一組相關(guān)聯(lián)的數(shù)據(jù)按行和列排列
2、的二維表格,簡稱為表(Table)。每個(gè)數(shù)據(jù)表均有一個(gè)表名,表11-1就是一個(gè)描述學(xué)生基本情況的“二維”表格,是一個(gè)典型的“關(guān)系”。學(xué)號姓名性別出生日期班級編號專業(yè)總學(xué)分說明照片2001220203李富強(qiáng)男08/03/1982012202計(jì)算機(jī)應(yīng)用2001220212馮見岳男06/18/1981012202計(jì)算機(jī)應(yīng)用2001160208羅海燕女12/06/1982011602國際貿(mào)易2001180105張麗萍女01/08/1982011801會計(jì)2001180102劉剛男07/13/1982011801會計(jì)2001160211趙江山男05/16/1982011602國際貿(mào)易2001160221
3、許海霞女02/12/1981011602國際貿(mào)易2001220115王春雷男10/20/1981012201計(jì)算機(jī)應(yīng)用2001220207李家富男03/13/1982012202計(jì)算機(jī)應(yīng)用2001220215張仙見女09/21/1981012202計(jì)算機(jī)應(yīng)用 在在VFP中,表中的每一列都是一個(gè)字段,第一行中的每一項(xiàng)是相應(yīng)字段的字中,表中的每一列都是一個(gè)字段,第一行中的每一項(xiàng)是相應(yīng)字段的字段名;第一行以下的每一行都是一條記錄;表格的表頭可以看作段名;第一行以下的每一行都是一條記錄;表格的表頭可以看作VFP的表名。的表名。11.1.2 表的結(jié)構(gòu)設(shè)計(jì)表的結(jié)構(gòu)設(shè)計(jì) 表在計(jì)算機(jī)內(nèi)以文件形式出現(xiàn),其類型為
4、表在計(jì)算機(jī)內(nèi)以文件形式出現(xiàn),其類型為“.DBF”,表名就是文件名,其命名,表名就是文件名,其命名按文件名要求。按文件名要求。 表的結(jié)構(gòu)設(shè)計(jì)包括定義:字段名、字段類型、字段長度(數(shù)值型還需要定義小表的結(jié)構(gòu)設(shè)計(jì)包括定義:字段名、字段類型、字段長度(數(shù)值型還需要定義小數(shù)位數(shù))。數(shù)位數(shù))。1. 字段名字段名 字段名即表的欄目名或關(guān)系的屬性名,可以用來引用該列數(shù)據(jù)。命名要求:字段名即表的欄目名或關(guān)系的屬性名,可以用來引用該列數(shù)據(jù)。命名要求: 漢字或字母開頭,由漢字、字母、數(shù)字和下劃線組成,如漢字或字母開頭,由漢字、字母、數(shù)字和下劃線組成,如“學(xué)號學(xué)號”、“Name”、“工資工資1”、“X_1”等是符合要
5、求的,而等是符合要求的,而“說說 明明”、“1-1”等不能作等不能作為字段名使用。為字段名使用。 自由表字段名長度不能超過自由表字段名長度不能超過10個(gè)字符,數(shù)據(jù)庫表字段名最長可使用個(gè)字符,數(shù)據(jù)庫表字段名最長可使用128個(gè)字個(gè)字符。符。 不能使用保留字。不能使用保留字。 同一表中字段名不允許重復(fù)。同一表中字段名不允許重復(fù)。 字段名最好能簡要說明該字段的意義,如字段名最好能簡要說明該字段的意義,如“姓名姓名”欄可以用欄可以用“姓名姓名”、“name”或或“xm”作為字段名。作為字段名。2. 字段類型和寬度字段類型和寬度 表中的每一個(gè)字段都有特定的數(shù)據(jù)類型??梢詫⒆侄蔚臄?shù)據(jù)類型設(shè)置為表表中的每一個(gè)
6、字段都有特定的數(shù)據(jù)類型??梢詫⒆侄蔚臄?shù)據(jù)類型設(shè)置為表11-2中的任意一種。中的任意一種。 類型代號說明字段寬度字符型C漢字或字符最多254個(gè)字符,漢字占2個(gè)字符數(shù)值型N整數(shù)或小數(shù)最多20位,小數(shù)點(diǎn)和正負(fù)號各占一位貨幣型Y保留4位小數(shù)8個(gè)字節(jié)日期型D格式為MM/DD/YY8個(gè)字節(jié)日期時(shí)間型T日期和時(shí)間8個(gè)字節(jié)邏輯型L邏輯值“真”或“假”1個(gè)字節(jié)浮點(diǎn)型F整數(shù)或小數(shù),同數(shù)值型整型整型I存放整數(shù)4個(gè)字節(jié)雙精度型B存放精度較高的數(shù)值8個(gè)字節(jié)備注型備注型M接收字符型數(shù)據(jù),存放在文件名與表明相同的“. FPT”文件中4個(gè)字節(jié)通用型通用型G存放圖形、聲音等OLE對象(對象鏈接與嵌入),與備注型存放位置相同4個(gè)
7、字節(jié)字符型(二進(jìn)制)同前述“字符型”,但是當(dāng)代碼頁更改時(shí)字符值不變同“字符型”備注型(二進(jìn)制)同前述“備注型”,但是當(dāng)代碼頁更改時(shí)備注不變同“備注型” 說明: 備注型和通用型數(shù)據(jù)與其他數(shù)據(jù)并不存放在一起,而是存放在與表同名的.FPT文件中。由此可以設(shè)計(jì)表11-1的結(jié)構(gòu),見表11-3。字段名字段類型寬度說明xh字符型10學(xué)號xm字符型6姓名xb邏輯型1性別csrq日期型8出生日期zy字符型20專業(yè)bjbh字符型4班級編號zxf數(shù)值型5.1總學(xué)分sm備注型4說明zp通用型4照片表名為:xs.dbf 上述結(jié)構(gòu)可以表示為:xs(xh(C,10), xm(C,6), xb(L), csrq(D), zy
8、(C,20), bjbh(C, 4), zxf(N, 5.1), sm(M), zp(G)。 11.1.3 使用表設(shè)計(jì)器使用表設(shè)計(jì)器 在在VFP中,創(chuàng)建表的工具有表向?qū)Ш捅碓O(shè)計(jì)器。一般使用中,創(chuàng)建表的工具有表向?qū)Ш捅碓O(shè)計(jì)器。一般使用“表設(shè)計(jì)表設(shè)計(jì)器器”。1. 創(chuàng)建新表創(chuàng)建新表 表設(shè)計(jì)器可以完成創(chuàng)建新表的全過程,其操作步驟為:表設(shè)計(jì)器可以完成創(chuàng)建新表的全過程,其操作步驟為: 從從“文件文件” 菜單菜單“新建新建” 選擇選擇“表表”,然后單擊,然后單擊“新建文件新建文件” 2. 向表中添加記錄向表中添加記錄 若要向表中添加記錄:若要向表中添加記錄: 從從“文件文件”菜單菜單“打開打開”命令,或者單
9、擊常用工具欄上的命令,或者單擊常用工具欄上的“打開打開”按鈕。按鈕。 在在“打開打開”對話框中對話框中選擇選擇“文件類型文件類型”為為“表(表(*.dbf)”,選擇,選擇表所在的文件夾,找到表文件后,雙擊要打開的表。表所在的文件夾,找到表文件后,雙擊要打開的表。 在在“顯示顯示”菜單中菜單中選擇選擇“瀏覽瀏覽”命令命令 再次打開再次打開“顯示顯示”菜單菜單選擇選擇“追加方式追加方式” 在在“瀏覽瀏覽”(圖(圖11-6左)或左)或“編輯編輯”(圖(圖11-6右)窗口中輸入新的記錄。右)窗口中輸入新的記錄。 11.1.4 使用命令使用命令 在命令窗口中或是在代碼中使用命令,更能發(fā)揮在命令窗口中或是
10、在代碼中使用命令,更能發(fā)揮VFP的強(qiáng)大的強(qiáng)大功能。功能。1. Visual FoxPro的語法規(guī)則的語法規(guī)則 VFP的命令由命令名和一些命令短語組成。只要符合的命令由命令名和一些命令短語組成。只要符合VFP的的語法規(guī)則,就可以用命令名和短語組合成多種命令,所以掌握語法規(guī)則,就可以用命令名和短語組合成多種命令,所以掌握語法規(guī)則十分重要。語法規(guī)則十分重要。 對記錄操作命令的一般格式為:對記錄操作命令的一般格式為:命令名命令名 范圍范圍 FIELDS 字段名表字段名表 FOR | WHILE 條件條件 選項(xiàng)說明ALL對全部記錄進(jìn)行操作對全部記錄進(jìn)行操作NEXTn只對包括當(dāng)前記錄在內(nèi)的以下連續(xù)的只對包
11、括當(dāng)前記錄在內(nèi)的以下連續(xù)的n個(gè)記錄進(jìn)行操作個(gè)記錄進(jìn)行操作RECORDn只對第只對第n號記錄進(jìn)行操作號記錄進(jìn)行操作REST只對當(dāng)前記錄起到文件尾的所有記錄進(jìn)行操作只對當(dāng)前記錄起到文件尾的所有記錄進(jìn)行操作 2. 創(chuàng)建新表CREATE新表文件名新表文件名打開打開“表設(shè)計(jì)器表設(shè)計(jì)器”,創(chuàng)建一個(gè)新的表文件結(jié)構(gòu)。,創(chuàng)建一個(gè)新的表文件結(jié)構(gòu)。使用下述使用下述SQL命令可以不使用命令可以不使用“表設(shè)計(jì)器表設(shè)計(jì)器”,直接創(chuàng)建表結(jié)構(gòu):,直接創(chuàng)建表結(jié)構(gòu):CREATE TABLE 新表文件名新表文件名(字段名字段名1類型類型(長長度度),字段名字段名2類型類型(長度長度)【例【例11-1】在命令窗口輸入以下命令:】在命
12、令窗口輸入以下命令:CREATE TABLE Student(xh c(10), xm c(6), xb l, csrq d(8), zy c(20), sm m, zp g) 可以建立包含可以建立包含xh、xm、xb、csrq、zy、sm、zp等字段的等字段的一個(gè)新的數(shù)據(jù)表一個(gè)新的數(shù)據(jù)表Student.dbf。 3. 打開與關(guān)閉表打開與關(guān)閉表 打開與關(guān)閉表都是使用打開與關(guān)閉表都是使用USE命令,其格式為:命令,其格式為:USE 表文件名表文件名使用不帶參數(shù)的使用不帶參數(shù)的USE命令可以關(guān)閉已打開的數(shù)據(jù)命令可以關(guān)閉已打開的數(shù)據(jù)表。表。 4. 添加記錄添加記錄 使用使用APPEND命令可以向打開
13、的數(shù)據(jù)表中添加記錄。命令可以向打開的數(shù)據(jù)表中添加記錄。使用使用APPEND BLANK命令可以在打開的數(shù)據(jù)表中添加一命令可以在打開的數(shù)據(jù)表中添加一個(gè)空白記錄。個(gè)空白記錄。 5. 復(fù)制表復(fù)制表 使用使用COPY TO命令可以將當(dāng)前數(shù)據(jù)表中指定范圍內(nèi)所有命令可以將當(dāng)前數(shù)據(jù)表中指定范圍內(nèi)所有符合條件的記錄復(fù)制到新的表文件中,新文件結(jié)構(gòu)僅包含指符合條件的記錄復(fù)制到新的表文件中,新文件結(jié)構(gòu)僅包含指定的字段。其命令格式為:定的字段。其命令格式為:COPY TO 新文件名新文件名 范圍范圍 FOR | WHILE 條條件件 FIELDS 字段名表字段名表 說明:說明: 新文件名可省略擴(kuò)展名新文件名可省略擴(kuò)展
14、名.DBF,條件為邏輯表達(dá),條件為邏輯表達(dá)式。式。 若缺省若缺省FOR|WHILE條件,則范圍默認(rèn)為條件,則范圍默認(rèn)為ALL,即將所有記錄復(fù)制到新表中。即將所有記錄復(fù)制到新表中。 若缺省若缺省FIELDS字段名表,則新文件保留全部字段。字段名表,則新文件保留全部字段。 若所有可選項(xiàng)都缺省,則原樣復(fù)制表文件。若所有可選項(xiàng)都缺省,則原樣復(fù)制表文件。 若原文件帶有備注型字段,則其相伴的備注文件(擴(kuò)展若原文件帶有備注型字段,則其相伴的備注文件(擴(kuò)展名為名為.FPT)也同時(shí)被復(fù)制。)也同時(shí)被復(fù)制。 11.2 表的基本操作表的基本操作 表的基本操作包括查看記錄、編輯記錄、增加記錄、刪表的基本操作包括查看記
15、錄、編輯記錄、增加記錄、刪除記錄以及記錄指針的定位。除記錄以及記錄指針的定位。11.2.1 使用使用“瀏覽瀏覽”窗口窗口 使用使用“瀏覽瀏覽”窗口可以完成所有對表中記錄的基本操作。窗口可以完成所有對表中記錄的基本操作。1. “瀏覽瀏覽”窗口窗口2. “表表”菜單菜單 一旦打開一旦打開“瀏覽瀏覽”窗口,系統(tǒng)菜單中將增加一個(gè)窗口,系統(tǒng)菜單中將增加一個(gè)“表表”菜單,如圖菜單,如圖11-10所示。所示。“表表”菜單中包括所有對表的基本菜單中包括所有對表的基本操作,選擇相應(yīng)的子菜單項(xiàng),按照屏幕提示,即可完成各操作,選擇相應(yīng)的子菜單項(xiàng),按照屏幕提示,即可完成各項(xiàng)操作。項(xiàng)操作。3. 轉(zhuǎn)到記錄轉(zhuǎn)到記錄4. 編
16、輯字段編輯字段5. 添加新記錄添加新記錄6. 刪除記錄刪除記錄 11.2.3 使用命令使用命令 可以直接在命令窗口或者在程序中使用VFP命令來完成對表中數(shù)據(jù)的各項(xiàng)基本操作。1. 打開瀏覽窗口 使用BROWSE命令可以打開瀏覽窗口,其格式為:BROWSE FIELDS 字段名表字段名表 LOCK 表達(dá)表達(dá)式式FREEZE 字段名字段名 .例例:BROWS FIELDS 姓名姓名,期中期中BROW LOCK 2 BROWSE FREEZE 期中期中 2. 查看記錄查看記錄 還可以在還可以在VFP主窗口或用戶自定義窗口(如表單)中顯主窗口或用戶自定義窗口(如表單)中顯示當(dāng)前表中的記錄。顯示命令有兩個(gè)
17、,其格式分別是:示當(dāng)前表中的記錄。顯示命令有兩個(gè),其格式分別是:LIST 范圍范圍 FIELDS 字段名表字段名表 FOR | WHILE 條件條件 OFFTO PRINTDISPLAY 范圍范圍 FIELDS 字段名表字段名表 FOR | WHILE 條件條件 OFFTO PRINT3. 編輯編輯 使用命令使用命令EDIT,可以打開,可以打開“編輯編輯”窗口,編輯已打開的窗口,編輯已打開的數(shù)據(jù)表。其格式為:數(shù)據(jù)表。其格式為:EDIT 范圍范圍 FIELDS 字段名表字段名表 FOR | WHILE 條件條件 說明:范圍項(xiàng)缺省時(shí),系統(tǒng)默認(rèn)為說明:范圍項(xiàng)缺省時(shí),系統(tǒng)默認(rèn)為ALL,在滿足條,在滿足
18、條件的記錄范圍內(nèi)可前后翻頁。件的記錄范圍內(nèi)可前后翻頁。EDIT FIELDS 姓名姓名,期中期中 4. 記錄定位記錄定位 記錄定位是指根據(jù)需要將記錄指針移到指定記錄,使之成為當(dāng)前記錄,記錄定位是指根據(jù)需要將記錄指針移到指定記錄,使之成為當(dāng)前記錄,以便對之操作。以便對之操作。 文件的首記錄又稱為文件的首記錄又稱為TOP,尾記錄稱為,尾記錄稱為BOTTOM。用。用USE命令打開數(shù)據(jù)命令打開數(shù)據(jù)庫時(shí),指針總是指向第一條記錄(庫時(shí),指針總是指向第一條記錄(TOP)。)。 可以在命令窗口或程序中使用命令來移動記錄指針。移動記錄指針的命可以在命令窗口或程序中使用命令來移動記錄指針。移動記錄指針的命令分為絕
19、對移動(令分為絕對移動(GO)和相對移動()和相對移動(SKIP)兩種,其格式如下:)兩種,其格式如下: (1) 絕對移動絕對移動 絕對移動記錄指針的命令格式為:絕對移動記錄指針的命令格式為:GO BOTTOM | TOP | 記錄號記錄號 其中其中BOTTOM表示末記錄,表示末記錄,TOP表示首記錄,記錄號可以是數(shù)值表表示首記錄,記錄號可以是數(shù)值表達(dá)式,按四舍五入取整數(shù),但是必須保證其值為正數(shù)且位于有效的記錄數(shù)范達(dá)式,按四舍五入取整數(shù),但是必須保證其值為正數(shù)且位于有效的記錄數(shù)范圍之內(nèi)。圍之內(nèi)。 (2) 相對移動相對移動 相對移動記錄指針的格式為:相對移動記錄指針的格式為:SKIP n | -
20、n 其中其中n為數(shù)值表達(dá)式,四舍五入取整數(shù)。若是正數(shù),向記錄號增加的方向?yàn)閿?shù)值表達(dá)式,四舍五入取整數(shù)。若是正數(shù),向記錄號增加的方向移動,若是負(fù)數(shù),向記錄號減少的方向移動。移動,若是負(fù)數(shù),向記錄號減少的方向移動。 5. 使用批替換命令使用批替換命令 批替換命令批替換命令REPLACE可對字段內(nèi)容成批自動地進(jìn)行修改可對字段內(nèi)容成批自動地進(jìn)行修改(替換),而不必在編輯狀態(tài)下逐條修改。批替換命令的語(替換),而不必在編輯狀態(tài)下逐條修改。批替換命令的語法格式為:法格式為:REPLACE 范圍范圍字段名字段名1 WITH 表達(dá)式表達(dá)式1,字段名字段名2 WITH 表達(dá)式表達(dá)式2. FOR | WHILE
21、條件條件 說明:說明: 若無范圍項(xiàng),則只對當(dāng)前記錄操作。若無范圍項(xiàng),則只對當(dāng)前記錄操作。 對指定范圍內(nèi)滿足條件的各記錄,以表達(dá)式對指定范圍內(nèi)滿足條件的各記錄,以表達(dá)式1的值的值替換字段名替換字段名1的內(nèi)容,表達(dá)式的內(nèi)容,表達(dá)式2的值替換字段名的值替換字段名2的內(nèi)容的內(nèi)容 (備注型字段除外)。(備注型字段除外)。例例:修改總成績修改總成績REPL ALL 總成績總成績 WITH 期中期中*0.3+平時(shí)平時(shí)+期末期末*0.6 6. 在表中添加新記錄在表中添加新記錄 (1) 使用使用APPEND命令命令 APPEND命令可以在表的尾部添加新的記錄,其格式為:命令可以在表的尾部添加新的記錄,其格式為:
22、APPEND BLANK 說明:如果缺省說明:如果缺省BLANK選項(xiàng),系統(tǒng)按選項(xiàng),系統(tǒng)按“追加方式追加方式”打開打開“瀏覽瀏覽”或或“編輯編輯”窗口,為數(shù)據(jù)表添加新記錄。如果有窗口,為數(shù)據(jù)表添加新記錄。如果有BLANK選項(xiàng),則在表的尾部添加一個(gè)空記錄而不打開選項(xiàng),則在表的尾部添加一個(gè)空記錄而不打開“瀏覽瀏覽”或或“編輯編輯”窗口。窗口。 若要從其他表中追加記錄,可以使用如下格式的命令:若要從其他表中追加記錄,可以使用如下格式的命令:APPEND FROM 表文件名表文件名 FOR 邏輯表達(dá)式邏輯表達(dá)式 (2) 使用使用INSERT命令命令 INSERT命令可以在表的任何位置插入一條新的記錄命令
23、可以在表的任何位置插入一條新的記錄:INSERT BLANK BEFORE 說明:若無說明:若無BLANK選項(xiàng),系統(tǒng)打開選項(xiàng),系統(tǒng)打開“瀏覽瀏覽”或或“編輯編輯”窗窗口,在當(dāng)前記錄后(無口,在當(dāng)前記錄后(無BEFORE)或在當(dāng)前記錄前(有)或在當(dāng)前記錄前(有BEFORE)為數(shù)據(jù)表插入新記錄;若有)為數(shù)據(jù)表插入新記錄;若有BLANK選項(xiàng),則插入選項(xiàng),則插入一條空記錄而不打開一條空記錄而不打開“瀏覽瀏覽”或或“編輯編輯”窗口。窗口。 7. 刪除記錄刪除記錄 (1) 邏輯刪除記錄邏輯刪除記錄 邏輯刪除記錄命令可以對數(shù)據(jù)表中指定范圍內(nèi)滿足條件的記錄加注刪除邏輯刪除記錄命令可以對數(shù)據(jù)表中指定范圍內(nèi)滿足條
24、件的記錄加注刪除標(biāo)記,其格式為:標(biāo)記,其格式為:DELETE 范圍范圍 FOR 條件條件 (2) 恢復(fù)邏輯刪除的記錄恢復(fù)邏輯刪除的記錄 使用撤銷標(biāo)記命令,可以恢復(fù)邏輯刪除的記錄,其格式為:使用撤銷標(biāo)記命令,可以恢復(fù)邏輯刪除的記錄,其格式為:RECALL 范圍范圍 FOR 條件條件 (3) 物理刪除加注刪除標(biāo)記的記錄物理刪除加注刪除標(biāo)記的記錄 可以將數(shù)據(jù)表中所有具有刪除標(biāo)記的記錄正式從表文件中刪掉??梢詫?shù)據(jù)表中所有具有刪除標(biāo)記的記錄正式從表文件中刪掉。其格式為:其格式為:PACK (4) 直接刪除所有記錄直接刪除所有記錄 直接刪除所有記錄命令可以一次刪除數(shù)據(jù)表中的全部記錄,但保留表結(jié)直接刪除所
25、有記錄命令可以一次刪除數(shù)據(jù)表中的全部記錄,但保留表結(jié)構(gòu)。其格式為:構(gòu)。其格式為:ZAP 說明:本命令等價(jià)于說明:本命令等價(jià)于DELETE ALL與與PACK連用,但速度更快。屬于物連用,但速度更快。屬于物理刪除命令,一旦執(zhí)行,無法恢復(fù)。理刪除命令,一旦執(zhí)行,無法恢復(fù)。 11.4 定制表定制表 可以在表中設(shè)置一個(gè)過濾器來定制自己的表,有選擇地顯可以在表中設(shè)置一個(gè)過濾器來定制自己的表,有選擇地顯示某些記錄。還可以通過設(shè)置字段過濾器,對表中的某些字示某些記錄。還可以通過設(shè)置字段過濾器,對表中的某些字段的訪問進(jìn)行限制,這樣可以選擇顯示哪些字段。段的訪問進(jìn)行限制,這樣可以選擇顯示哪些字段。11.4.1
26、篩選表篩選表1. 使用使用“瀏覽瀏覽”窗口窗口從從“表表”菜單菜單 “屬性屬性”命令。在命令。在“工作區(qū)屬性工作區(qū)屬性” “數(shù)數(shù)據(jù)過濾器據(jù)過濾器”框內(nèi)輸入篩選表達(dá)式框內(nèi)輸入篩選表達(dá)式2. 使用命令使用命令語法格式為:語法格式為:SET FILTER TO 邏輯表達(dá)式邏輯表達(dá)式如果要關(guān)閉當(dāng)前表的篩選條件,可以執(zhí)行不帶表達(dá)式的如果要關(guān)閉當(dāng)前表的篩選條件,可以執(zhí)行不帶表達(dá)式的SET FILTER TO命令。命令。例例:set filter to 團(tuán)員否團(tuán)員否 11.4.2 限制對字段的訪問限制對字段的訪問 在表單中瀏覽或使用表時(shí),若想只顯示某些字段,可以在表單中瀏覽或使用表時(shí),若想只顯示某些字段,可
27、以設(shè)置字段篩選來限制對某些字段的訪問。選出要顯示的字段設(shè)置字段篩選來限制對某些字段的訪問。選出要顯示的字段后,剩下的字段就不可訪問了。后,剩下的字段就不可訪問了。1. 使用使用“字段選擇器字段選擇器”從從“表表” “屬性屬性”命令命令“字段篩選指定的字段字段篩選指定的字段” 單擊單擊“字段篩選字段篩選”按鈕,打開按鈕,打開“字段選擇器字段選擇器”對話框。對話框。 2. 使用命令使用命令 可以使用如下格式的命令限制對字段的訪問:可以使用如下格式的命令限制對字段的訪問:SET FIELDS TO ALL |字段名表字段名表 其中字段名表是希望訪問的字段名稱列表,各字段其中字段名表是希望訪問的字段名
28、稱列表,各字段之間用之間用“,”分開。分開。ALL選項(xiàng)將取消所有的限制,而顯示所選項(xiàng)將取消所有的限制,而顯示所有的字段。有的字段。 11.5 修改表結(jié)構(gòu)修改表結(jié)構(gòu)建立表之后,還可以修改表的結(jié)構(gòu)和屬性。例如可能要添加或建立表之后,還可以修改表的結(jié)構(gòu)和屬性。例如可能要添加或刪除字段,更改字段的名稱、寬度、數(shù)據(jù)類型,改變默認(rèn)值或刪除字段,更改字段的名稱、寬度、數(shù)據(jù)類型,改變默認(rèn)值或規(guī)則或添加注釋、標(biāo)題等。規(guī)則或添加注釋、標(biāo)題等。 可以打開可以打開“表設(shè)計(jì)器表設(shè)計(jì)器”修改表的結(jié)構(gòu),也可以使用修改表的結(jié)構(gòu),也可以使用ALTER TABLE命令以編程方式來更改表的結(jié)構(gòu)。當(dāng)然,在修改表結(jié)命令以編程方式來更改
29、表的結(jié)構(gòu)。當(dāng)然,在修改表結(jié)構(gòu)前,必須獨(dú)占地訪問該表。構(gòu)前,必須獨(dú)占地訪問該表。11.5.1 使用表設(shè)計(jì)器使用表設(shè)計(jì)器打開表設(shè)計(jì)器打開表設(shè)計(jì)器:MODIFY STRUCTURE復(fù)制表結(jié)構(gòu)復(fù)制表結(jié)構(gòu):COPY STRUCTURE TO 表文件名表文件名 11.5.2 以編程方式修改表結(jié)構(gòu)以編程方式修改表結(jié)構(gòu) 可以在程序中使用可以在程序中使用ALTER TABLE命令直接修改數(shù)據(jù)表的結(jié)構(gòu)。命令直接修改數(shù)據(jù)表的結(jié)構(gòu)。ALTER TABLE命令提供了擴(kuò)展子句,能夠添加或去掉字段,創(chuàng)建或去掉主關(guān)鍵字、命令提供了擴(kuò)展子句,能夠添加或去掉字段,創(chuàng)建或去掉主關(guān)鍵字、惟一關(guān)鍵字或外部關(guān)鍵字標(biāo)識,并重新命名已有的字
30、段。有些子句僅適用于惟一關(guān)鍵字或外部關(guān)鍵字標(biāo)識,并重新命名已有的字段。有些子句僅適用于與數(shù)據(jù)庫相關(guān)聯(lián)的表。與數(shù)據(jù)庫相關(guān)聯(lián)的表。 ALTER TABLE命令的語法格式較長,第命令的語法格式較長,第14章中將給出完整的格式。下面章中將給出完整的格式。下面僅給出幾個(gè)簡單的例子。僅給出幾個(gè)簡單的例子。1. 給表添加字段給表添加字段 使用使用ALTER TABLE命令的命令的ADD COLUMN 子句。子句。例如,可以使用以下命令把備注型字段例如,可以使用以下命令把備注型字段“dz”(地址)添加到(地址)添加到xs表中表中ALTER TABLE STD_DA ADD COLUMN dz m 2. 重新命
31、名表字段重新命名表字段 使用使用ALTER TABLE命令的命令的RENAME COLUMN子句。子句。例如,可以使用以下命令對例如,可以使用以下命令對xs表的表的“dz”字段重新命名:字段重新命名:ALTER TABLE STD_DA RENAME COLUMN dz TO 地址地址3. 從表中刪除字段從表中刪除字段 使用使用ALTER TABLE命令的命令的DROP COLUMN子句。子句。例如,可以使用以下命令從例如,可以使用以下命令從xs表中刪掉表中刪掉“jtzz”(家庭住址)字段:(家庭住址)字段:ALTER TABLE STD_DA DROP COLUMN 地址地址 11.6 數(shù)據(jù)
32、表的索引數(shù)據(jù)表的索引建立索引的最直接的理由是為了排序。在建立數(shù)據(jù)表時(shí),記錄一般是隨機(jī)輸入,其建立索引的最直接的理由是為了排序。在建立數(shù)據(jù)表時(shí),記錄一般是隨機(jī)輸入,其排列順序無規(guī)律。如果要按照某些字段值的順序排列,就要對數(shù)據(jù)表進(jìn)行排序操作排列順序無規(guī)律。如果要按照某些字段值的順序排列,就要對數(shù)據(jù)表進(jìn)行排序操作或者建立索引?;蛘呓⑺饕?1.6.1 基本概念基本概念1. 索引與索引表達(dá)式索引與索引表達(dá)式 數(shù)據(jù)表的索引是按指定的索引表達(dá)式對數(shù)據(jù)表建立的一個(gè)文件數(shù)據(jù)表的索引是按指定的索引表達(dá)式對數(shù)據(jù)表建立的一個(gè)文件索引索引文件。索引文件是一個(gè)記錄號的列表(指針列表),它指向待處理的記錄,文件。索引文
33、件是一個(gè)記錄號的列表(指針列表),它指向待處理的記錄,并確定了記錄的處理順序,即按新順序存儲著數(shù)據(jù)表所對應(yīng)的記錄號。索并確定了記錄的處理順序,即按新順序存儲著數(shù)據(jù)表所對應(yīng)的記錄號。索引表達(dá)式可以是表中的字段或字段的組合,前者又稱為索引字段。引表達(dá)式可以是表中的字段或字段的組合,前者又稱為索引字段。 索引并不改變表中所存儲數(shù)據(jù)的順序,它只改變索引并不改變表中所存儲數(shù)據(jù)的順序,它只改變VFP讀取每條記錄的順讀取每條記錄的順序。序。 可以利用索引對數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行排序,以便加速檢索數(shù)據(jù)的速度??梢岳盟饕龑?shù)據(jù)表中的數(shù)據(jù)進(jìn)行排序,以便加速檢索數(shù)據(jù)的速度??梢杂盟饕焖亠@示、查詢或者打印記錄。還可以
34、選擇記錄、控制重復(fù)字可以用索引快速顯示、查詢或者打印記錄。還可以選擇記錄、控制重復(fù)字段值的輸入并支持表間的關(guān)系操作。索引對于數(shù)據(jù)庫內(nèi)表之間創(chuàng)建關(guān)聯(lián)也段值的輸入并支持表間的關(guān)系操作。索引對于數(shù)據(jù)庫內(nèi)表之間創(chuàng)建關(guān)聯(lián)也很重要。很重要。 建立索引文件 2. VFP中的索引中的索引 VFP中的索引分為主索引、候選索引、惟一索引和普通索引中的索引分為主索引、候選索引、惟一索引和普通索引4種。這種。這些索引控制著在表字段和記錄中禁止(前兩種)或允許(后兩種)重復(fù)些索引控制著在表字段和記錄中禁止(前兩種)或允許(后兩種)重復(fù)值。值。 (1) 主索引主索引 主索引絕對不允許在指定的字段或表達(dá)式(索引關(guān)鍵字)中出
35、現(xiàn)重復(fù)主索引絕對不允許在指定的字段或表達(dá)式(索引關(guān)鍵字)中出現(xiàn)重復(fù)的值。主索引可以確保字段中輸入值的惟一性并決定了處理記錄的順序。的值。主索引可以確保字段中輸入值的惟一性并決定了處理記錄的順序。 主索引只能在數(shù)據(jù)庫表中創(chuàng)建,主要用于在永久關(guān)系中的主表或被引主索引只能在數(shù)據(jù)庫表中創(chuàng)建,主要用于在永久關(guān)系中的主表或被引用表中建立完整參照系。可以為數(shù)據(jù)庫中的每一個(gè)表建立一個(gè)主索引。用表中建立完整參照系。可以為數(shù)據(jù)庫中的每一個(gè)表建立一個(gè)主索引。建立主索引的索引關(guān)鍵字可以看作主關(guān)鍵字,由于一個(gè)表只能有一個(gè)主建立主索引的索引關(guān)鍵字可以看作主關(guān)鍵字,由于一個(gè)表只能有一個(gè)主關(guān)鍵字,所以一個(gè)表只能創(chuàng)建一個(gè)主索引
36、。關(guān)鍵字,所以一個(gè)表只能創(chuàng)建一個(gè)主索引。 如果某個(gè)表已經(jīng)有了一個(gè)主索引,可以為它添加候選索引。如果某個(gè)表已經(jīng)有了一個(gè)主索引,可以為它添加候選索引。 (2) 候選索引候選索引 像主索引一樣要求索引關(guān)鍵字值的惟一性并決定了處理記錄的順序。像主索引一樣要求索引關(guān)鍵字值的惟一性并決定了處理記錄的順序。因?yàn)楹蜻x索引禁止重復(fù)值,所以它們在表中有資格被選作主索引,即主因?yàn)楹蜻x索引禁止重復(fù)值,所以它們在表中有資格被選作主索引,即主索引的索引的“候選項(xiàng)候選項(xiàng)”。 建立候選索引的索引關(guān)鍵字可以看作是候選關(guān)鍵字,在數(shù)據(jù)庫表和自建立候選索引的索引關(guān)鍵字可以看作是候選關(guān)鍵字,在數(shù)據(jù)庫表和自由表中可為每個(gè)表建立多個(gè)候選索
37、引。由表中可為每個(gè)表建立多個(gè)候選索引。 在定義在定義“一對多一對多”或或“一對一一對一”永久關(guān)系中的永久關(guān)系中的“一一”方時(shí),既可以使方時(shí),既可以使用候選索引,也可以使用主索引。用候選索引,也可以使用主索引。 (3) 惟一索引惟一索引 惟一索引允許在索引關(guān)鍵字中出現(xiàn)重復(fù)的值,但只存儲索引惟一索引允許在索引關(guān)鍵字中出現(xiàn)重復(fù)的值,但只存儲索引文件中重復(fù)值的第一次出現(xiàn)。文件中重復(fù)值的第一次出現(xiàn)。 (4) 普通索引普通索引 普通索引可以決定記錄的處理順序,但是允許字段中出現(xiàn)重普通索引可以決定記錄的處理順序,但是允許字段中出現(xiàn)重復(fù)值。在一個(gè)表中可以加入多個(gè)普通索引。在復(fù)值。在一個(gè)表中可以加入多個(gè)普通索引
38、。在“一對多一對多”永久永久關(guān)系的關(guān)系的“多多”方,可以使用普通索引。方,可以使用普通索引。11.6.2 建立索引建立索引1. 使用表設(shè)計(jì)器使用表設(shè)計(jì)器使用表設(shè)計(jì)器建立索引使用表設(shè)計(jì)器建立索引 2. 索引文件索引文件在在VFP中,表索引文件有兩種結(jié)構(gòu):中,表索引文件有兩種結(jié)構(gòu):傳統(tǒng)的傳統(tǒng)的.IDX索引文件與索引文件與.CDX復(fù)合索引文件。復(fù)合索引文件。.IDX索引文件只有一個(gè)索引關(guān)鍵字表達(dá)式,又被稱為單入口索引文件只有一個(gè)索引關(guān)鍵字表達(dá)式,又被稱為單入口索引文件索引文件.。.CDX索引文件則包含了多個(gè)索引關(guān)鍵字表達(dá)式,就好像是把索引文件則包含了多個(gè)索引關(guān)鍵字表達(dá)式,就好像是把多個(gè)多個(gè).IDX索
39、引文件合并成為了一個(gè)文件。索引文件合并成為了一個(gè)文件。復(fù)合索引文件又可以分為兩種:復(fù)合索引文件又可以分為兩種:一種是結(jié)構(gòu)化復(fù)合索引文件一種是結(jié)構(gòu)化復(fù)合索引文件,另一種是獨(dú)立的復(fù)合索引文件。另一種是獨(dú)立的復(fù)合索引文件。 3. 索引命令 在在VFP中,一般情況下可以在表設(shè)計(jì)器中建立索引,特別是主索引和候選索引中,一般情況下可以在表設(shè)計(jì)器中建立索引,特別是主索引和候選索引是在設(shè)計(jì)數(shù)據(jù)庫時(shí)確定好的。但有時(shí)需要在程序中臨時(shí)建立一些普通索引或惟一索是在設(shè)計(jì)數(shù)據(jù)庫時(shí)確定好的。但有時(shí)需要在程序中臨時(shí)建立一些普通索引或惟一索引,所以仍然需要使用命令方式建立索引。索引命令的語法格式為:引,所以仍然需要使用命令方式
40、建立索引。索引命令的語法格式為:INDEX ON 索引表達(dá)式索引表達(dá)式 TO IDX文件名文件名| TAG 索引名索引名 OF CDX文文件名件名; FOR 表達(dá)式表達(dá)式; ASCENDING | DESCENDING; UNIQUE | CANDIDATE; ADDITIVE 說明:說明: TO IDX文件名:建立一個(gè)單關(guān)鍵字的文件名:建立一個(gè)單關(guān)鍵字的.IDX文件,該項(xiàng)是為了與以前版本文件,該項(xiàng)是為了與以前版本兼容,一般只是在建立一些臨時(shí)索引時(shí)才使用。兼容,一般只是在建立一些臨時(shí)索引時(shí)才使用。 OF CDX文件名:可以建立一個(gè)包含多個(gè)索引的復(fù)合索引文件名,擴(kuò)展文件名:可以建立一個(gè)包含多個(gè)索
41、引的復(fù)合索引文件名,擴(kuò)展名也是名也是.CDX。 FOR 表達(dá)式:給出索引過濾條件,只索引滿足條件的記錄,該選項(xiàng)一般表達(dá)式:給出索引過濾條件,只索引滿足條件的記錄,該選項(xiàng)一般不使用。不使用。 ASCENDING | DESCENDING:選擇建立升序或降序索引,默認(rèn)升序。:選擇建立升序或降序索引,默認(rèn)升序。 UNIQUE | CANDIDATE:建立惟一索引或候選索引。:建立惟一索引或候選索引。 ADDITIVE:與建立索引本身無關(guān),說明現(xiàn)在建立索引時(shí)是否關(guān)閉以前的索引,:與建立索引本身無關(guān),說明現(xiàn)在建立索引時(shí)是否關(guān)閉以前的索引,默認(rèn)是關(guān)閉已經(jīng)使用的索引,使新建立的索引成為當(dāng)前索引。默認(rèn)是關(guān)閉已
42、經(jīng)使用的索引,使新建立的索引成為當(dāng)前索引。 【例【例11-13】可以使用以下命令為數(shù)據(jù)表】可以使用以下命令為數(shù)據(jù)表STD_CJ創(chuàng)建普通創(chuàng)建普通索引:索引:USE STD_CJINDEX ON 期中期中 TAG QZ4. 刪除索引刪除索引 如果某個(gè)索引不再使用了則可以刪除它,刪除索引的辦法如果某個(gè)索引不再使用了則可以刪除它,刪除索引的辦法是在表設(shè)計(jì)器中使用是在表設(shè)計(jì)器中使用“索引索引”選項(xiàng)卡,選中需要刪除的索引,選項(xiàng)卡,選中需要刪除的索引,單擊單擊“刪除刪除”命令按鈕即可刪除。也可以使用命令方式刪除。命令按鈕即可刪除。也可以使用命令方式刪除。刪除索引的命令格式為:刪除索引的命令格式為:DELET
43、E TAG 索引名索引名1 OF CDX文件名文件名1,索引索引名名2 OF CDX文件名文件名2 .或或DELETE TAG ALL OF CDX文件名文件名 說明:前者可以刪除索引文件中指定的索引,后者則刪除說明:前者可以刪除索引文件中指定的索引,后者則刪除全部索引。全部索引。例例: DELETE TAG QZ 11.6.3 使用索引排序使用索引排序1. 使用對話框使用對話框 建好表的索引后,便可以用它來為記錄排序。若要用索引對記錄排序,建好表的索引后,便可以用它來為記錄排序。若要用索引對記錄排序,操作步驟如下:操作步驟如下: 從從“文件文件”菜單菜單中選擇中選擇“打開打開”命令命令選擇已
44、建好索引的表選擇已建好索引的表 單擊單擊“瀏覽瀏覽”按鈕。按鈕。 從從“表表”菜單菜單“屬性屬性”命令命令 在在“工作區(qū)屬性工作區(qū)屬性”對話框中,選擇對話框中,選擇要用的索引要用的索引 單擊單擊“確定確定”按鈕。這時(shí),顯示在按鈕。這時(shí),顯示在“瀏覽瀏覽”窗口中的表將按窗口中的表將按照索引指定的順序排列記錄。照索引指定的順序排列記錄。2. 使用命令使用命令設(shè)置當(dāng)前索引的格式為:設(shè)置當(dāng)前索引的格式為:SET ORDER TO TAG 索引索引名名 ASCENDING | DESCENDING 說明:說明: ASCENDING | DESCENDING:不管索引是按:不管索引是按升序或降序建立的,在
45、使用時(shí)都可以用升序或降序建立的,在使用時(shí)都可以用ASCENDING指定升序或指定升序或DESCENDING指定降序。指定降序。 11.6.4 查找記錄查找記錄 除了使用除了使用GO和和SKIP命令移動記錄指針外,還可命令移動記錄指針外,還可以使用以使用VFP的查找記錄命令來定位記錄指針。查找的查找記錄命令來定位記錄指針。查找命令有三個(gè),即命令有三個(gè),即FIND、SEEK和和LOCATE,前,前2個(gè)需個(gè)需要使用索引,而后一個(gè)可以在無索引的表中進(jìn)行查要使用索引,而后一個(gè)可以在無索引的表中進(jìn)行查找。找。 1. 字符查找命令(字符查找命令(FIND) 查找關(guān)鍵字與所給字符串相匹配的第一個(gè)記錄,若找到,
46、指針指向該記錄;否查找關(guān)鍵字與所給字符串相匹配的第一個(gè)記錄,若找到,指針指向該記錄;否則指向文件尾,給出信息則指向文件尾,給出信息“沒找到?jīng)]找到”。語法格式為:。語法格式為:FIND 字符串字符串|數(shù)值數(shù)值 說明:說明: FIND只能查找字符串或常數(shù),而且表必須按相應(yīng)字段索引。只能查找字符串或常數(shù),而且表必須按相應(yīng)字段索引。 查找的字符串無需加引號,若按字符型內(nèi)存變量查找,必須使用宏代換函數(shù)查找的字符串無需加引號,若按字符型內(nèi)存變量查找,必須使用宏代換函數(shù)&。 本命令只能找出符合條件的第一個(gè)記錄,若要繼續(xù)查找其他符合條件的記錄,本命令只能找出符合條件的第一個(gè)記錄,若要繼續(xù)查找其他符合條
47、件的記錄,可使用可使用SKIP命令。命令。 使用本命令時(shí),若是找到了符合條件的首記錄,則置函數(shù)使用本命令時(shí),若是找到了符合條件的首記錄,則置函數(shù)FOUND()的值為的值為.T.;否則置函數(shù)否則置函數(shù)FOUND()的值為的值為.F.?!纠纠?1-15】下述命令在學(xué)生表】下述命令在學(xué)生表std_da中查找第一個(gè)姓李的同學(xué),并顯示該同學(xué)中查找第一個(gè)姓李的同學(xué),并顯示該同學(xué)的信息:的信息:USE std_daINDEX ON xm TAG xmSET ORDER TO TAG xmFIND 李李DISP 2. 表達(dá)式查找命令(表達(dá)式查找命令(SEEK) 查找關(guān)鍵字與所給字符串相匹配的第一個(gè)記錄,若找到,指針指向該記查找關(guān)鍵字與所給字符串相匹配的第一個(gè)記錄,若找到,指針指向該記錄;否則指向文件尾,給出信息錄;否則指向文件尾,給出信息“沒找到?jīng)]找到”。語法格式為:。語法格式為:SEEK 表達(dá)式表達(dá)式 說明:說明: 只能找出符合條件的第一條記錄。只能找出符合條件的第一條記錄。 本命令可查找字符、數(shù)值、日期和邏輯型索引關(guān)鍵字。本命令可查找字符、數(shù)值、日期和邏輯型索引關(guān)鍵字。 若表達(dá)式為字符串,則須用界限符括起來(若表達(dá)式為字符串,則須用界限符括起來( ,“ ”, );)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鏟車考試題庫及答案
- 沈陽五年級試題及答案
- 2025-2026人教版初中九年級語文上期末練習(xí)卷
- 腸道菌群與糖尿病管理新策略
- 2025-2026七年級美術(shù)期末測試冀教版
- 腮腺惡性腫瘤患者的護(hù)理效果評價(jià)與改進(jìn)
- 腸梗阻的病因診斷與手術(shù)時(shí)機(jī)選擇
- 鵝口瘡的藥物治療與護(hù)理
- 衛(wèi)生所十項(xiàng)規(guī)章制度
- 養(yǎng)鴿場環(huán)境衛(wèi)生管理制度
- 2025年健康體檢中心服務(wù)與質(zhì)量管理手冊
- 2025-2030中國駱駝市場前景規(guī)劃與投資運(yùn)作模式分析研究報(bào)告
- 2026中國電信四川公用信息產(chǎn)業(yè)有限責(zé)任公司社會成熟人才招聘備考題庫及完整答案詳解一套
- 鋼結(jié)構(gòu)玻璃雨棚安裝施工方案
- 鄂爾多斯輔警考試題型及答案
- 《中華人民共和國危險(xiǎn)化學(xué)品安全法》全套解讀
- 24年中央一號文件重要習(xí)題及答案
- 冪等矩陣的基本性質(zhì)及其在實(shí)際問題中的應(yīng)用
- (2025年標(biāo)準(zhǔn))租金欠款還款協(xié)議書
- 2025年東航管理測試題庫及答案
- 成都市高新區(qū)2025-2026學(xué)年七年級上數(shù)學(xué)期末試題及答案
評論
0/150
提交評論