词条 | CRecordset::Update |
释义 | 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函数。否则,所做的改变将丢失,并且不给出通知。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。