QSqlRecord Class
La classe QSqlRecord encapsule un enregistrement de base de données. Plus d'informations...
| En-tête : | #include <QSqlRecord> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Sql)target_link_libraries(mytarget PRIVATE Qt6::Sql) |
| qmake : | QT += sql |
| Inherited By : |
- Liste de tous les membres, y compris les membres hérités
- QSqlRecord fait partie des classes de bases de données et des classes implicitement partagées.
Fonctions publiques
| 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 |
Description détaillée
La classe QSqlRecord encapsule les fonctionnalités et les caractéristiques d'un enregistrement de base de données (généralement une ligne dans une table ou une vue de la base de données). QSqlRecord permet d'ajouter et de supprimer des champs, ainsi que de définir et d'extraire des valeurs de champ.
Les valeurs des champs d'un enregistrement peuvent être définies par nom ou par position à l'aide de setValue() ; si vous souhaitez définir un champ comme nul, utilisez setNull(). Pour trouver la position d'un champ par son nom, utilisez indexOf(), et pour trouver le nom d'un champ à une position particulière, utilisez fieldName(). Utilisez field() pour récupérer un objet QSqlField pour un champ donné. Utilisez contains() pour vérifier si l'enregistrement contient un nom de rubrique particulier.
Lorsque des requêtes sont générées pour être exécutées sur la base de données, seuls les champs pour lesquels isGenerated() est vrai sont inclus dans le code SQL généré.
Un enregistrement peut avoir des champs ajoutés avec append() ou insert(), remplacés avec replace(), et supprimés avec remove(). Tous les champs peuvent être supprimés avec clear(). Le nombre de champs est donné par count() ; toutes leurs valeurs peuvent être effacées (à null) en utilisant clearValues().
Voir également QSqlField et QSqlQuery::record().
Documentation sur les fonctions membres
QSqlRecord::QSqlRecord()
Construit un enregistrement vide.
Voir aussi isEmpty(), append() et insert().
QSqlRecord::QSqlRecord(const QSqlRecord &other)
Construit une copie de other.
QSqlRecord est implicitement partagé. Cela signifie que vous pouvez faire des copies d'un enregistrement en temps constant.
[constexpr noexcept, since 6.6] QSqlRecord::QSqlRecord(QSqlRecord &&other)
Move-construit un nouveau QSqlRecord à partir de other.
Note : L'objet déplacé other est placé dans un état partiellement formé, dans lequel les seules opérations valides sont la destruction et l'assignation d'une nouvelle valeur.
Cette fonction a été introduite dans Qt 6.6.
[noexcept] QSqlRecord::~QSqlRecord()
Détruit l'objet et libère les ressources allouées.
void QSqlRecord::append(const QSqlField &field)
Ajouter une copie de la zone field à la fin de l'enregistrement.
Voir aussi insert(), replace() et remove().
void QSqlRecord::clear()
Supprime tous les champs de l'enregistrement.
Voir aussi clearValues() et isEmpty().
void QSqlRecord::clearValues()
Efface la valeur de tous les champs de l'enregistrement et donne à chaque champ la valeur null.
Voir aussi setValue().
bool QSqlRecord::contains(QAnyStringView name) const
Renvoie true s'il existe un champ dans l'enregistrement appelé name; sinon, renvoie false.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
int QSqlRecord::count() const
Renvoie le nombre de champs de l'enregistrement.
Voir aussi isEmpty().
QSqlField QSqlRecord::field(int index) const
Renvoie le champ à la position index. Si l'adresse index est hors de portée, la fonction renvoie une valeur construite par défaut.
QSqlField QSqlRecord::field(QAnyStringView name) const
Renvoie le champ appelé name. Si le champ appelé name n'est pas trouvé, la fonction renvoie une valeur construite par défaut.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
QString QSqlRecord::fieldName(int index) const
Renvoie le nom du champ à la position index. Si le champ n'existe pas, une chaîne vide est renvoyée.
Voir aussi indexOf().
int QSqlRecord::indexOf(QAnyStringView name) const
Renvoie la position du champ appelé name dans l'enregistrement, ou -1 s'il est introuvable. Les noms de champs ne sont pas sensibles à la casse. Si plusieurs champs correspondent, le premier est renvoyé.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Voir aussi fieldName().
void QSqlRecord::insert(int pos, const QSqlField &field)
Insère la rubrique field à la position pos dans l'enregistrement.
Voir également append(), replace() et remove().
bool QSqlRecord::isEmpty() const
Renvoie true s'il n'y a pas de champs dans l'enregistrement ; sinon, renvoie false.
Voir aussi append(), insert() et clear().
bool QSqlRecord::isGenerated(int index) const
Renvoie true si l'enregistrement comporte un champ à la position index et que ce champ doit être généré (par défaut) ; sinon, renvoie false.
Voir aussi setGenerated().
bool QSqlRecord::isGenerated(QAnyStringView name) const
Renvoie true si l'enregistrement possède un champ appelé name et que ce champ doit être généré (par défaut) ; sinon, renvoie false.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
Voir aussi setGenerated().
bool QSqlRecord::isNull(int index) const
Renvoie true si le champ index est nul ou s'il n'y a pas de champ à la position index; sinon, renvoie false.
Voir aussi setNull().
bool QSqlRecord::isNull(QAnyStringView name) const
Renvoie true si le champ appelé name est nul ou s'il n'y a pas de champ appelé name; sinon, renvoie false.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
Voir aussi setNull().
QSqlRecord QSqlRecord::keyValues(const QSqlRecord &keyFields) const
Renvoie un enregistrement contenant les champs représentés dans keyFields avec les valeurs correspondant au nom du champ.
void QSqlRecord::remove(int pos)
Supprime le champ à la position pos. Si pos est hors de portée, rien ne se passe.
Voir aussi append(), insert() et replace().
void QSqlRecord::replace(int pos, const QSqlField &field)
Remplace le champ à la position pos par le champ donné field. Si pos est hors de portée, rien ne se passe.
Voir aussi append(), insert() et remove().
void QSqlRecord::setGenerated(QAnyStringView name, bool generated)
Définit l'indicateur généré pour le champ appelé name à generated. Si le champ n'existe pas, rien ne se passe. Seuls les champs pour lesquels generated vaut true sont inclus dans le code SQL généré par QSqlQueryModel par exemple.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Voir aussi isGenerated().
void QSqlRecord::setGenerated(int index, bool generated)
Définit l'indicateur généré pour le champ index à generated.
Voir aussi isGenerated().
void QSqlRecord::setNull(int index)
Fixe la valeur du champ index à null. Si le champ n'existe pas, rien ne se passe.
Voir aussi isNull() et setValue().
void QSqlRecord::setNull(QAnyStringView name)
Fixe la valeur du champ appelé name à null. Si le champ n'existe pas, rien ne se passe.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
void QSqlRecord::setValue(int index, const QVariant &val)
Définit la valeur du champ à la position index à val. Si le champ n'existe pas, rien ne se passe.
Voir aussi value() et setNull().
void QSqlRecord::setValue(QAnyStringView name, const QVariant &val)
Définit la valeur du champ appelé name à val. Si le champ n'existe pas, rien ne se passe.
Remarque : dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
Voir aussi setNull().
[noexcept, since 6.6] void QSqlRecord::swap(QSqlRecord &other)
Remplace cet enregistrement SQL par other. Cette opération est très rapide et n'échoue jamais.
Cette fonction a été introduite dans Qt 6.6.
QVariant QSqlRecord::value(int index) const
Renvoie la valeur du champ situé à la position index dans l'enregistrement. Si index est hors limites, une valeur invalide QVariant est renvoyée.
Voir aussi setValue(), fieldName() et isNull().
QVariant QSqlRecord::value(QAnyStringView name) const
Renvoie la valeur du champ appelé name dans l'enregistrement. Si le champ name n'existe pas, une variante invalide est renvoyée.
Remarque : Dans les versions de Qt antérieures à la version 6.8, cette fonction prenait QString, et non QAnyStringView.
Il s'agit d'une fonction surchargée.
Voir aussi indexOf() et isNull().
bool QSqlRecord::operator!=(const QSqlRecord &other) const
Renvoie true si cet objet n'est pas identique à other; sinon, renvoie false.
Voir aussi operator==().
[noexcept, since 6.6] QSqlRecord &QSqlRecord::operator=(QSqlRecord &&other)
Move-assigne other à cette instance QSqlRecord.
Remarque : L'objet déplacé other est placé dans un état partiellement formé, dans lequel les seules opérations valides sont la destruction et l'attribution d'une nouvelle valeur.
Cette fonction a été introduite dans Qt 6.6.
QSqlRecord &QSqlRecord::operator=(const QSqlRecord &other)
Fixe l'enregistrement à la valeur de other.
QSqlRecord est implicitement partagé. Cela signifie que vous pouvez faire des copies d'un enregistrement en temps constant.
bool QSqlRecord::operator==(const QSqlRecord &other) const
Renvoie true si cet objet est identique à other (c'est-à-dire qu'il possède les mêmes champs dans le même ordre) ; sinon, renvoie false.
Voir aussi 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.