AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Administrar bases de datos / HFSQL / Funciones HFSQL
  • Gestión de los identificadores de automatic
  • Reutilización de los registros borrados o liberados
  • Versión del archivo de datos después de una adición
  • Añadiendo un Record en una consulta
  • Adición de registros en una vista
  • Navegación y adición de registros
  • Lentitud al añadir o eliminar una Record por primera vez en un archivo de datos HFSQL
  • Adición a una base de datos en formato Hyper File 5.5
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Duplica un registro leído en un archivo de datos: el registro de la memoria se agrega al archivo de datos (consulta o vista). Los índices que corresponden a las claves utilizadas en la archivo de datos se actualizan automáticamente. Los posibles memos se agregan si la gestión de memos está habilitada (función HSetMemo).
Tras la llamada a HDuplicateRecord:
  • Un manejo de errores de automatic está disponible para varios tipos de errores: Error de duplicados, error de integridad, error de contraseña, error de conflicto de modificación, error de estado durante el conflicto de modificación y error de bloqueo, ... Para obtener más información, consulte Gestión asistida de errores HFSQL.
  • Si la gestión de duplicados está activada y el archivo de datos contiene una clave única, la función HErrorDuplicates devuelve True si el valor de la clave agregada no es único. El registro no se agrega.
  • El registro agregado se convierte en el registro actual. El identificador automático se completa automáticamente. Por Default, la iteración actual no se ve afectada.
Observación: Todo el Record en la memoria (el contenido de Record previamente leído) está escrito en el archivo de datos.
Observaciones:
  • Esta función también se puede utilizar en una vista o en una consulta.
  • HDuplicateRecord y HAdd son equivalentes.
Ejemplo
// Duplicates the current record
HDuplicateRecord(Customer)
Sintaxis
<Result> = HDuplicateRecord([<Data file> [, <Options>]])
<Result>: booleano
  • True si se agregó el registro,
  • False si se produce un problema (error de integridad, duplicados, etc). La función HError permite identificar el error.
<Data file>: Cadena de caracteres opcional
Nombre del archivo de datos, vista o consulta utilizada. Si no se especifica este nombre, la función HDuplicateRecord utilizará el último archivo de datos utilizado por la última función HFSQL (que empieza por "H").
<Options>: Constante opcional
Permite configurar:
  • el efecto al agregar un registro en la navegación en curso.
  • el modo de cálculo del identificador automático. Para obtener más información, consulte Gestión del identificador automático al agregar un registro.
  • el modo de bloqueo del registro agregado.
    • Java Acceso con JDBC: La gestión de las cerraduras no está disponible para las bases de datos a las que accede el JDBC.
  • la gestión de duplicados.
  • la gestión de la integridad.
Hyper File 5.5 Este parámetro no se tiene en cuenta.
hAffectBrowseEfecto al agregar registros en la navegación: Al agregar registros, se altera la navegación.
Por ejemplo, HReadNext utilizado después de HDuplicateRecord posiciones en el Record encontrado después de la Record añadido.
La constante hAffectBrowse tiene prioridad sobre la constante hWriteDefault.
hCheckDuplicatesModo de gestión de duplicados: Verifica los duplicados en esta operación, incluso si la verificación de duplicados está desactivada (función HSetDuplicates).
Si se utilizan las constantes hIgnoreDuplicates y hCheckDuplicates al mismo tiempo, se produce un error WLanguage.
Java Acceso con JDBC: Esta constante no está disponible.
hCheckIntegrityModo de gestión de la integridad: Comprueba la integridad de la operación, incluso si la comprobación de integridad de automatic está desactivada (HSetIntegrity).
Si se utilizan las constantes hIgnoreIntegrity y hCheckIntegrity al mismo tiempo, se produce un error WLanguage.
Java Acceso con JDBC: Esta constante no está disponible.
hForceIdAutoModo de cálculo del identificador automático: El identificador automático no se calcula al agregar registros. El identificador corresponde a:
  • el valor asignado al elemento mediante programación (por ejemplo, CUSTOMERID = 7)
  • el valor predeterminado del identificador que se especificó en el editor de análisis (si el archivo de datos acaba de abrirse, sin que se haya leído ningún registro)
  • el valor del identificador en la memoria (valor del identificador del último registro leído en el archivo de datos).
Después de agregar el registro, se calculará el siguiente identificador automático calculado por el motor HFSQL, sin tener en cuenta el valor agregado con hForceIdAuto.
Si se utilizan las constantes hSetIdAuto y hForceIdAuto al mismo tiempo, se genera un error WLanguage.
Conectores Nativos SQLServer CE: No se puede utilizar la constante hForceIdAuto.
hIgnoreDuplicatesModo de gestión de duplicados: No comprueba la existencia de duplicados para esta operación, incluso si la verificación automática de duplicados está activada (función HSetDuplicates).
Si se utilizan las constantes hIgnoreDuplicates y hCheckDuplicates al mismo tiempo, se produce un error WLanguage.
Java Acceso con JDBC: Esta constante no está disponible.
hIgnoreIntegrityModo de gestión de la integridad: Ignora la verificación de la integridad en esta operación, incluso si la verificación automática de la integridad está activada (función HSetIntegrity).
Si se utilizan las constantes hIgnoreIntegrity y hCheckIntegrity al mismo tiempo, se produce un error WLanguage.
Java Acceso con JDBC: Esta constante no está disponible.
hLockNo (valor predeterminado)Modo de bloqueo del registro agregado: Sin bloqeuo: el registro agregado no se bloqueará.
Java Acceso con JDBC: Esta constante no está disponible.
hLockReadWriteModo de bloqueo del registro agregado: Bloqueo de lectura/escritura: se aplicará un bloqueo de lectura y escritura en el registro agregado . Este registro no puede ser leído ni modificado por otras aplicaciones. Solo la aplicación actual puede modificarlo, leerlo o desbloquearlo.
Java Acceso con JDBC: Esta constante no está disponible.
hLockWriteModo de bloqueo del registro agregado: Bloqueo de escritura: el registro agregado se bloqueará contra escritura. Otras aplicaciones pueden leer el registro pero no modificarlo. Solo la aplicación en curso podrá modificarlo o desbloquearlo.
Java Acceso con JDBC: Esta constante no está disponible.
hSetIdAutoModo de cálculo del identificador automático: El identificador automático no se calcula al agregar registros: el valor del identificador será el que se almacena al agregar un registro.
El siguiente valor del identificador calculado por el motor HFSQL corresponderá al mayor valor del identificador en el archivo +1.
Si se utilizan las constantes hSetIdAuto y hForceIdAuto al mismo tiempo, se genera un error WLanguage.
Conectores Nativos SQLServer CE: No se puede utilizar la constante hSetIdAuto.
hWriteDefault
(valor predeterminado)
Efecto al agregar registros en la navegación: Al agregar registros, no se altera la navegación.
Por ejemplo, HReadNext utilizado después de HDuplicateRecord posiciones en el Record encontrado después de la actual Record antes de la adición.
La constante hAffectBrowse tiene prioridad sobre la constante hWriteDefault.
Observaciones

Gestión de los identificadores de automatic

Por defecto, el elemento "identificador automático" se actualiza automáticamente cuando se añade un Record en un archivo de datos. No hay necesidad de leer el Record de nuevo para averiguar el valor del identificador automatic. Simplemente use la siguiente sintaxis: <Nombre del archivo>.<Nombre del elemento identificador de automatic>.
Las constantes hForceIdAuto y hSetIdAuto permiten modificar el comportamiento predeterminado del identificador automático.
Para más detalles sobre los identificadores automatic para los nuevos registros, véase Gestión del identificador automático al agregar un registro.
JavaOLE DBConectores Nativos Caso especial
  • Si la base de datos genera un identificador automatic, el motor HFSQL mantiene este valor. Si se especifica la constante hForceIDAuto o hSetIDAuto, el motor HFSQL sustituye el valor generado por el valor deseado.
    Observación: la constante hForceIdAuto equivale a hSetIdAuto: el identificador automatic calculado por el motor HFSQL durante la próxima adición será único en el archivo de datos.
  • Si la base de datos no genera ningún identificador de automatic, el motor HFSQL genera el valor y lo asigna al identificador automatic.
WINDEVUniversal Windows 10 AppJavaHFSQL ClassicHFSQL Client/ServerHyper File 5.5

Reutilización de los registros borrados o liberados

Cuando se añade un nuevo Record, el motor HFSQL optimiza el relleno del archivo de datos. El espacio correspondiente a las Record s borradas o liberadas se utiliza primero cuando se añade una nueva Record.
Los registros cruzados no se reutilizan.
WINDEVUniversal Windows 10 AppJavaHFSQL ClassicHFSQL Client/ServerHyper File 5.5

Versión del archivo de datos después de una adición

Si el Record fue agregado a el archivo de datos (sin error de duplicación y sin error de integridad), el número de versión del archivo de datos es modificado. Para get el número de versión, utilice HVersion.

Añadiendo un Record en una consulta

Se puede añadir una Record a una consulta:
  • en el resultado de la consulta.
  • en los archivos de datos tratados por la consulta (hModifyFile constante utilizada en HExecuteQuery o HExecuteSQLQuery). En este caso, la constante hWithFilter se selecciona automáticamente.
Independientemente del modo de ejecución de la consulta (con o sin la constante hWithFilter), solo es posible agregar registros a una consulta de archivo único. Las posiciones calculadas especificadas durante la suma se ignoran. Se calculan automáticamente.
Atención:
  • No se permite ninguna adición en una consulta que utilice grupos o agregados.
  • La gestión de la integridad y de los duplicados no se realiza durante las operaciones en las consultas multiarchivo.: se recomienda utilizar las transacciones para evitar cualquier problema.
WINDEVUniversal Windows 10 AppHFSQL ClassicHFSQL Client/Server

Adición de registros en una vista

Tiene la posibilidad de añadir registros en una vista creada sobre archivos de datos en formato HFSQL Classic. Estos registros se añaden sólo en la memoria. Para añadirlos en el archivo de datos relacionado a la vista (vista simple, por ejemplo), debe utilizar HViewToFile.

Navegación y adición de registros

Es posible configurar el efecto de agregar registros al navegar por un archivo de datos (constantes hWriteDefault y hAffectBrowse). El modo de funcionamiento de las versiones anteriores puede mantenerse usando la constante hAffectBrowse.
JavaOLE DBConectores Nativos Casos especiales: Si se añade el Record durante una búsqueda, será Visible sólo en la búsqueda actual.. Si se han definido otras operaciones de navegación en esta base de datos, el nuevo Record sólo será Visible una vez que estas operaciones de navegación se hayan reiniciado.

Lentitud al añadir o eliminar una Record por primera vez en un archivo de datos HFSQL

Acceder por primera vez a un Record en un archivo de datos HFSQL puede llevar mucho tiempo. Para solucionar este problema:
  • Desactive el antivirus para los archivos.FIC,.NDX,.MMO y.REP.
  • Desactive la opción "Restaurar el sistema" en Windows XP.
WINDEVHyper File 5.5

Adición a una base de datos en formato Hyper File 5.5

If está utilizando HDuplicateRecord con una base de datos en formato Hyper File 5.5:
  • Las opciones de adición (<Opciones>) se ignoran.
  • Los elementos TEXT se rellenan automáticamente con caracteres de espacio.
  • HDuplicateRecord no puede utilizarse en una vista creada a partir de archivos de datos de Hyper File 5.5.
Componente: wd290hf.dll
Versión mínima requerida
  • Versión 18
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local