c++ - QT Creator 将 SQLite 复制为空数据库

标签 c++ qt qmake

我的 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/

相关文章:

qt - 如何更改音频 AVPacket 的音量

c++ - 为什么 Qt 会从 .qrc 生成一个 .cpp 文件?

c++ - '渲染' : 'class' type redefinition (C2011)

c++ - 为什么 C++ 编译器不能区分继承的公共(public)方法和继承的同名私有(private)方法?

c++ - 与用户构建的类似字符串类型的字符串比较

c++ - 如何检测 Qt Creator 的目标(调试/发布)(Visual Studio)

c++ - 将参数从 Qt 传递到 shell 脚本文件

qt - 关于项目组织的建议

qt - qmake:如果存在 pkg-config 中的标志,则使用它们,否则使用默认值

c++ - 为什么删除移动构造函数会导致编译错误?