QSqlRecord Class
La clase QSqlRecord encapsula un registro de base de datos. Más...
| Cabecera: | #include <QSqlRecord> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Sql)target_link_libraries(mytarget PRIVATE Qt6::Sql) |
| qmake: | QT += sql |
| Heredado Por: |
- Lista de todos los miembros, incluyendo los heredados
- QSqlRecord es parte de Clases de Bases de Datos y Clases Implícitamente Compartidas.
Funciones Públicas
| QSqlRecord() | |
| QSqlRecord(const QSqlRecord &other) | |
(since 6.6) | QSqlRecord(QSqlRecord &&other) |
| ~QSqlRecord() | |
| void | append(const QSqlField &field) |
| void | clear() |
| void | clearValues() |
| bool | contains(QAnyStringView name) const |
| int | count() const |
| QSqlField | field(int index) const |
| QSqlField | field(QAnyStringView name) const |
| QString | fieldName(int index) const |
| int | indexOf(QAnyStringView name) const |
| void | insert(int pos, const QSqlField &field) |
| bool | isEmpty() const |
| bool | isGenerated(int index) const |
| bool | isGenerated(QAnyStringView name) const |
| bool | isNull(int index) const |
| bool | isNull(QAnyStringView name) const |
| QSqlRecord | keyValues(const QSqlRecord &keyFields) const |
| void | remove(int pos) |
| void | replace(int pos, const QSqlField &field) |
| void | setGenerated(QAnyStringView name, bool generated) |
| void | setGenerated(int index, bool generated) |
| void | setNull(int index) |
| void | setNull(QAnyStringView name) |
| void | setValue(int index, const QVariant &val) |
| void | setValue(QAnyStringView name, const QVariant &val) |
(since 6.6) void | swap(QSqlRecord &other) |
| QVariant | value(int index) const |
| QVariant | value(QAnyStringView name) const |
| bool | operator!=(const QSqlRecord &other) const |
(since 6.6) QSqlRecord & | operator=(QSqlRecord &&other) |
| QSqlRecord & | operator=(const QSqlRecord &other) |
| bool | operator==(const QSqlRecord &other) const |
Descripción Detallada
La clase QSqlRecord encapsula la funcionalidad y características de un registro de base de datos (normalmente una fila en una tabla o vista dentro de la base de datos). QSqlRecord permite añadir y eliminar campos, así como establecer y recuperar valores de campo.
Los valores de los campos de un registro pueden establecerse por nombre o posición con setValue(); si desea establecer un campo como nulo utilice setNull(). Para encontrar la posición de un campo por su nombre, utilice indexOf(), y para encontrar el nombre de un campo en una posición determinada, utilice fieldName(). Utilice field() para recuperar un objeto QSqlField para un campo determinado. Utilice contains() para ver si el registro contiene un nombre de campo concreto.
Cuando se generan consultas para ejecutarlas en la base de datos, sólo se incluyen en el SQL generado aquellos campos para los que isGenerated() es verdadero.
Un registro puede tener campos añadidos con append() o insert(), sustituidos con replace(), y eliminados con remove(). Todos los campos pueden eliminarse con clear(). El número de campos viene dado por count(); todos sus valores se pueden borrar (a null) con clearValues().
Véase también QSqlField y QSqlQuery::record().
Documentación de las funciones miembro
QSqlRecord::QSqlRecord()
Construye un registro vacío.
Véase también isEmpty(), append() y insert().
QSqlRecord::QSqlRecord(const QSqlRecord &other)
Construye una copia de other.
QSqlRecord es implícitamente compartido. Esto significa que puedes hacer copias de un registro en tiempo constante.
[constexpr noexcept, since 6.6] QSqlRecord::QSqlRecord(QSqlRecord &&other)
Move-construye un nuevo QSqlRecord a partir de other.
Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.
Esta función se introdujo en Qt 6.6.
[noexcept] QSqlRecord::~QSqlRecord()
Destruye el objeto y libera los recursos asignados.
void QSqlRecord::append(const QSqlField &field)
Añade una copia del campo field al final del registro.
Véase también insert(), replace() y remove().
void QSqlRecord::clear()
Elimina todos los campos del registro.
Véase también clearValues() y isEmpty().
void QSqlRecord::clearValues()
Borra el valor de todos los campos del registro y establece cada campo como nulo.
Véase también setValue().
bool QSqlRecord::contains(QAnyStringView name) const
Devuelve true si existe un campo en el registro llamado name; en caso contrario devuelve false.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
int QSqlRecord::count() const
Devuelve el número de campos del registro.
Véase también isEmpty().
QSqlField QSqlRecord::field(int index) const
Devuelve el campo en la posición index. Si index está fuera de rango, la función devuelve un valor construido por defecto.
QSqlField QSqlRecord::field(QAnyStringView name) const
Devuelve el campo llamado name. Si el campo llamado name no se encuentra, la función devuelve un valor construido por defecto.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
QString QSqlRecord::fieldName(int index) const
Devuelve el nombre del campo en la posición index. Si el campo no existe, se devuelve una cadena vacía.
Véase también indexOf().
int QSqlRecord::indexOf(QAnyStringView name) const
Devuelve la posición del campo llamado name dentro del registro, o -1 si no se encuentra. Los nombres de campo no distinguen mayúsculas de minúsculas. Si coincide más de un campo, se devuelve el primero.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Véase también fieldName().
void QSqlRecord::insert(int pos, const QSqlField &field)
Inserta el campo field en la posición pos del registro.
Véase también append(), replace() y remove().
bool QSqlRecord::isEmpty() const
Devuelve true si no hay campos en el registro; en caso contrario devuelve false.
Véase también append(), insert() y clear().
bool QSqlRecord::isGenerated(int index) const
Devuelve true si el registro tiene un campo en la posición index y este campo debe ser generado (por defecto); en caso contrario devuelve false.
Véase también setGenerated().
bool QSqlRecord::isGenerated(QAnyStringView name) const
Devuelve true si el registro tiene un campo llamado name y este campo debe ser generado (por defecto); en caso contrario devuelve false.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
Véase también setGenerated().
bool QSqlRecord::isNull(int index) const
Devuelve true si el campo index es nulo o si no hay campo en la posición index; en caso contrario devuelve false.
Véase también setNull().
bool QSqlRecord::isNull(QAnyStringView name) const
Devuelve true si el campo llamado name es nulo o si no hay ningún campo llamado name; en caso contrario devuelve false.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
Véase también setNull().
QSqlRecord QSqlRecord::keyValues(const QSqlRecord &keyFields) const
Devuelve un registro que contiene los campos representados en keyFields establecidos en valores que coinciden por nombre de campo.
void QSqlRecord::remove(int pos)
Elimina el campo en la posición pos. Si pos está fuera de rango, no ocurre nada.
Véase también append(), insert() y replace().
void QSqlRecord::replace(int pos, const QSqlField &field)
Sustituye el campo en la posición pos por el dado field. Si pos está fuera de rango, no ocurre nada.
Véase también append(), insert() y remove().
void QSqlRecord::setGenerated(QAnyStringView name, bool generated)
Establece la bandera generada para el campo llamado name a generated. Si el campo no existe, no ocurre nada. Sólo los campos que tienen generated como valor verdadero se incluyen en el SQL generado por QSqlQueryModel, por ejemplo.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Véase también isGenerated().
void QSqlRecord::setGenerated(int index, bool generated)
Establece la bandera generada para el campo index a generated.
Véase también isGenerated().
void QSqlRecord::setNull(int index)
Establece el valor del campo index en null. Si el campo no existe, no ocurre nada.
Véase también isNull() y setValue().
void QSqlRecord::setNull(QAnyStringView name)
Establece el valor del campo llamado name a null. Si el campo no existe, no ocurre nada.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
void QSqlRecord::setValue(int index, const QVariant &val)
Establece el valor del campo en la posición index a val. Si el campo no existe, no ocurre nada.
Véase también value() y setNull().
void QSqlRecord::setValue(QAnyStringView name, const QVariant &val)
Establece el valor del campo llamado name en val. Si el campo no existe, no ocurre nada.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
Véase también setNull().
[noexcept, since 6.6] void QSqlRecord::swap(QSqlRecord &other)
Intercambia este registro SQL con other. Esta operación es muy rápida y nunca falla.
Esta función se introdujo en Qt 6.6.
QVariant QSqlRecord::value(int index) const
Devuelve el valor del campo situado en la posición index del registro. Si index está fuera de los límites, se devuelve un QVariant no válido.
Véase también setValue(), fieldName() y isNull().
QVariant QSqlRecord::value(QAnyStringView name) const
Devuelve el valor del campo llamado name en el registro. Si el campo name no existe se devuelve una variante inválida.
Nota: En versiones de Qt anteriores a la 6.8, esta función tomaba QString, no QAnyStringView.
Se trata de una función sobrecargada.
Véase también indexOf() y isNull().
bool QSqlRecord::operator!=(const QSqlRecord &other) const
Devuelve true si este objeto no es idéntico a other; en caso contrario devuelve false.
Véase también operator==().
[noexcept, since 6.6] QSqlRecord &QSqlRecord::operator=(QSqlRecord &&other)
Mover-asigna other a esta instancia QSqlRecord.
Nota: El objeto movido-desde other se coloca en un estado parcialmente formado, en el que las únicas operaciones válidas son la destrucción y la asignación de un nuevo valor.
Esta función se introdujo en Qt 6.6.
QSqlRecord &QSqlRecord::operator=(const QSqlRecord &other)
Establece el registro igual a other.
QSqlRecord se comparte implícitamente. Esto significa que puedes hacer copias de un registro en tiempo constante.
bool QSqlRecord::operator==(const QSqlRecord &other) const
Devuelve true si este objeto es idéntico a other (es decir, tiene los mismos campos en el mismo orden); en caso contrario devuelve false.
Véase también operator!=().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.