使用Qt桌面应用程序高效创建SQLite数据库

使用Qt桌面应用程序高效创建SQLite数据库,sqlite,qt,resources,Sqlite,Qt,Resources,我有一个小型桌面应用程序,它将数据存储在SQLite数据库中 目前,当应用程序第一次运行时(或者用户想要创建一个新配置),我只需删除db文件并运行一堆QSqlQuery.exec(“create TABLE…”)语句 当我意识到我必须改变数据库结构时,这导致了一项相当多的工作:查找我使用过的所有SQL并更新它以使其正常工作。因此,现在我试图提出一种更模块化的方法来存储SQL\创建表 我的第一个想法是将用于创建db的SQL语句存储在文本文件中,作为Qt资源,但现在我实际实现了它,它感觉“笨重”(Q

我有一个小型桌面应用程序,它将数据存储在SQLite数据库中

目前,当应用程序第一次运行时(或者用户想要创建一个新配置),我只需删除db文件并运行一堆QSqlQuery.exec(“create TABLE…”)语句

当我意识到我必须改变数据库结构时,这导致了一项相当多的工作:查找我使用过的所有SQL并更新它以使其正常工作。因此,现在我试图提出一种更模块化的方法来存储SQL\创建表

我的第一个想法是将用于创建db的SQL语句存储在文本文件中,作为Qt资源,但现在我实际实现了它,它感觉“笨重”(QFile->QTextStream->readLine()上的循环),不允许我在文本文件中格式化SQL语句以提高可读性

另一种方法是在编译时生成一个空数据库并将其存储为资源,但对我来说,二进制文件的额外大小将超过创建新数据库的简单性

我可以创建一堆全局常量qstring,但我最不喜欢这个想法,如果可能的话,我更愿意将非C++\Qt与源代码分开


那么,如果你在搜索一个
,那么,有没有来自大师们的想法在一行末尾,您可以在多行上格式化SQL语句


如果您需要,空的DB文件不会很大。

@divanov如何使用代码中的那些文件?@divanov这正是我现在对资源文件所做的。