SQLiteデータベースにデータを保存する小さなデスクトップアプリケーションがあります。
現在、アプリを最初に実行するとき(またはユーザーが新しい構成を作成したいとき)、dbファイルを削除して、QSqlQuery.exec( "CREATE TABLE ...")ステートメントのロードを実行します。
db構造を変更する必要があることに気付いたとき、これは、使用していたすべてのSQLを探し出し、動作するように更新するというかなりの作業につながりました。だから今、私はSQL\作成テーブルを保存するためのよりモジュール化されたアプローチを考え出そうとしています...
私の最初のアイデアは、dbを作成するためのSQLステートメントをQtリソースとしてテキストファイルに保存することでしたが、実際に実装したので、「不格好」と感じます(QFile-> QTextStream-> readLine()のループ)読みやすくするために、テキストファイルでSQLステートメントをフォーマットすることはできません。
もう1つの方法は、コンパイル時に空のdbを生成し、それをリソースとして格納することですが、私にとっては、バイナリの余分なサイズが、新しいdb作成の単純さの向上を上回っていると思います。
大量のグローバルconstQStringを作成することもできますが、私はこのアイデアが何よりも好きで、可能であればソースコードから非C ++\Qtを分離することを好みます。
だから、そこに教祖からのアイデアはありますか?