- class QSqlField¶
The
QSqlField
class manipulates the fields in SQL database tables and views. More…Synopsis¶
Properties¶
Methods¶
def
__init__()
def
clear()
def
defaultValue()
def
isAutoValue()
def
isGenerated()
def
isNull()
def
isReadOnly()
def
isValid()
def
length()
def
metaType()
def
name()
def
__ne__()
def
__eq__()
def
precision()
def
requiredStatus()
def
setAutoValue()
def
setGenerated()
def
setLength()
def
setMetaType()
def
setName()
def
setPrecision()
def
setReadOnly()
def
setRequired()
def
setSqlType()
def
setTableName()
def
setValue()
def
swap()
def
tableName()
def
typeID()
def
value()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description¶
Warning
This section contains snippets that were automatically translated from C++ to Python and may contain errors.
QSqlField
represents the characteristics of a single column in a database table or view, such as the data type and column name. A field also contains the value of the database column, which can be viewed or changed.Field data values are stored as QVariants. Using an incompatible type is not permitted. For example:
field = QSqlField("age", QMetaType.fromType()) field.setValue(QPixmap()) # WRONG
However, the field will attempt to cast certain data types to the field data type where possible:
field = QSqlField("age", QMetaType.fromType()) field.setValue(QString("123")) # casts QString to int
QSqlField
objects are rarely created explicitly in application code. They are usually accessed indirectly throughQSqlRecord
s that already contain a list of fields. For example:query = QSqlQuery() ... record = query.record() field = record.field("country")
A
QSqlField
object can provide some meta-data about the field, for example, itsname()
, variant type(),length()
,precision()
,defaultValue()
, typeID(), and itsrequiredStatus()
,isGenerated()
andisReadOnly()
. The field’s data can be checked to see if itisNull()
, and itsvalue()
retrieved. When editing the data can be set withsetValue()
or set to NULL withclear()
.See also
- class RequiredStatus¶
Specifies whether the field is required or optional.
Constant
Description
QSqlField.Required
The field must be specified when inserting records.
QSqlField.Optional
The fields doesn’t have to be specified when inserting records.
QSqlField.Unknown
The database driver couldn’t determine whether the field is required or optional.
See also
Note
Properties can be used directly when
from __feature__ import true_property
is used or via accessor functions otherwise.- property autoValueᅟ: bool¶
If the value is auto-generated by the database, for example auto-increment primary key values, this value is
true
.Note
When using the ODBC driver, due to limitations in the ODBC API, the
isAutoValue()
field is only populated in aQSqlField
resulting from aQSqlRecord
obtained by executing aSELECT
query. It isfalse
in aQSqlField
resulting from aQSqlRecord
returned fromrecord()
orprimaryIndex()
.- Access functions:
- property defaultValueᅟ: object¶
This property holds the default value for this field. Only some database drivers supports this property. Currently those are SQLite, PostgreSQL, Oracle and MySQL/MariaDB.
- Access functions:
- property generatedᅟ: bool¶
This property holds the generated state. If
generated
isfalse
, no SQL will be generated for this field; otherwise, Qt classes such asQSqlQueryModel
andQSqlTableModel
will generate SQL for this field.- Access functions:
- property lengthᅟ: int¶
This property holds the field’s length.
If the value is negative, it means that the information is not available from the database. For strings this is the maximum number of characters the string can hold; the meaning varies for other types.
- Access functions:
This property holds the field’s type as stored in the database. Note that the actual value might have a different type, Numerical values that are too large to store in a long int or double are usually stored as strings to prevent precision loss.
See also
- Access functions:
- property nameᅟ: str¶
This property holds the name of the field. This can be the column name or a user given alias.
- property precisionᅟ: int¶
This property holds the field’s precision; this is only meaningful for numeric types.
If the returned value is negative, it means that the information is not available from the database.
- Access functions:
- property readOnlyᅟ: bool¶
When this property is
true
then thisQSqlField
cannot be modified. A read-only field cannot have its value set withsetValue()
and cannot be cleared to NULL withclear()
.- Access functions:
- property requiredStatusᅟ: QSqlField.RequiredStatus¶
This property holds the
RequiredStatus
of the field. AnINSERT
will fail if a required field does not have a value.See also
- Access functions:
- property tableNameᅟ: str¶
This property holds the
tableName
of the field.Note
When using the QPSQL driver, due to limitations in the libpq library, the
tableName()
field is not populated in aQSqlField
resulting from aQSqlRecord
obtained byrecord()
of a forward-only query.- Access functions:
- property valueᅟ: object¶
This property holds the
value
as a QVariantSetting a
value
to a read-onlyQSqlField
is a no-op. If the data type ofvalue
differs from the field’s current data type, an attempt is made to cast it to the proper type. This preserves the data type of the field in the case of assignment, e.g. a QString to an integer data type.To set the value to NULL, use
clear()
.- Access functions:
Constructs a copy of
other
.- __init__([fieldName=""[, type=QMetaType()[, tableName=""]]])
- Parameters:
fieldName – str
type –
QMetaType
tableName – str
This is an overloaded function.
Constructs an empty field called
fieldName
of typetype
intable
.- clear()¶
Clears the value of the field and sets it to NULL. If the field is read-only, nothing happens.
- defaultValue()¶
- Return type:
object
Sets the value of defaultValue.
See also
Getter of property
defaultValueᅟ
.- isAutoValue()¶
- Return type:
bool
Returns the value of
autoValue
.Getter of property
autoValueᅟ
.- isGenerated()¶
- Return type:
bool
Returns the value of
generated
.Getter of property
generatedᅟ
.- isNull()¶
- Return type:
bool
Returns
true
if the field’s value is NULL; otherwise returns false.See also
- isReadOnly()¶
- Return type:
bool
Returns the value of
readOnly
.Getter of property
readOnlyᅟ
.- isValid()¶
- Return type:
bool
Returns
true
if the field’s variant type is valid; otherwise returnsfalse
.- length()¶
- Return type:
int
Returns the value of length.
See also
Getter of property
lengthᅟ
.Returns the value of metaType.
See also
Getter of property
metaTypeᅟ
.- name()¶
- Return type:
str
Returns the value of name.
See also
Getter of property
nameᅟ
.Returns
true
if the field is unequal toother
; otherwise returns false.Returns
true
if the field is equal toother
; otherwise returns false.- precision()¶
- Return type:
int
Returns the value of precision.
See also
Getter of property
precisionᅟ
.- requiredStatus()¶
- Return type:
Returns the value of requiredStatus.
See also
Getter of property
requiredStatusᅟ
.- setAutoValue(autoVal)¶
- Parameters:
autoVal – bool
Sets
autoValue
toautoVal
.See also
Setter of property
autoValueᅟ
.- setDefaultValue(value)¶
- Parameters:
value – object
Sets
defaultValue
tovalue
.See also
Setter of property
defaultValueᅟ
.- setGenerated(gen)¶
- Parameters:
gen – bool
Sets
generated
togen
.See also
Setter of property
generatedᅟ
.- setLength(fieldLength)¶
- Parameters:
fieldLength – int
Sets
length
tofieldLength
.See also
Setter of property
lengthᅟ
.Sets
metaType
totype
.See also
Setter of property
metaTypeᅟ
.- setName(name)¶
- Parameters:
name – str
Sets
name
toname
.See also
Setter of property
nameᅟ
.- setPrecision(precision)¶
- Parameters:
precision – int
Sets
precision
toprecision
.See also
Setter of property
precisionᅟ
.- setReadOnly(readOnly)¶
- Parameters:
readOnly – bool
Sets
readOnly
toreadOnly
.See also
Setter of property
readOnlyᅟ
.- setRequired(required)¶
- Parameters:
required – bool
Sets the required status of this field to
Required
ifrequired
is true; otherwise sets it toOptional
.See also
- setRequiredStatus(status)¶
- Parameters:
status –
RequiredStatus
Sets
requiredStatus
torequired
.See also
Setter of property
requiredStatusᅟ
.- setSqlType(type)¶
- Parameters:
type – int
Note
This function is deprecated.
This internal value is no longer used.
- setTableName(tableName)¶
- Parameters:
tableName – str
Sets
tableName
totableName
.See also
Setter of property
tableNameᅟ
.- setValue(value)¶
- Parameters:
value – object
Sets
value
tovalue
.See also
Setter of property
valueᅟ
.Swaps this field with
other
. This function is very fast and never fails.- tableName()¶
- Return type:
str
Returns the tableName.
See also
Getter of property
tableNameᅟ
.- typeID()¶
- Return type:
int
Note
This function is deprecated.
This internal value is no longer used.
Returns the type ID for the field.
If the returned value is negative, it means that the information is not available from the database.
- value()¶
- Return type:
object
Returns the value of value.
See also
Getter of property
valueᅟ
.