生SQLを使ったデータの削除
生SQLコマンドDELETEは,データベースからデータを削除するときに使います.これは
データの削除に記載のように,
Mathematica コマンド
SQLDeleteでもできます.
このチュートリアルの例を実際に試してみて,記載の通りに動作しなかった場合は,
データベースの例の使用で述べているように
DatabaseExamples`パッケージを使ってデータベースをもとの状態に戻す必要があるかもしれません.
データを削除する際,
SQLExecuteの結果はクエリの影響を受ける行数を示す整数となります.
以下にデータの削除の例を示します.
DatabaseLink をロードし,
demo データベースに接続します.
生SQLを使った表の作成の例で述べたように,表
ADDRESSES,
MAILER が作られます.
表
ADDRESSES の内容は次のようになっています.
| Out[7]= |  |
| Out[8]= |  |
以下は表
MAILER の行を削除するSQL文を実行します.列
SENDMAILER の値が0または
Falseである行をすべて削除します.削除文は列の値に応じた条件を使って作成できます.1行削除されるため,結果は1となります.
| Out[9]= |  |
SELECT文はテーブルでデータが変更されたことを検証する.
| Out[10]= |  |
準備文を使って,データベース内のデータを更新するSQL文を動的に作ることができます.このSQL文は簡単な
Mathematica 関数と結合できます.次の例は特定のユーザの住所を削除します.
| Out[12]= |  |
表のデータが変更されたことをSELECT文で確認します.
| Out[13]= |  |
表の値に対する制限と同じ制限が,データの削除にも適用されます.従って,表
MAILER の項目が参照している
ADDRESS の値を削除しようとすると,エラーが返されます.
| Out[14]= |  |