CDaoRecordset::AddNew

virtual (de) AddNew nula;
Tiro (CDaoException, CMemoryException);

Observaciones

Llame a esta función miembro para agregar un nuevo registro a un recordset de tipo tabla o dynaset. Los campos del registro son inicialmente nulos. (En la terminología de base de datos Null significa "no tener ningún valor" y no es lo mismo como NULL en C++). Para completar la operación, debe llamar a la función de miembro de actualización . Actualización guarda los cambios en el origen de datos.

Precaució&nnbsp;  Si edita un registro y luego desplazarse a otro registro sin llamada de actualización, los cambios se pierden sin previo aviso.

Si agrega un registro a un recordset de tipo dynaset llamando AddNew, el registro es visible en el juego de registros y incluidas en la tabla subyacente donde estará visible para los nuevos objetos de CDaoRecordset.

La posición del nuevo registro depende del tipo de objeto recordset:

El registro que era actual antes de que usaste AddNew sigue siendo actual. Si desea que el nuevo registro actual y el objeto recordset admite marcadores, llame a SetBookmark al marcador identificado por el valor de la propiedad LastModified del objeto recordset DAO subyacente. Hacerlo es útil para determinar el valor de los campos en un registro agregado contador (incremento automático). Para obtener más información, consulte GetLastModifiedBookmark.

Si la base de datos admite transacciones, puede hacer que tu AddNew llamar a parte de una transacción. Para obtener más información acerca de las transacciones, vea la clase CDaoWorkspace. Tenga en cuenta que debe llamar a CDaoWorkspace::BeginTrans antes de llamar a AddNew.

Es ilegal llamar a AddNew para un conjunto de registros cuya función miembro Open no ha sido llamado. Se produce una CDaoException si llama a AddNew para un conjunto de registros que no puede ser anexado. Puede determinar si el conjunto de registros es actualizable llamando CanAppend.

Las marcas de marco cambian miembros de datos de campo para asegurar que se escribirán en el registro en el origen de datos mediante el mecanismo de intercambio (DFX) de campos de registros de DAO. Cambiar el valor de un campo generalmente establece el campo sucio automáticamente, por lo que rara vez tendrá que llamarte SetFieldDirty , pero a veces puede que desee garantizar que columnas serán actualizadas o insertadas independientemente de qué valor es el miembro de datos de campo explícitamente. El mecanismo DFX también emplea el uso de NULL de PSEUDO. Para obtener más información, consulte CDaoFieldExchange::m_nOperation.

Si no se utiliza el mecanismo de doble búfer, cambie el valor del campo no establece automáticamente el campo como sucio. En este caso, será necesario conjunto explícitamente el campo sucio. La bandera contenidas en controles de m_bCheckCacheForDirtyFields esta comprobación de campo automática.

&Notanbsp;  Si los registros son doble búfer (es decir, comprobación de campo automática está habilitada), llamando a CancelUpdate restaurará las variables miembro con los valores que tenían antes de que se llamaba AddNew o Editar.

Para obtener más información acerca de actualizar los registros, consulte el artículo DAO Recordset: conjunto de registros de operaciones en la Guía del programador de Visual C++. Para obtener información relacionada, vea los temas "Método AddNew", "Método CancelUpdate", "Propiedad LastModified" y "Propiedad EditMode" en la ayuda de DAO.

Visió&n General de CDaoRecordset |nbsp; Miembros de clase | Diagrama de jerarquía

Vea tambié&nnbsp;CDaoRecordset::CanUpdate, CDaoRecordset::CancelUpdate, CDaoRecordset::Delete, CDaoRecordset::Edit, CDaoRecordset::Update, CDaoRecordset::CanTransact

Index