ADDNEWができねぇっす(涙。。 – プログラミング – Home

ADDNEWができねぇっす(涙。。
 
通知
すべてクリア

[解決済] ADDNEWができねぇっす(涙。。


初心者
 初心者
(@初心者)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

はじめまして、いつも参考にさせて頂いております。
早速ですが、VC++、ADOを使ってSQLServer7.0のテーブルのデータの追加したいと思っており
ます。
AddNewメソッドでデータを追加をしたいのですがうまくいきません。
テーブルにデータが1件もない時は、AddNewでデータをうまく追加できるのですが、テーブル
にデータが1件以上あるとき、エラーとなってしまい、新規データが追加できません。何がおか
しいのでしょうか?テーブルの設定は大丈夫なはずなのですが。。
何とか皆さんのお知恵を貸していただけないでしょうか。よろしく願いいたします。
以下に問題部分のコード(編集したやつ)を載せてます。

void CADOAGHKJ::GetDbData(_ConnectionPtr pConn)
{
m_table=_T(tbl_aghkj);//テーブル名
_RecordsetPtr pRs; //レコードセットオブジェクトポインタ
CustomCustomerRs oCustomCustomer; //データベースとVC++をバインドするオブジェクト
IADORecordBinding *picRs = NULL; //バインド ポインタ
HRESULT hr;

pRs.CreateInstance(__uuidof(Recordset));

if(FAILED(hr = pRs->Open(m_table, pConn, adOpenDynamic, adLockOptimistic,
adCmdTable)))
return -1;

if(FAILED(hr = pRs->QueryInterface(__uuidof(IADORecordBinding),(LPVOID*)
&picRs)))
return -1;

if(FAILED(hr = picRs->BindToRecordset(&oCustomCustomer)))
return -1;

//レコードを追加
oCustomCustomer.m_lCustomer_ID =10;
strcpy(oCustomCustomer.m_szAddress, aaa);
strcpy(oCustomCustomer.m_szCustomer_Name, bbb);
strcpy(oCustomCustomer.m_szPhone_Number, ccc);
strcpy(oCustomCustomer.m_szPostal_Code, ddd);

if(FAILED(hr = picRs->AddNew(&oCustomCustomer)))
return -1;

if(picRs){
picRs->Close();
picRs->Release();
}
return 0;
}


引用未解決
トピックタグ
...
 ...
(@...)
ゲスト
結合: 23年前
投稿: 113

返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

MSDNきちんと読みなさい!!

「AddNew」の説明きちんと理解できていないでしょう
「追加するための空のレコードを用意してくれる」って書いてませんでしたか

1回目で書き込んでほしい内容書き込まれていますか?
空のレコードが1件存在するだけで何も書かれていないのではないですか


返信引用
初心者
 初心者
(@初心者)
ゲスト
結合: 23年前
投稿: 4
Topic starter  

解決しました。ご回答くださいましたwoodさんありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました