SQLite在QT创建查询
SQLite CREATE query in QT
dataBase = QSqlDatabase::addDatabase("QSQLITE");
dataBase.setDatabaseName("login_password.sqlite");
QSqlQuery authQuery;
if(!dataBase.open())
{
qDebug() << dataBase.lastError().text();
}
QString create("CREATE TABLE BASE(LOGIN VARCHAR(15) PRIMARY KEY NOT NULL, "
"PASSWRD TEXT(50) NOT NULL, RIGHTS INT NOT NULL);");
bool state = authQuery.exec(create);
if(!state) qDebug() << "Не удалось создать таблицу!";
查询有什么问题,是否有可能使文本为主键?
From the docs:
警告:在 a之前,必须加载SQL驱动程序并打开连接完成QSqlQuery的创建。此外,连接必须保持打开状态查询存在;否则,QSqlQuery的行为未定义。
在您的问题中,您在打开数据库之前创建QSqlQuery
,您必须在dataBase.open()
调用之后移动authQuery
声明语句,如下所示:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("login_password.sqlite");
if (!db.open())
qDebug() << "error opening database: " << dataBase.lastError().text();
QSqlQuery authQuery;
QString create("CREATE TABLE BASE(LOGIN VARCHAR(15) PRIMARY KEY NOT NULL, "
"PASSWRD TEXT(50) NOT NULL, RIGHTS INT NOT NULL);");
if(!authQuery.exec(create)){
qDebug() << "error executing statement: " << authQuery.lastError().databaseText();
}
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- Mongodb c++驱动程序:如何查询元素的数组
- 使用std::multimap迭代器创建std::list
- 在全局变量中保存类的实例以重新创建类(创建"backup")
- 使用CMake创建QML插件
- 如何在c++中为模板函数实例创建快捷方式
- 查询SQLite数据库中的日期
- 在C++中,是否可以基于给定的标识符创建基类的新实例,反之亦然
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- OpenCV EqualizeHist()从彩色图像创建黑白图像
- 试图在visual studio上用C++创建一个桌面应用程序
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 查询数据库以在 C++ 中创建自定义类集合的最佳方法
- std::unordered_map 如何释放使用 malloc 创建的结构.是否需要对地图进行 2 次查询
- 使用类型擦除创建运行时type_traits查询
- 获取在同一查询中创建的行的唯一 ID
- MysqlC++驱动程序-创建后获取准备好的语句查询
- 解析查询和创建具有IP和端口的端点(在boost asio中)之间的区别
- 库消除了为MySQL创建查询的需要
- SQLite在QT创建查询