Sqlite+Qt4.5.3+QDateTime

Qt

sqlite

数据库中存入时间的文章并不多,

自己在做项目的

过程

中也正好遇到了这个问题,一位很难搞定,小人不才,弄了弄,竟然弄好了,特

和大家分享过程,

sqlite

数据库建表的话,如果在

dos

界面下手敲的话,可能

会累死

你,你可以去下一个

sqlite

的图示管理工具

sqliteadmin.

,搜一下就出来了,

当然

linux

好像有可视话的工具,

如果没找到

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));

相关文章

安装 在Windows上安装SQLite。 访问官网下载下Precompliled Binaries for Windows的两个压缩包。 创建s...
一、安装 下载地址:http://www.sqlite.org/download.html 将Precompiled Binaries for Windows下的包下...
实例: 会员信息管理 功能:1.查看数据库 2.清空数据库 3.增加会员 4.删除会员 5.更新会员 6.查找会员  ...
关于SQLite SQLite是一个轻量的、跨平台的、开源的数据库引擎,它的在读写效率、消耗总量、延迟时间和整...