一。建立表間連接:有時需要將不同表的內容按某種條件重新組成一個新表,可用連接命令 join來實現該功能。Join命令實現由兩個表,即當前工作表和另一個工作區中的表(由別名指定),依據條件和指定的字段建立新表。執行該命令時,先將當前表的記錄指針指向首記錄,然后在別名表中依據指定條件搜索,凡滿足條件的別名表的記錄都各自與當前表的首記錄組成一個新記錄,并記入新文件中。隨后將當前表的指針移向下一條記錄,重復上面的搜索并組成新記錄記入新表中,直到最后完成。
格式:join with 表別名 to 新表名 [for 條件] [fields 字段名表]
例:將職工檔案。dbf和工資情況。dbf用連接命令生成一個新表,要求新表中包括姓名,出生時間,獎金和工資
select 2
use 工資情況 alias bm
browse &&如圖22
select 1
use 職工檔案
browse &&如圖21
join with bm to xinbiao for 編號=bm.編號 fields 姓名,出生時間,bm.獎金,bm.工資
select 3
use xinbiao
browse &&如圖24
close database &&關閉數據庫,包括其中的表
圖22
圖21
圖24
Visual FoxPro基礎教程完整版二。表的更新操作:商業中常需要根據商品的銷售情況及進貨情況不斷更新庫存商品的數量和金額,在vfp中,使用update命令來處理,命令格式為:
update on 關鍵字段 from 數據源表 replace 被更新字段 with 表達式
說明:(1).更新命令是用數據源表去更新當前工作表,即用表達式的值去更新被更新字段的值。
(2).關鍵字段必須是兩個表的公共字段,且兩個表都按此關鍵字進行了排序或索引,且索引隨表打開。
(3).引用數據源表的字段時須用別名指定。
(4).該命令執行過程:對當前表(被更新表)的各條記錄依其關鍵字值找到數據源表中相應記錄,然后用表達式的值去更新相應字段內容。若在數據源表中沒有與此記錄相應的記錄,則當前表的這條記錄就不做更新操作。若當前表的全部記錄都進行了上述更新操作,則此命令的更新操作也就完成了。例:新建一個表xy.dbf,結構如下:xy(編號 c5,工資 N6.1),輸入幾條記錄然后用xy.dbf的值去更新"工資情況。dbf"的"工資"字段的內容。
1.按要求建立xy.dbf的表結構,并輸入5條記錄,如圖25
圖25
close database &&先把數據庫及其中的表關閉,我們從頭開始。
use 工資情況
browse &&更新前的情況,重點看工資字段的值,如圖22
use xy
browse &&圖25
index on 編號 tag bh3 &&依據編號建立索引,索引名為bh3
use
select 1
use xy order tag bh3 alias bm1 &&在1號工作區打開xy表同時打開bh3索引,表別名定為bm1
select 2
use 工資情況 order tag bh2 &&上節課已為工資情況表按"編號"建立索引,名為bh2
update on 編號 from bm1 replace 工資 with 工資+bm1.工資 &&將xy表中的工資字段的值加到當前表中
browse &&更新后的"工資情況"表,如圖26
use
圖26
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
![]()