DELETE - SQL コマンド
レコードを削除対象としてマークします。
Visual FoxPro ODBC ドライバーでは、このコマンドのネイティブ Visual FoxPro 言語構文がサポートされています。 ドライバー固有の情報については、「解説」を参照してください。
構文
DELETE FROM [DatabaseName!]TableName
[WHERE FilterCondition1 [AND | OR FilterCondition2 ...]]
引数
FROM [ DatabaseName!] TableName
レコードが削除対象としてマークされるテーブルを指定します。
Databasename! は、テーブルを含むデータベースがデータ ソースで指定されたデータベースでない場合に、そのデータベースの名前を指定します。 データベースがデータ ソースで指定されたデータベースでない場合は、テーブルを含むデータベースの名前を含める必要があります。 データベース名の後とテーブル名の前に感嘆符 (!) 区切り記号を含めます。
WHERE FilterCondition1[AND |OR FilterCondition2...]
Visual FoxPro で特定のレコードのみを削除対象としてマークすることを指定します。
FilterCondition は、レコードが削除のマークを付けるために満たす必要がある条件を指定します。 必要な数のフィルター条件を含め、AND または OR 演算子で接続できます。 NOT 演算子を使用して論理式の値を逆にしたり、 EMPTY( ) を使用して空のフィールドを確認したりすることもできます。
解説
SET DELETED が ON に設定されている場合、削除対象としてマークされたレコードは、スコープを含むすべてのコマンドで無視されます。
DELETE - SQL では、共有アクセス用に開かれたテーブルで複数のレコードを削除対象としてマークするときに、レコード ロックが使用されます。 これにより、マルチユーザーの状況でのレコードの競合が減りますが、パフォーマンスが低下する可能性があります。 パフォーマンスを最大限に高めるには、排他的に使用するためにテーブルを開きます。
ドライバーの備考
アプリケーションが ODBC SQL ステートメント DELETE をデータ ソースに送信すると、Visual FoxPro ODBC ドライバーは、変換なしでコマンドを Visual FoxPro DELETE コマンドに変換します。