Marca registros como deletados.
Sintaxe
DELETE [FOR CondFor] [WHILE CondWhile] [NEXT nRecs] [RECORD nRecno] [REST] [ALL]
Descrição
Este comando é utilizado para marcar alguns registros da tabela corrente como deletados.
Se não forem especificadas as condições para que o registro seja marcado como deletado, marca toda a tabela como se estivesse especificada a opção “ALL”.
Pode-se especificar um escopo para que os registros sejam marcados através das opções “FOR CondFor” e “WHILE CondWhile”.
Pode-se também limitar o número de registros a serem marcados através da opção “NEXT nRecs” e determinar que a “deleção” dos registros deve-se iniciar a partir do registro atual com “REST”, mas caso contrário o comando executa um DBGOTOP() antes de iniciar a “deleção”.
Se é desejado marcar apenas determinado registro pode-se defini-lo através da especificação do recno com “RECORD nRecno”.
Exemplo
Este exemplo demonstra como utilizar o comando DELETE para marcar alguns registros dentro de determinado escopo como deletado. Este escopo é definido por Idade > 20, até que o nome seja maior ou igual a “VVV”, começa a deleção a partir do registro atual e marca apenas 10 registros:
USE Cliente VIA “CTREECDX” NEW
DELETE FOR Idade>20 WHILE Nome<“VVV” NEXT 10 REST
