Qt
的
sqlite
自己在做项目的
过程
中也正好遇到了这个问题,一位很难搞定,小人不才,弄了弄,竟然弄好了,特
此
和大家分享过程,
sqlite
数据库建表的话,如果在
dos
界面下手敲的话,可能
会累死
你,你可以去下一个
sqlite
的图示管理工具
sqliteadmin.
,搜一下就出来了,
当然
在
@H_403_56@ linux @H_403_58@ 好像有可视话的工具,如果没找到
linux
下的,
你也可以用
sqliteadmin
建好表,
在
linux
下直接用也可以,如果熟悉的
sqlite
的话,你应该知道关于时间的数
据格式
在
sqlite
里有
Date
和
time,
不用解释,我想应该很清楚,
所以
从数据方面讲,可以分为插入和读取两个方面,
先看一下插入的过程
贴代码
mywidgetquery->exec(QString("INSERTINTOyingyebase
(YYALLMoney,YYDate,YYTime,YYPayType)VALUES(%1,'%2','%3','%4');")
.arg(yymoney)
.arg(QDateTime::currentDateTime().date().toString("yyyy-MM-dd"))
.arg(QDateTime::currentDateTime().time().toString("hh:mm:ss"))
.arg(tr("RMB
方式
"))
);
我的表的
YYData
和
YYTime
就是分别表示日期和时间。
QDataTime::currentDataTime()
先获得日期时间,
toString("yyyy-MM-dd")
,
相
当于格式化
时间字符串,
读取的过程的话
使用
QsqlQueryMolel
或者
QsqlTableModel
然后在
View
中绑定一下,就可以在
View
看到日期和时间了
贴代码:
myy=newQsqlTableModel(this);
myy->setTable("yingyebase");
myy->setSort(YYID,Qt::AscendingOrder);
myy->setHeaderData(YYALLMoney,Qt::Horizontal,tr("
消费金额
"));
myy->setHeaderData(YYDate,tr("
消费日期
"));
myy->setHeaderData(YYTime,tr("
结账时间
"));
myy->setHeaderData(YYPayType,tr("
付款方式
"));
myy->setFilter("");
myy->select();
ui->tableView->setModel(myy);
ui->tableView->setColumnHidden(YYID,true);
ui->tableView->resizeColumnsToContents();
ui->tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);
QHeaderView*yyheader=ui->tableView->horizontalHeader();
yyheader->setStretchLastSection(true);
ui->tableView->setCurrentIndex(myy->index(myy->rowCount()-1,0));