#include<QSqlQuery>
#include<QObject>
#include<QVariantList>
#include<QDebug>
#include<QSqlError>
#include<QTextCodec>
#include<QObject>
staticboolcreateConnection()
{QSqlDatabasedb=QSqlDatabase::addDatabase("QSQLITE")
db.setDatabaseName("mytest.db")
if(!db.open())
returnfalse
QSqlQueryquery
//query.exec(QObject::tr("createtablestudent(idintprimarykey,namevchar)"))
//query.exec(QObject::tr("insertintostudentvalues(0,'刘')"))
////query.exec(QObject::tr("insertintostudentvalues(1,'刚')"))
//query.exec(QObject::tr("insertintostudentvalues(2,'红')"))
//query.prepare("insertintostudentvalues(?,?)")
//-------------------------------------------------------
//通过下面这段代码可以实现向数据库插入变量
//--------------------------------------------------------
QVariantListages
intx1,x2,x3,x4
x1=12
x2=13
x3=14
x4=15
ages<<x1<<x2<<x3<<x4
query.addBindValue(ages)
QVariantListnames
names<<QObject::tr("小王")<<QObject::tr("小明")<<QObject::tr("小张")<<QObject::tr("小新")//如果要提交空串,用QVariant(QVariant::String)代替名字
query.addBindValue(names)
if(!query.execBatch())//进行批处理,如果出错就输出错误
qDebug()<<query.lastError()
returntrue
}
#endif//DATABASE_H
然后用QSqlTableModel实现数据库数据显示
大致只要知道以上例子就OK了。一般而言会将db变量作为全局变量或者数据成员,当需要访问的时候就获取一个query就可以了。另外,要实现所提到的功能,要好好看看QString、QStringList,这两玩意主要是临时存放数据、分割数据等作用,另外,要看QFile、QDir、QFileInfo、QTextStream,这四个主要用来读取文本数据。看看QVector或者QList等来存放读出来的数据。
另外,要实现这玩意,SQL的语句不要求精通,但是基本的Create、Insert、Select、Delete等 *** 作要准确无误。否则出错了QT是看不出来的。QT不会检测SQL的准确性的。
再另外,在QT的编程中,C++和类都很重要,所以还是得看看。
Eigen矩阵运算库。Eigen矩阵运算库是一个可提供运算的数据库。Eigen矩阵运算库支持qt5拟合直线,可以使用这个。Eigen库是一个开源的矩阵运算库,其利用C++模板编程的思想,构造所有矩阵通过传递模板参数形式完成。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)