如何使用SQLite在qt中创建表?
How to create a table in qt with SQLite?
我有一个名为 m_database 的类属性。
class SqlThread : public QThread
{
public:
SqlThread();
void run();
private:
QSqlDatabase m_database;
QString m_dbfilename;
};
我在构造函数中实例化,如下例所示:
SqlThread::SqlThread()
{
m_database = QSqlDatabase::addDatabase("QSQLITE");
}
我在运行函数中创建数据库,就像这样(我用其他类创建的m_dbFileName(:
m_database.setDatabaseName(m_dbfilename);
if (!m_database.open())
{
qWarning("%s", m_database.lastError().text().toLocal8Bit().data());
return;
}
QSqlQuery databaseQuery(m_database);
databaseQuery.prepare("CREATE TABLE data (id int not null primary key, tu text, data BLOB, puits integer);");
if (!databaseQuery.exec())
{
qWarning("%s", databaseQuery.lastError().text().toLocal8Bit().data());
return;
}
为什么我收到错误消息:没有查询无法获取行?
将查询字符串替换为:
databaseQuery.prepare("CREATE TABLE IF NOT EXISTS data (id int not null primary key, tu text, data BLOB, puits integer);");
否则,如果表已存在,则执行将失败。
相关文章:
- Qt SQlite无法创建表
- 使用Qt框架在c ++类中创建API调用
- Qt creator 4.11,在应用程序输出面板中创建一个链接
- 无法使用 Visual Studio 2010 和 Qt 版本 4.8.0 创建"Qt Gui Application"
- 我可以使用自定义样板模板创建QT创建项目
- 多个线程,如何正确创建QT小部件
- 如何在不使用透明胶片的情况下创建Qt投影?(因为窗口管理器不支持)
- 如何创建QT标签悬停效应
- 当qt插件在Windows中不起作用时,如何在eclipse cdt中创建qt应用程序
- 错误 C2059:尝试在已知大小的头文件中创建 Qt 容器时为"常量"
- 如何使用命令行 qmake 创建 Qt GUI 或 QML/Qt 快速项目
- C++和QML的对象顺序创建QT
- 无法为 Symbian 设备创建 QT postgresql 插件
- 如何创建 QT 库对话框
- 无法在另一个对话框中创建 Qt 对话框
- 如何使用静态库创建QT控制台应用程序的Single exe,
- 如何创建Qt组合框
- 创建Qt插件和使用非虚拟函数
- 试图创建Qt 4.7 qstring,材料到数组的指针
- 创建qt线程事件循环