读书人

关于插入记录解决办法

发布时间: 2012-02-01 16:58:19 作者: rapoo

关于插入记录
CString strInsert;
strInsert.Format( "insert into AddressList(Names,Mobile,Phone,Address) values( 'Lixin ', '13885137251 ', '0525-4567442 ', 'SQ ') ");
_bstr_t bstrInsert = strInsert.AllocSysString();

m_pConnection-> Execute(bstrInsert,&RecordsAffected,adCmdText);//程序到这儿就出现异常

执行插入语句的时候就会出现异常,但执行
m_pConnection-> Execute((_bstr_t) "select * from AddressList ",&RecordsAffected,adCmdText);
就是正确的,所以可能是插入语句的错误,但用相同的语句在SQL分析器下执行又是正确的,不知道到底是什么错误,大家帮忙分析下。


[解决办法]

COleVariant lReturn;
m_pConnection-> Execute(bstrInsert,lReturn,adExecuteNoRecords);//
//影响的行数=lReturn.lVal

[解决办法]

也许是你 INSERT 了重复的数据?

=================================================

执行语句这样写最简单:

m_pConnection-> Execute(bstrInsert,NULL,adCmdText);
[解决办法]
CString strInsert;
strInsert.Format( "insert into AddressList(Names,Mobile,Phone,Address) values( 'Lixin ', '13885137251 ', '0525-4567442 ', 'SQ ') ");
m_pConnection-> Execute((_bstr_t)strInsert,&RecordsAffected,adCmdText);//这样呢?
[解决办法]
_bstr_t bstrInsert = strInsert.AllocSysString();
//感觉问题在这里,去掉看看
[解决办法]
看看是不是插入语句错误,有什么不能为空的字段没赋值。

读书人网 >VC/MFC

热点推荐