Home · All Classes · Modules · QSS HELP · QSS 案例 · VER007 HOME |
该QSqlField类操纵在SQL数据库中的表和视图中的字段。More...
该QSqlField类操纵在SQL数据库中的表和视图中的字段。
QSqlField表示单个列在数据库中的表或视图的特性,诸如数据类型和列名。字段也包含了数据库列,可以查看或更改的值。
字段数据值被存储为QVariants。使用不兼容的类型是不允许的。例如:
QSqlField field("age", QVariant.Int); field.setValue(QPixmap()); // WRONG
然而,该领域将尝试施放某些数据类型的字段的数据类型的地方可能:
QSqlField field("age", QVariant.Int); field.setValue(QString("123")); // casts QString to int
QSqlField对象很少在应用程序代码中显式创建。它们通常是通过间接访问QSqlRecords表示已经包含字段的列表。例如:
QSqlQuery query; ... QSqlRecord record = query.record(); QSqlField field = record.field("country");
一个QSqlField对象可以提供一些元数据有关的领域,例如,其name( ) ,变异type( )length( )precision( )defaultValue() , typeid的() ,并且它的requiredStatus( )isGenerated()和isReadOnly( ) 。该字段的数据可以被检查,看它是否isNull() ,和其value( )检索。当编辑数据可以与设置setValue()或设置为NULL与clear( ) 。
指定字段是必需的还是可选的。
Constant | Value | Description |
---|---|---|
QSqlField.Required | 1 | 插入记录时,该字段必须被指定。 |
QSqlField.Optional | 0 | 该字段没有插入记录时指定。 |
QSqlField.Unknown | -1 | 数据库驱动程序无法确定该字段是否是必需的或可选的。 |
See also requiredStatus( ) 。
构造一个空字段称为fieldName变异型type。
See also setRequiredStatus( )setLength( )setPrecision( )setDefaultValue( )setGenerated()和setReadOnly( ) 。
构造的副本other。
清除字段的值,并将其设置为NULL 。如果该字段是只读的,什么也没有发生。
See also setValue( )isReadOnly()和requiredStatus( ) 。
返回字段的默认值(可能为空) 。
See also setDefaultValue( )type( )requiredStatus( )length( )precision()和isGenerated( ) 。
返回True如果该值是由数据库自动生成,例如自动递增的主键值。
See also setAutoValue( ) 。
返回True如果生成的字段,否则返回False 。
See also setGenerated( )type( )requiredStatus( )length( )precision()和defaultValue( ) 。
返回True如果该字段的值为NULL ,否则返回False 。
See also value( ) 。
返回True,如果该字段的值是只读的,否则返回False 。
See also setReadOnly( )type( )requiredStatus( )length( )precision( )defaultValue()和isGenerated( ) 。
返回True如果该字段的变量类型是有效的,否则返回False 。
返回字段的长度。
如果返回的值是负的,这意味着该信息不可用,从数据库中。
See also setLength( )type( )requiredStatus( )precision( )defaultValue()和isGenerated( ) 。
返回字段的名称。
See also setName( ) 。
返回字段的精度,这是唯一有意义的数值类型。
如果返回的值是负的,这意味着该信息不可用,从数据库中。
See also setPrecision( )type( )requiredStatus( )length( )defaultValue()和isGenerated( ) 。
返回True如果这是一个必需的字段,否则返回False 。一个INSERT如果一个必填字段没有值将会失败。
See also setRequiredStatus( )type( )length( )precision( )defaultValue()和isGenerated( ) 。
标志着字段自动生成的值,如果autoVal是真实的。
See also isAutoValue( ) 。
设置用于此字段的默认值value。
See also defaultValue( )value( )setType( )setRequiredStatus( )setLength( )setPrecision( )setGenerated()和setReadOnly( ) 。
设置生成的状态。如果gen是假的,没有SQL将这个字段来产生,否则, Qt类如QSqlQueryModel和QSqlTableModel将生成的SQL这一领域。
See also isGenerated( )setType( )setRequiredStatus( )setLength( )setPrecision( )setDefaultValue()和setReadOnly( ) 。
设置字段的长度fieldLength。对于字符串是字符的字符串可以容纳的最大人数;对于其它类型的含义各不相同。
See also length( )setType( )setRequiredStatus( )setPrecision( )setDefaultValue( )setGenerated()和setReadOnly( ) 。
设置字段的名称name。
See also name( ) 。
设置字段的precision。这只会影响数字字段。
See also precision( )setType( )setRequiredStatus( )setLength( )setDefaultValue( )setGenerated()和setReadOnly( ) 。
设置只读标志字段的值来readOnly。只读字段不能有其值设置与setValue( ),并不能清除为NULL与clear( ) 。
See also isReadOnly( ) 。
设置这个字段所需要的状态Required如果required为True,否则设置为Optional。
See also setRequiredStatus()和requiredStatus( ) 。
设置这个字段所需要的状态required。
See also requiredStatus( )setType( )setLength( )setPrecision( )setDefaultValue( )setGenerated()和setReadOnly( ) 。
集的字段的变量类型type。
See also type( )setRequiredStatus( )setLength( )setPrecision( )setDefaultValue( )setGenerated()和setReadOnly( ) 。
设置该字段的值,以value。如果该字段是只读的(isReadOnly( )返回True ) ,没有任何反应。
如果数据类型value不同于字段的当前数据类型,试图将其转换为适当的类型。这将保留字段的数据类型的赋值,如案件一QString为整数数据类型。
将值设置为NULL ,使用clear( ) 。
See also value( )isReadOnly()和defaultValue( ) 。
返回字段的类型与存储在数据库中。请注意,实际值可能有不同的类型,即是太大,无法存储在一个长整型或双通常被存储为字符串,以防止丢失精度的数值。
See also setType( ) 。
返回该字段的值作为QVariant。
使用isNull( )来检查该字段的值是NULL 。
See also setValue( ) 。
PyQt 4.10.3 for X11 | Copyright © Riverbank Computing Ltd and Nokia 2012 | Qt 4.8.5 |