码迷,mamicode.com
首页 > 数据库 > 详细

Qt数据库sqlite

时间:2018-09-09 19:47:22      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:set   return   into   打开   执行   结果   select   insert   name   

  支持多种数据库,但大多都需要装驱动。qDebug() << QSqlDatabase::drivers();

 1     //添加数据库
 2     QSqlDatabase db=QSqlDatabase::addDatabase("QSQLITE");
 3     //连接数据
 4     db.setDatabaseName("../debug/Student"); //设定将要使用的数据库的名字
 5     //打开数据库
 6     if(!db.open())
 7     {
 8         QMessageBox::warning(this, "错误", db.lastError().text());
 9         return ;//打开失败
10     }
11     QSqlQuery query;
12     query.exec("CREATE TABLE IF NOT EXISTS  people (id INTEGER PRIMARY KEY AUTOINCREMENT,"
13                                        "name VARCHAR(20) NOT NULL,"
14                                        "age INTEGER NULL)");
15 //    for (int i = 0; i< 3; ++i)
16 //    {
17 //        query.prepare("INSERT INTO people (id, name, age) VALUES (:id, :name, :age)");
18 //        query.bindValue(":name", QString("smith_%1").arg(i+1));
19 //        query.bindValue(":age", 20+i*5);
20 //        query.exec();
21 //    }
22     if (query.exec("insert into people(id, name, age) values(2, ‘lucy‘, 22);"))
23     {
24         qDebug()<<"insert success/n";
25     }
26     else{
27         qDebug()<<"insert failed";
28     }
29     query.exec("SELECT id, name, age FROM people");
30     while (query.next())//执行查找语句的结果
31     {
32         qDebug()<<"people:"<<query.value(0).toInt()<<"    name:"<<query.value(1).toString()<<"  age:"<<query.value(2).toInt();
33     }
34     db.close();

 

Qt数据库sqlite

标签:set   return   into   打开   执行   结果   select   insert   name   

原文地址:https://www.cnblogs.com/wangbin-heng/p/9614250.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!