网上只有对字符串数据类型进行操作的
model->setFilter(QObject::tr("name = '%1'").arg(name)); //根据姓名进行筛选
model->select(); //显示结果
但我的是一个date类型的变量应该怎么办呢?? 求帮忙啊~~~~
2 个解决方案
#1
QString datetime_from=ui->dateTimeEdit->text();
QString datetime_to=ui->dateTimeEdit_2->text();
model->setFilter(QString("time > %1 and time < %2").arg(datetime_from).arg(datetime_to));
这要看你mysql中存储的date类型,然后将dateTimeEdit的显示类型转化为mysql中时间的形式,如mysql中datetime类型为20110827193246, 那你就将datetime的显示类型变为 ui->dateTimeEdit->setDisplayFormat("yyyyMMddhhmmss");
这样就可以了,可以的。
QString datetime_to=ui->dateTimeEdit_2->text();
model->setFilter(QString("time > %1 and time < %2").arg(datetime_from).arg(datetime_to));
这要看你mysql中存储的date类型,然后将dateTimeEdit的显示类型转化为mysql中时间的形式,如mysql中datetime类型为20110827193246, 那你就将datetime的显示类型变为 ui->dateTimeEdit->setDisplayFormat("yyyyMMddhhmmss");
这样就可以了,可以的。
#2
两个问题
一是我在界面上加了dateedit控件后,在cpp文件里写ui->的时候系统不能自动识别出来有这个控件
二是我这么写的
QString datetime_from=ui->dateEdit_find->setDisplayFormat("yyyymmdd");
系统报错
conversion from 'void' to non-scalar type 'QString' requested
T_T
#1
QString datetime_from=ui->dateTimeEdit->text();
QString datetime_to=ui->dateTimeEdit_2->text();
model->setFilter(QString("time > %1 and time < %2").arg(datetime_from).arg(datetime_to));
这要看你mysql中存储的date类型,然后将dateTimeEdit的显示类型转化为mysql中时间的形式,如mysql中datetime类型为20110827193246, 那你就将datetime的显示类型变为 ui->dateTimeEdit->setDisplayFormat("yyyyMMddhhmmss");
这样就可以了,可以的。
QString datetime_to=ui->dateTimeEdit_2->text();
model->setFilter(QString("time > %1 and time < %2").arg(datetime_from).arg(datetime_to));
这要看你mysql中存储的date类型,然后将dateTimeEdit的显示类型转化为mysql中时间的形式,如mysql中datetime类型为20110827193246, 那你就将datetime的显示类型变为 ui->dateTimeEdit->setDisplayFormat("yyyyMMddhhmmss");
这样就可以了,可以的。
#2
两个问题
一是我在界面上加了dateedit控件后,在cpp文件里写ui->的时候系统不能自动识别出来有这个控件
二是我这么写的
QString datetime_from=ui->dateEdit_find->setDisplayFormat("yyyymmdd");
系统报错
conversion from 'void' to non-scalar type 'QString' requested
T_T