CRecordset::Update

王朝百科·作者佚名  2010-09-08  
宽屏版  字体: |||超大  

CRecordset::Update

virtual BOOL Update();

throw ( CDBException );

返回值:

如果一个记录更新成功则返回一个非零值;否则如果没有列改变,则返回值为零。如果没有记录被更新,或有多个记录被更新,则抛出一个异常。对数据源上的其它任何失败也都将抛出一个异常。

说明:

在调用AddNew或Edit成员函数之后,调用Update成员函数,必须用该调用来完成AddNew或Edit操作。

注意:

如果你已经实现了成组行检取,你就不能调用Update。这将导致一个异常。虽然类CRecordset不提供更新成组行数据的机制,但是你可以提供使用ODBC API函数SQLSetPos来编写你自己的函数。如何做到这一点,请参见例子DBFETCH。

AddNew或Edit都准备了一个编辑缓冲区,被增加或被编辑的数据都放在此缓冲区中,等待存入数据源中。Update保存这些数据。只有标记为或检测为被修改了的那些字段才被更新。

如果数据源支持事务,你可以使Update调用(以及它的相应的AddNew或Edit调用)成为事务的一部分。

警告:

如果你没有先调用AddNew或Edit函数就调用Update函数,则Update函数将抛出一个异常。如果应用程序调用AddNew或Edit,则在调用MoveNext之前,或改变记录集或数据源之前,必须调用Update函数。否则,所做的改变将丢失,并且不给出通知。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有