SQLプログラミング

この概要では、少なくともSQLの基本的な知識があることを前提としています。簡単なSELECTINSERTUPDATEDELETE ステートメントを理解できる必要があります。QSqlTableModel クラスは、SQL の知識を必要としないデータベースのブラウズと編集のインターフェイスを提供しますが、SQL の基本的な理解を強くお勧めします。SQLデータベースを扱った標準的なテキストは、C. J. Date著のAn Introduction to Database Systems(7th Ed.), ISBN 0201385902です。

トピックス

データベース・クラス

これらのクラスは SQL データベースへのアクセスを提供します。

QSql

Qt SQL モジュール全体で使われる雑多な識別子を含む

QSqlDatabase

データベースへの接続を処理する

QSqlDriver

特定の SQL データベースにアクセスするための抽象基底クラス

QSqlDriverCreator

特定のドライバ・タイプの SQL ドライバ・ファクトリを提供するテンプレート・クラス

QSqlDriverCreatorBase

SQL ドライバ・ファクトリの基底クラス

QSqlError

SQL データベースのエラー情報

QSqlField

SQL データベースのテーブルやビューのフィールドを操作する関数

QSqlIndex

データベースのインデックスを操作し記述する関数

QSqlQuery

SQL 文を実行し操作する手段

QSqlQueryModel

SQL 結果セットの読み取り専用データ・モデル

QSqlRecord

データベースレコードのカプセル化

QSqlRelationalTableModel

外部キーをサポートした、単一のデータベーステーブル用の編集可能なデータモデル

QSqlResult

特定のSQLデータベースからデータにアクセスするための抽象インターフェース

QSqlTableModel

単一のデータベース・テーブル用の編集可能なデータ・モデル

SQLクラスは3つのレイヤーに分かれています:

ドライバ層

これはQSqlDriver,QSqlDriverCreator,QSqlDriverCreatorBase,QSqlDriverPlugin,QSqlResult のクラスで構成されます。

この層は、特定のデータベースと SQL API 層との間の低レベルの橋渡しを行います。詳細はSQLデータベース・ドライバーを参照してください。

SQL API 層

これらのクラスはデータベースへのアクセスを提供します。接続はQSqlDatabase クラスを使って行います。データベースとの対話はQSqlQuery クラスを使って行います。QSqlDatabaseQSqlQuery に加えて、SQL API 層はQSqlErrorQSqlFieldQSqlIndexQSqlRecord でサポートされています。

ユーザー・インターフェース層

これらのクラスはデータベースからのデータをデータ対応ウィジェットにリンクします。QSqlQueryModel,QSqlTableModel,QSqlRelationalTableModel が含まれます。これらのクラスはQtのモデル/ビュー・フレームワークと連動するように設計されています。

これらのクラスを使用する前に、QCoreApplication オブジェクトをインスタンス化する必要があることに注意してください。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.