DELETE 文 DELETE statementRead-write VTIsand DELETES
構文 { DELETE FROM 表名 [WHERE 節] | DELETE FROM 表名 WHERE CURRENT OF }

一つ目の書き方は、検索による削除と呼ばれ、表名とWHERE 節により絞り込まれた行が削除されます。

二つ目の書き方は、位置による削除と呼ばれ、更新可能なカーソルで現在開いている行が削除されます。更新可能なカーソルについてはを参照してください。

DELETE FROM SAMP.IN_TRAY stmt.executeUpdate("DELETE FROM SAMP.IN_TRAY WHERE CURRENT OF " + resultSet.getCursorName());
文の依存

検索による削除では、文が更新する表やそのコングロマリット(ヒープや索引のような記録の単位)に、文が依存します。準備された検索による削除文が対象とする表のCREATEやDROP INDEX文は、その準備された検索による削除文を無効とします。

位置による削除では、文がカーソルやカーソルが参照する表に依存します。たとえまだカーソルが開いてなくても、位置による削除の文はコンパイル可能です。それでも、JDBCのcloseメソッドにより開いたカーソルが取り除かれると、位置による削除の文は無効になります。

準備された位置による削除の文が対象とする表のCREATEやDROP INDEX文は、その準備された位置による削除の文を無効とします。