|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# QSqlIndex Class Reference
[QtSql module]

The QSqlIndex class provides functions to manipulate and describe database indexes. More...

     #include <QSqlIndex>

Inherits QSqlRecord.

- List of all members, including inherited members
- Qt 3 support members

### Public Functions

- QSqlIndex ( const QString & cursorname = QString(), const QString & name = QString() )
- QSqlIndex ( const QSqlIndex & other )
- ~QSqlIndex ()
- void append ( const QSqlField & field )
- void append ( const QSqlField & field, bool desc )
- QString cursorName () const
- bool isDescending ( int i ) const
- QString name () const
- void setCursorName ( const QString & cursorName )
- void setDescending ( int i, bool desc )
- void setName ( const QString & name )
- QSqlIndex & operator= ( const QSqlIndex & other )

- 28 public functions inherited from QSqlRecord

## Detailed Description

The QSqlIndex class provides functions to manipulate and describe database indexes.

An index refers to a single table or view in a database. Information about the fields that comprise the index can be used to generate SQL statements, or to affect the behavior of a QSqlCursor object.

## Member Function Documentation

### QSqlIndex::QSqlIndex ( const QString & cursorname = QString(), const QString & name = QString() )

Constructs an empty index using the cursor name cursorname and index name name.

### QSqlIndex::QSqlIndex ( const QSqlIndex & other )

Constructs a copy of other.

### QSqlIndex::~QSqlIndex ()

Destroys the object and frees any allocated resources.

### void QSqlIndex::append ( const QSqlField & field )

Appends the field field to the list of indexed fields. The field is appended with an ascending sort order.

### void QSqlIndex::append ( const QSqlField & field, bool desc )

This is an overloaded member function, provided for convenience.

Appends the field field to the list of indexed fields. The field is appended with an ascending sort order, unless desc is true.

### QString QSqlIndex::cursorName () const

Returns the name of the cursor which the index is associated with.

See also setCursorName().

### bool QSqlIndex::isDescending ( int i ) const

Returns true if field i in the index is sorted in descending order; otherwise returns false.

### QString QSqlIndex::name () const

Returns the name of the index.

See also setName().

### void QSqlIndex::setCursorName ( const QString & cursorName )

Sets the name of the cursor that the index is associated with to cursorName.

See also cursorName().

### void QSqlIndex::setDescending ( int i, bool desc )

If desc is true, field i is sorted in descending order. Otherwise, field i is sorted in ascending order (the default). If the field does not exist, nothing happens.

See also isDescending().

### void QSqlIndex::setName ( const QString & name )

Sets the name of the index to name.

See also name().

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

Sets the index equal to other.

## Member Function Documentation

### QString QSqlIndex::toString ( const QString & prefix = QString(), const QString & sep = QLatin1String( "," ), bool verbose = true ) const

Returns a comma-separated list of all the index's field names as a string. This string is suitable, for example, for generating a SQL SELECT statement. Only generated fields are included in the list (see isGenerated()). If a prefix is specified, e.g. a table name, it is prepended before all field names in the form:

"prefix.<fieldname>"

If sep is specified, each field is separated by sep. If verbose is true (the default), each field contains a suffix indicating an ASCending or DESCending sort order.

### QStringList QSqlIndex::toStringList ( const QString & prefix = QString(), bool verbose = true ) const

Returns a list of all the index's field names. Only generated fields are included in the list (see isGenerated()). If a prefix is specified, e.g. a table name, all fields are prefixed in the form:

"prefix.<fieldname>"

If verbose is true (the default), each field contains a suffix indicating an ASCending or DESCending sort order.

Note that if you want to iterate over the list, you should iterate over a copy, e.g.

     QStringList list = myIndex.toStringList();
     QStringList::Iterator it = list.begin();
     while(it != list.end()) {
         myProcessing(*it);
         ++it;
     }