vfp物理刪除記錄的命令 邏輯刪除記錄和物理刪除記錄有什么區(qū)別?怎樣實(shí)現(xiàn)這兩種操作?
邏輯刪除記錄和物理刪除記錄有什么區(qū)別?怎樣實(shí)現(xiàn)這兩種操作?在VFP中:邏輯刪除的記錄可以通過(guò)簡(jiǎn)單的操作命令(recall)恢復(fù),也可以直接顯示在數(shù)據(jù)瀏覽窗口中,而物理刪除的記錄一般不可恢復(fù),在數(shù)據(jù)瀏覽
邏輯刪除記錄和物理刪除記錄有什么區(qū)別?怎樣實(shí)現(xiàn)這兩種操作?
在VFP中:邏輯刪除的記錄可以通過(guò)簡(jiǎn)單的操作命令(recall)恢復(fù),也可以直接顯示在數(shù)據(jù)瀏覽窗口中,而物理刪除的記錄一般不可恢復(fù),在數(shù)據(jù)瀏覽窗口中看不到。
邏輯刪除:找到要?jiǎng)h除的記錄,用delete命令刪除(或用鼠標(biāo)在數(shù)據(jù)瀏覽窗口中標(biāo)記為已刪除)。物理刪除:對(duì)邏輯刪除的數(shù)據(jù)表執(zhí)行pack命令,或用zap命令刪除所選表的所有記錄。注意:物理刪除操作要求以獨(dú)占方式打開要操作的數(shù)據(jù)表。物理刪除后恢復(fù)記錄的必要條件是數(shù)據(jù)區(qū)域不能被新數(shù)據(jù)覆蓋,只有借助專業(yè)的數(shù)據(jù)恢復(fù)工具和技能才能恢復(fù)。因此,我說(shuō),一般來(lái)說(shuō)是無(wú)法收回的。
在VFP中,恢復(fù)邏輯刪除的記錄的命令是什么?
調(diào)用[< range>][for< condition>]1。一次調(diào)用只能恢復(fù)當(dāng)前記錄2。全部收回恢復(fù)所有邏輯刪除的記錄3。Recall for gender=“male”恢復(fù)邏輯上刪除的男性記錄
delete for condition&;logical刪除符合條件的記錄包&;物理刪除標(biāo)記的(邏輯刪除)記錄zap&delete當(dāng)前打開表中的所有記錄delete from table where conditionally&logical delete the records that the conditionally&logical delete the conditions in the specified table
zap&;物理刪除當(dāng)前選定的記錄
或
delete&;物理刪除;從邏輯上刪除所選記錄。您可以還原
打包并物理刪除邏輯刪除的記錄
例如:
使用表.dbfExcl&;打開要在獨(dú)占模式下操作的表
轉(zhuǎn)到頂部并將指針移到第一行
查找名稱=“私生子”&;查找記錄
如果找到()&;判斷條件
完全刪除記錄
ENDIF
它等價(jià)于以下程序:
使用表.dbfExcl&;打開要獨(dú)占操作的表
轉(zhuǎn)到頂部并將指針移到第一行
查找name=“basket”&;找到記錄
如果找到()&判斷條件
刪除并用刪除符號(hào)標(biāo)記記錄
打包并用刪除符號(hào)物理刪除記錄
ENDIF
vfp中的刪除命令有那些?各自的功能是什么?
刪除標(biāo)記表中的記錄,這是邏輯刪除。
真正的刪除還需要使用pack命令!Drop用于刪除表等對(duì)象。