Qt tip 数据库 sqlite

来源:互联网 发布:outlook for windows 编辑:程序博客网 时间:2024/06/05 05:53

QT += sql
QSqlDatabase //类实现了数据库连接的操作
QSqlQuery //类执行SQL语句
QSqlRecord //类封装数据库所有记录
QSqlDatabase

  • 创建一个数据库
//SqlDatabase为实现数据库连接的类QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");//创建一个数据库,添加数据库驱动//db.setHostName("localhost");    //数据库主机名   //db.setDatabaseName("aa");    //数据库名   //db.setUserName("bb");        //数据库用户名   //db.setPassword("123");        //数据库密码 //db.open();          //打开数据库连接  //db.close();         //释放数据库连接 
  • 打开一个已有数据库,数据库名字为db_weather.db,里面内容为各省 市 区域信息
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");    db.setDatabaseName("db_weather.db");    if (!db.open())    {        qDebug() << "database open fail!";    }    else    {        qDebug() << "database open success!";    }

  • 打开一个已有数据库,数据库名字为db_weather.db,里面内容为各省 市 区域信息。将里面的省份信息添加到一个StringList,并设置到界面上的一个下拉框里面
//得到省份信息,设置到下拉框里面void Setting::getProvinceList(){    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");    db.setDatabaseName("db_weather.db");    if (!db.open())    {        qDebug() << "database open fail!";    }    else    {        qDebug() << "database open success!";        QSqlQuery q;    //新建一个查询句柄        q.exec("select * from provinces");//获取省份列表        while (q.next())        {            QString provinceId = q.value(0).toString();            QString provinceName = q.value(1).toString();            qDebug() << "province:" << provinceId << provinceName;            provinceList.append(provinceName);//将省份串成一个StringList        }        ui->province_comboBox->clear();//设置前先clean下        ui->province_comboBox->addItems(provinceList);    }    db.close();    qDebug()<<"database closed!";}

这里写图片描述

0 0
原创粉丝点击