IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

SQL Programming

Database integration for Qt applications.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

SQL Programming

This overview assumes that you have at least a basic knowledge of SQL. You should be able to understand simple SELECT, INSERT, UPDATE, and DELETE statements. Although the QSqlTableModel class provides an interface to database browsing and editing that does not require a knowledge of SQL, a basic understanding of SQL is highly recommended. A standard text covering SQL databases is An Introduction to Database Systems (7th Ed.) by C. J. Date, ISBN 0201385902.

Topics:

Database Classes

These classes provide access to SQL databases.

  • QSql: The QSql namespace contains miscellaneous identifiers used throughout the Qt SQL module.

  • QSqlDatabase: The QSqlDatabase class handles a connection to a database.

  • QSqlDriver: The QSqlDriver class is an abstract base class for accessing specific SQL databases.

  • QSqlDriverCreator: The QSqlDriverCreator class is a template class that provides a SQL driver factory for a specific driver type.

  • QSqlDriverCreatorBase: The QSqlDriverCreatorBase class is the base class for SQL driver factories.

  • QSqlError: The QSqlError class provides SQL database error information.

  • QSqlField: The QSqlField class manipulates the fields in SQL database tables and views.

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

  • QSqlQuery: The QSqlQuery class provides a means of executing and manipulating SQL statements.

  • QSqlQueryModel: The QSqlQueryModel class provides a read-only data model for SQL result sets.

  • QSqlRecord: The QSqlRecord class encapsulates a database record.

  • QSqlRelationalTableModel: The QSqlRelationalTableModel class provides an editable data model for a single database table, with foreign key support.

  • QSqlResult: The QSqlResult class provides an abstract interface for accessing data from specific SQL databases.

  • QSqlTableModel: The QSqlTableModel class provides an editable data model for a single database table.

The SQL classes are divided into three layers:

Driver Layer

This comprises the classes QSqlDriver, QSqlDriverCreator, QSqlDriverCreatorBase, QSqlDriverPlugin, and QSqlResult.

This layer provides the low-level bridge between the specific databases and the SQL API layer. See SQL Database Drivers for more information.

SQL API Layer

These classes provide access to databases. Connections are made using the QSqlDatabase class. Database interaction is achieved by using the QSqlQuery class. In addition to QSqlDatabase and QSqlQuery, the SQL API layer is supported by QSqlError, QSqlField, QSqlIndex, and QSqlRecord.

User Interface Layer

These classes link the data from a database to data-aware widgets. They include QSqlQueryModel, QSqlTableModel, and QSqlRelationalTableModel. These classes are designed to work with Qt's model/view framework.

Note that a QCoreApplication object must be instantiated before using any of these classes.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+