我的 QT Creator 应用程序文件夹中有一个 sqlite 文件。我什至做了项目(右键单击)-> 添加现有文件,并将其添加到我的项目中。该文件被复制到构建目录。但是,它不包含任何表或数据。我需要我的数据库文件中的数据在复制过程中保持不变。有什么办法可以确保这一点吗?
最佳答案
发生的情况是数据库没有被复制,因为将它附加到 .pro 并不意味着它将被移动到构建文件夹。
那为什么build文件夹里有.db?
如果 sqlite 没有找到 .db,它会创建它,所以你会得到一个空文件。
解决方案是执行您复制的命令:
COPY_CONFIG = mydatabase.db
copy_cmd.input = COPY_CONFIG
copy_cmd.output = ${QMAKE_FILE_IN_BASE}${QMAKE_FILE_EXT}
copy_cmd.commands = $$QMAKE_COPY_DIR ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copy_cmd.CONFIG += no_link_no_clean
copy_cmd.variable_out = PRE_TARGETDEPS
QMAKE_EXTRA_COMPILERS += copy_cmd
关于c++ - QT Creator 将 SQLite 复制为空数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51613184/