こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

ストアドプロシージャについて

ストアドプロシージャで、Accessのクエリーを実行させテーブルの中の指定したIDのデータを削除させるという流れなのですが・・
以下のソースで実行はできるのですが、削除ができていないので原因がわかりません。アドバイスお願いします。

package CallableStatement;
import java.sql.*;
import java.io.*;
public class cCallableStatement {
public static void main(String[] args) {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection db=DriverManager.getConnection("jdbc:odbc:sample","","");
CallableStatement cllDelete;
int ID = 3;
       // 削除
cllDelete = db.prepareCall("{call DELETE(?)}");
cllDelete.setInt(1,ID);
cllDelete.executeUpdate();
}

}
環境はwin2000 pro
forte for java 4.0
jdk : 1.4
データベース: Access2000

投稿日時 - 2002-09-13 12:02:32

QNo.357542

tel

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Accessはどうか知りませんが、JDBC-ODBCブリッジでEXCELのODBCデータソースに接続すると、SELECT/INSERT/UPDATEはできますが、DELETEはできないという制約があります。ご参考まで。
COMMITが無いのは、ODBCデータソース側の設定でAUTO-COMMITにしてるからじゃないかなぁ。デフォルトそうだったと思います。

投稿日時 - 2002-09-15 22:06:13

ANo.1

予想ですがコミットを発行してないせいとかではないですか?

投稿日時 - 2002-09-13 19:21:15

あなたにオススメの質問