|  | Home · All Classes · Modules

# QSqlRecord Class Reference
[QtSql module]

The QSqlRecord class encapsulates a database record. More...

Inherited by QSqlIndex.

### Methods

- __init__ (self)
- __init__ (self, QSqlRecord other)
- append (self, QSqlField field)
- clear (self)
- clearValues (self)
- bool contains (self, QString name)
- int count (self)
- QSqlField field (self, int i)
- QSqlField field (self, QString name)
- QString fieldName (self, int i)
- int indexOf (self, QString name)
- insert (self, int pos, QSqlField field)
- bool isEmpty (self)
- bool isGenerated (self, int i)
- bool isGenerated (self, QString name)
- bool isNull (self, int i)
- bool isNull (self, QString name)
- remove (self, int pos)
- replace (self, int pos, QSqlField field)
- setGenerated (self, QString name, bool generated)
- setGenerated (self, int i, bool generated)
- setNull (self, int i)
- setNull (self, QString name)
- setValue (self, int i, QVariant val)
- setValue (self, QString name, QVariant val)
- QVariant value (self, int i)
- QVariant value (self, QString name)

### Special Methods

- bool __eq__ (self, QSqlRecord other)
- bool __ne__ (self, QSqlRecord other)

## Detailed Description

The QSqlRecord class encapsulates a database record.

The QSqlRecord class encapsulates the functionality and characteristics of a database record (usually a row in a table or view within the database). QSqlRecord supports adding and removing fields as well as setting and retrieving field values.

The values of a record's fields' can be set by name or position with setValue(); if you want to set a field to null use setNull(). To find the position of a field by name use indexOf(), and to find the name of a field at a particular position use fieldName(). Use field() to retrieve a QSqlField object for a given field. Use contains() to see if the record contains a particular field name.

When queries are generated to be executed on the database only those fields for which isGenerated() is true are included in the generated SQL.

A record can have fields added with append() or insert(), replaced with replace(), and removed with remove(). All the fields can be removed with clear(). The number of fields is given by count(); all their values can be cleared (to null) using clearValues().

See also QSqlField and QSqlQuery.record().

## Method Documentation

### QSqlRecord.__init__ (self)

Constructs an empty record.

See also isEmpty(), append(), and insert().

### QSqlRecord.__init__ (self, QSqlRecord other)

Constructs a copy of other.

QSqlRecord is implicitly shared. This means you can make copies of a record in constant time.

### QSqlRecord.append (self, QSqlField field)

Append a copy of field field to the end of the record.

See also insert(), replace(), and remove().

### QSqlRecord.clear (self)

Removes all the record's fields.

See also clearValues() and isEmpty().

### QSqlRecord.clearValues (self)

Clears the value of all fields in the record and sets each field to null.

See also setValue().

### bool QSqlRecord.contains (self, QString name)

Returns true if there is a field in the record called name; otherwise returns false.

### int QSqlRecord.count (self)

Returns the number of fields in the record.

See also isEmpty().

### QSqlField QSqlRecord.field (self, int i)

Returns the field at position index. If the position is out of range, an empty field is returned.

### QSqlField QSqlRecord.field (self, QString name)

This is an overloaded function.

Returns the field called name.

### QString QSqlRecord.fieldName (self, int i)

Returns the name of the field at position index. If the field does not exist, an empty string is returned.

See also indexOf().

### int QSqlRecord.indexOf (self, QString name)

Returns the position of the field called name within the record, or -1 if it cannot be found. Field names are not case-sensitive. If more than one field matches, the first one is returned.

See also fieldName().

### QSqlRecord.insert (self, int pos, QSqlField field)

Inserts the field field at position pos in the record.

See also append(), replace(), and remove().

### bool QSqlRecord.isEmpty (self)

Returns true if there are no fields in the record; otherwise returns false.

See also append(), insert(), and clear().

### bool QSqlRecord.isGenerated (self, int i)

Returns true if the record has a field called name and this field is to be generated (the default); otherwise returns false.

See also setGenerated().

### bool QSqlRecord.isGenerated (self, QString name)

This is an overloaded function.

Returns true if the record has a field at position index and this field is to be generated (the default); otherwise returns false.

See also setGenerated().

### bool QSqlRecord.isNull (self, int i)

Returns true if the field called name is null or if there is no field called name; otherwise returns false.

See also setNull().

### bool QSqlRecord.isNull (self, QString name)

This is an overloaded function.

Returns true if the field index is null or if there is no field at position index; otherwise returns false.

### QSqlRecord.remove (self, int pos)

Removes the field at position pos. If pos is out of range, nothing happens.

See also append(), insert(), and replace().

### QSqlRecord.replace (self, int pos, QSqlField field)

Replaces the field at position pos with the given field. If pos is out of range, nothing happens.

See also append(), insert(), and remove().

### QSqlRecord.setGenerated (self, QString name, bool generated)

Sets the generated flag for the field called name to generated. If the field does not exist, nothing happens. Only fields that have generated set to true are included in the SQL that is generated by QSqlQueryModel for example.

See also isGenerated().

### QSqlRecord.setGenerated (self, int i, bool generated)

This is an overloaded function.

Sets the generated flag for the field index to generated.

See also isGenerated().

### QSqlRecord.setNull (self, int i)

Sets the value of field index to null. If the field does not exist, nothing happens.

See also isNull() and setValue().

### QSqlRecord.setNull (self, QString name)

This is an overloaded function.

Sets the value of the field called name to null. If the field does not exist, nothing happens.

### QSqlRecord.setValue (self, int i, QVariant val)

Sets the value of the field at position index to val. If the field does not exist, nothing happens.

See also value() and setNull().

### QSqlRecord.setValue (self, QString name, QVariant val)

This is an overloaded function.

Sets the value of the field called name to val. If the field does not exist, nothing happens.

### QVariant QSqlRecord.value (self, int i)

Returns the value of the field located at position index in the record. If index is out of bounds, an invalid QVariant is returned.

See also setValue(), fieldName(), and isNull().

### QVariant QSqlRecord.value (self, QString name)

This is an overloaded function.

Returns the value of the field called name in the record. If field name does not exist an invalid variant is returned.

See also indexOf().

### bool QSqlRecord.__eq__ (self, QSqlRecord other)

### bool QSqlRecord.__ne__ (self, QSqlRecord other)