TQSqlFieldInfo Class

Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# TQSqlFieldInfo Class Reference
[sql module]

The TQSqlFieldInfo class stores meta data associated with a SQL field. More...

`#include <ntqsqlfield.h>`

List of all member functions.

## Public Members

- TQSqlFieldInfo ( const TQString & name = TQString::null, TQVariant::Type typ = TQVariant::Invalid, int required = -1, int len = -1, int prec = -1, const TQVariant & defValue = TQVariant ( ), int typeID = 0, bool generated = true, bool trim = false, bool calculated = false )
- TQSqlFieldInfo ( const TQSqlFieldInfo & other )
- TQSqlFieldInfo ( const TQSqlField & other, bool generated = true )
- virtual ~TQSqlFieldInfo ()
- TQSqlFieldInfo & operator= ( const TQSqlFieldInfo & other )
- bool operator== ( const TQSqlFieldInfo & f ) const
- TQSqlField toField () const
- int isRequired () const
- TQVariant::Type type () const
- int length () const
- int precision () const
- TQVariant defaultValue () const
- TQString name () const
- int typeID () const
- bool isGenerated () const
- bool isTrim () const
- bool isCalculated () const
- virtual void setTrim ( bool trim )
- virtual void setGenerated ( bool gen )
- virtual void setCalculated ( bool calc )

## Detailed Description

The TQSqlFieldInfo class stores meta data associated with a SQL field.

TQSqlFieldInfo objects only store meta data; field values are stored in TQSqlField objects.

All values must be set in the constructor, and may be retrieved using isRequired(), type(), length(), precision(), defaultValue(), name(), isGenerated() and typeID().

See also Database Classes.

## Member Function Documentation

### TQSqlFieldInfo::TQSqlFieldInfo ( const TQString & name = TQString::null, TQVariant::Type typ = TQVariant::Invalid, int required = -1, int len = -1, int prec = -1, const TQVariant & defValue = TQVariant ( ), int typeID = 0, bool generated = true, bool trim = false, bool calculated = false )

Constructs a TQSqlFieldInfo with the following parameters:

name | the name of the field.
typ | the field's type in a TQVariant.
required | greater than 0 if the field is required, 0 if its value can be NULL and less than 0 if it cannot be determined whether the field is required or not.
len | the length of the field. Note that for non-character types some databases return either the length in bytes or the number of digits. -1 signifies that the length cannot be determined.
prec | the precision of the field, or -1 if the field has no precision or it cannot be determined.
defValue | the default value that is inserted into the table if none is specified by the user. TQVariant() if there is no default value or it cannot be determined.
typeID | the internal typeID of the database system (only useful for low-level programming). 0 if unknown.
generated | true indicates that this field should be included in auto-generated SQL statments, e.g. in TQSqlCursor.
trim | true indicates that widgets should remove trailing whitespace from character fields. This does not affect the field value but only its representation inside widgets.
calculated | true indicates that the value of this field is calculated. The value of calculated fields can by modified by subclassing TQSqlCursor and overriding TQSqlCursor::calculateField().

### TQSqlFieldInfo::TQSqlFieldInfo ( const TQSqlFieldInfo & other )

Constructs a copy of other.

### TQSqlFieldInfo::TQSqlFieldInfo ( const TQSqlField & other, bool generated = true )

Creates a TQSqlFieldInfo object with the type and the name of the TQSqlField other. If generated is true this field will be included in auto-generated SQL statments, e.g. in TQSqlCursor.

### TQSqlFieldInfo::~TQSqlFieldInfo ()`[virtual]`

Destroys the object and frees any allocated resources.

### TQVariant TQSqlFieldInfo::defaultValue () const

Returns the field's default value or an empty TQVariant if the field has no default value or the value couldn't be determined. The default value is the value inserted in the database when it is not explicitly specified by the user.

### bool TQSqlFieldInfo::isCalculated () const

Returns true if the field is calculated; otherwise returns false.

See also setCalculated().

### bool TQSqlFieldInfo::isGenerated () const

Returns true if the field should be included in auto-generated SQL statments, e.g. in TQSqlCursor; otherwise returns false.

See also setGenerated().

### int TQSqlFieldInfo::isRequired () const

Returns a value greater than 0 if the field is required (NULL values are not allowed), 0 if it isn't required (NULL values are allowed) or less than 0 if it cannot be determined whether the field is required or not.

### bool TQSqlFieldInfo::isTrim () const

Returns true if trailing whitespace should be removed from character fields; otherwise returns false.

See also setTrim().

### int TQSqlFieldInfo::length () const

Returns the field's length. For fields storing text the return value is the maximum number of characters the field can hold. For non-character fields some database systems return the number of bytes needed or the number of digits allowed. If the length cannot be determined -1 is returned.

### TQString TQSqlFieldInfo::name () const

Returns the name of the field in the SQL table.

Examples: sql/overview/subclass3/main.cpp and sql/overview/subclass4/main.cpp.

### TQSqlFieldInfo & TQSqlFieldInfo::operator= ( const TQSqlFieldInfo & other )

Assigns other to this field info and returns a reference to it.

### bool TQSqlFieldInfo::operator== ( const TQSqlFieldInfo & f ) const

Returns true if this fieldinfo is equal to f; otherwise returns false.

Two field infos are considered equal if all their attributes match.

### int TQSqlFieldInfo::precision () const

Returns the field's precision or -1 if the field has no precision or it cannot be determined.

### void TQSqlFieldInfo::setCalculated ( bool calc )`[virtual]`

calc set to true indicates that this field is a calculated field. The value of calculated fields can by modified by subclassing TQSqlCursor and overriding TQSqlCursor::calculateField().

See also isCalculated().

### void TQSqlFieldInfo::setGenerated ( bool gen )`[virtual]`

gen set to false indicates that this field should not appear in auto-generated SQL statements (for example in TQSqlCursor).

See also isGenerated().

### void TQSqlFieldInfo::setTrim ( bool trim )`[virtual]`

If trim is true widgets should remove trailing whitespace from character fields. This does not affect the field value but only its representation inside widgets.

See also isTrim().

### TQSqlField TQSqlFieldInfo::toField () const

Returns an empty TQSqlField based on the information in this TQSqlFieldInfo.

### TQVariant::Type TQSqlFieldInfo::type () const

Returns the field's type or TQVariant::Invalid if the type is unknown.

### int TQSqlFieldInfo::typeID () const

Returns the internal type identifier as returned from the database system. The return value is 0 if the type is unknown.

Warning: This information is only useful for low-level database programming and is not database independent.

This file is part of the TQt toolkit. Copyright © 1995-2007 Trolltech. All Rights Reserved.