掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
データベース接続が解除されていない? (ID:144190)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
いつもお世話になっております。 データベースへのインポート/エクスポートを行うツールを作成しようと しています。 プロジェクトは (1)Windowsアプリケーション ←母体 (2)クラスライブラリ ←DLL化して母体にImportsしています。 データベースはオラクルです。 エクスポートの種類として、 ・種別1 オーナー=ユーザ1 ・種別2 オーナー=ユーザ2 ・種別3 オーナー=ユーザ1、ユーザ2 を持ち、いずれもエクスポートは問題なく出来ました。 インポートの際には、一度オーナーユーザをドロップしてから再作成し、 エクスポートファイルをインポートするような形式になっています。 下記↓はエクスポート実行ファイルの中身です。 sqlplus @DropUser ←ユーザドロップ用のSQL文 sqlplus @CreateUser ←ユーザ生成用のSQL文 imp system/manager@XXX; 〜 ←実際のインポートコマンド (1)のアプリケーションでは、インポート/エクスポートを実行する前に 必要な情報を(2)のライブラリを通してデータベースから取り出しています。 (そのときの接続ユーザはユーザ1になります。) 取得は非接続型のデータアクセス(OracleDataAdapter)を使用しており、 これは、.Fill(データテーブル)実行後に自動的に接続を切ってくれますし、 OracleConnectionはState=0になっているのも確認できています。 ですが、情報を取得後にエクスポートしたデータ(種別1)をインポート しようとすると、 「現在接続中のユーザを削除することはできません」 と言われてしまいます。 同じ状況で種別2のインポートは可能でした。 また、情報を取得する前に同じく種別1のインポートファイルを手動で 実行すると、この場合は正常にインポートできました。 接続解除されているはずなのにどうして接続中と言われてしまうのでしょうか? どなたかご存知の方いましたらご教授願います。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.