- - PR -
VC++2005 & odp.netでのバインド変数について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2009-01-15 21:02
皆様のお知恵を拝借させていただきたく投稿いたしました。
初心者ゆえ、質問の不手際もご指摘いただくと幸いです。 vc++ 2005にてアプリを開発しておりますが、 処理能力の向上のため、odp.netを用いて、 バインド変数を利用しようと試しておりますが、 ビルドが全く通らず困っております。 バインド変数に値を代入しようとすると、エラーが出てしまいます。 (以下にソースとエラーメッセージを記載致します。) 【ソース】 CString temp = "ABC"; OracleParameter* orParam = new OracleParameter(); orParam->ParameterName = "TEST"; orParam->OracleType::VarChar; orParam->Value = temp; ←ここでエラー orCmd->Parameters->Add(orParam); 【エラーメッセージ】 error C2664: 'System::Data::oracleClient::oracleParameter::set_Value' : 1 番目の引数を 'CString' から 'System::object __gc *' に変換できません。(新しい機能 ; ヘルプを参照) 1> ビルトイン型または値型から __gc クラスまたは __gc インターフェイスへのポインタ への変換にはボックス化が必要です。 エラーメッセージの対処方法がわかっていないだけでなく、 根本的に何かが違うような気もしますが、 何か原因がお分かりでしたら、ご教授ください。 以上、宜しくお願い致します。 [ メッセージ編集済み 編集者: BordKing 編集日時 2009-01-15 21:02 ] |
|
投稿日時: 2009-01-15 21:17
CString ではなく、System::String^ 使う必要があるとおもいますよ。
|
|
投稿日時: 2009-01-17 13:43
to ちゃっぴさん
返信が送れてしまい、すいません。 今は環境がないので、週末勉強して 月曜日に試してみます。 ありがとうございました。 遅くなりましたが、取り急ぎお礼とお詫びまで。 |
|
投稿日時: 2009-01-19 15:14
to ちゃっぴさん
System::String^を使う事で解決できました。 本当に、本当にありがとうございました。 |
1