SQL呼び出し

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
KANSAI

SQL呼び出し

#1

投稿記事 by KANSAI » 18年前

以下の文でSQLServer2005のストアドプロシジャの呼び出しを行うと
「カーソルの状態が正しくありません」のエラーになりうまく動きません。
SQLServerでパラメータを指定して実行すると正しく動作します。
わけがわからずに困っています。どなたかわかる方お願いします。

VC側
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
CString strSql;

//実行SQL生成
CString strCon = Dll_GetDefaultDatabase();
CDatabase db;
//接続
db.OpenEx( _T( strCon ), CDatabase::noOdbcDialog );
//実行
CRecordset rs( &db );
strSql.Format("{call PROC_EKonyu('%d', '%d', 1)}", y-1, y-2);

try {
rs.Open( CRecordset::snapshot, strSql);
}
catch(CDBException* e) {
CString Msg = e->m_strError;
AfxMessageBox(Msg);
return;
}

rs.Close();
db.Close();

ストアドプロシジャ
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
PROCEDURE [PROC_EKony[/url]
@m_stYear varchar(4),
@m_edYear varchar(4),
@m_Syori int

As
SET NOCOUNT ON

IF @m_Syori = 1 BEGIN
delete from dEKonyu where Ed_Year = @m_stYear
delete from dEKonyu where Ed_Year = @m_edYear
END

“C言語何でも質問掲示板” へ戻る