#include <QApplication>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QDebug>
#include <QSqlDriver>
#include <QSqlError>
#include <QStringList>
#include <QMessageBox>
#include <QVariant>
static bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName(":memory:");
if(!db.open())
{
QMessageBox::critical(0,"Cannot open database","Unable to establish a database connection.",QMessageBox::Cancel);
return false;
}
QSqlQuery query;
query.exec("create table student(id int primary key,name vachar(20))");
query.exec("insert into student values(0,'LiMing')");
query.exec("insert into student values(1,'LiuTao')");
query.exec("insert into student values(2,'WangHong')");
return true;
}
int main(int argc,char* argv[])
{
QApplication a(argc,argv);
qDebug()<<"Available drivers:";
QStringList dataDrivers = QSqlDatabase::drivers();
for(auto item:dataDrivers)
{
qDebug()<<item;
}
if(!createConnection())
return 1;
QSqlQuery query;
query.exec("select * from student");
while(query.next())
{
qDebug()<<query.value(0).toInt()<<query.value(1).toString();
}
return a.exec();
}