- - PR -
Oracle.DataAccess.Clientを指定した場合のデータアダプタの構成方法
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-12-29 15:00
ASP.NET,及びC#(DBはORACLE)でwebアプリケーションを開発している高中と申します。
データベースの接続について困っています。 ツールボックスのカスタマイズでSystem.Data.OracleClientではなくOracle.DataAccess.Clientを選択すると、Oracle.DataAdapterをフォームにドロップアウトしてもデータアダプタ構成ウィザードの起動が行われず、データアダプタの再構成が行われません。 コンポーネントトレイのデータアダプタをクリックしてもプルダウンメニューの中にデータアダプタの構成が表示されないので選択は行えません。 Oracle.DataAccess.Clientを指定した場合のデータアダプタの構成方法をご存知の方はご教授願えないでしょうか? | ||||
|
投稿日時: 2005-12-29 16:29
ORACLEは同じServerVersionの接続ドライバーをインストールし,それを構成する必要があります.ServerにインストールしたCDにクライアント用ソフトも同封されているとおもいますので,確認下さい.また,OracleのHPからドライバのダウンロードが出来ますが,登録処理が必要なため,あまりおすすめしません.
| ||||
|
投稿日時: 2005-12-29 17:54
ODP.Net で構成ウィザードを使ったことが無いのでわかりませんが
一度 OTN のマニュアル類を参照してみてはどうでしょうか ODT を使うとまた違うのかな http://otn.oracle.co.jp/tech/dotnet/index.html | ||||
|
投稿日時: 2005-12-29 18:11
hirarinさん、かるあさん、ありがとうございました。
oracleCommandやoracleDataAdapter、oracleConnectionのプロパティの内容(ConnectionString等)を一つ一つ設定していくと、何とか接続は出来たようです。 ただ、今度は”ORA-01008: バインドされていない変数があります。 ”というエラーになって とまってしまいました.エラーメッセージからするとCommandTextに設定したSQL分に問題がありそうですが、System.Data.OracleClientを指定していた時には問題なく動いたソースから、コペピしたのでパンチミスは考えられません。 ウェブで検索した限りではORACLEのバグではないかとするサイトもあり、困っています。 | ||||
|
投稿日時: 2005-12-29 18:43
CommandText の内容が長かったので一項目だけ指定しても同じ現象でした。
this.oracleCommand2.CommandText = "UPDATE MST SET AAA = :AAA WHERE (AAA = ![]() AAAは確かにDBのカラムとして存在しています。(AAAの前のOriginalは予約語と考えていいんでしょうか?) | ||||
|
投稿日時: 2005-12-29 21:51
OracleParameter の設定はどうなっていますか?
AAA と Original_AAA を OracleCommand に追加していますか? | ||||
|
投稿日時: 2005-12-29 21:59
ご自分のソースじゃないのですか... とりあえず、Original_AAA はやめて定数にしてみるとか。 :AAA はやめて別のバインド変数にしてみるなど、1 通り思いつくことは試しましょう。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-12-30 14:03
かるあさん、じゃんぬねっとさん、ありがとうございます.
コマンドテキストの内容を単純に CommandText = "UPDATE MST SET AAA = :AAA" とし、OracleParameterには:AAAを追加しましたが同じでした(ちなみに:AAAを他の変数にしても駄目でした)。 ただし、:AAAを定数にすると更新は行われました。 私はこれらの指定をフォームにドロップアウトしたOracle.Commandのプロパティウインドウから行っています. |