VC++6.0 でADOを使用してSQLのストアドプロシージャを実行しようとしています。
その際、コマンドオブジェクトを作成し、CommandTextにストアド名を、CommandTypeにはadCmdStoredProcを設定。
次にパラメータオブジェクトを作成してそれをAppendしていますが、
Nullのセットの仕方が分かりません。
_CommandPtr pCmd = NULL;
hr = pCmd.CreateInstance( __uuidof( Command));
pCmd->ActiveConnection = pConn;
pCmd->CommandText = "ストアド名";
pCmd->CommandType = adCmdStoredProc;
_ParameterPtr pParam;
pParam = pCmd->CreateParameter("Param",adVarWChar,adParamInput,5,"abcde");
hr = pCmd->Parameters->Append( pParam );
pCmd->Execute( NULL, NULL, adCmdStoredProc);
上記のソースなんですがCreateParameterでNullをパラメータにしたいのですが、上手くいきません。
adVarWCharをadEmptyにしたり、5,"abcde"をゼロやNullにしてもエラーが発生してしまいます。(Unknown error 0x800A0E7C)
C++でのADOは不慣れの為、行き詰っております。
どなたか解決方法などご存知の方がいましたら、
ぜひとも回答願えないでしょうか。
宜しくお願いします。
やっていないのでなんとも言えませんが,
こんな感じでできるのではないでしょうか?
_variant_t vtFld;
vtFld.vt = VT_NULL;
pParam = pCmd->CreateParameter("Param",adVarWChar,adParamInput,5,vtFld);
ツイート | ![]() |