QDateTime转换为sqllite 里的datetime
QDateTime转换为sqllite 里的datetime
我的数据库表中有这个字段 "L_start_time datetime not null ,"
items 是个结构体
里面有个start_time 是QDateTime
我现在要往我的表里面添加数据 ,这里 ret = query.exec(。。)返回是 false我估计是我的
QDateTime转换为sqllite 里的datetime有问题,是错的。但是我不懂怎么转换!求大伙帮助!
bool DatabaseManager::InsertItemsToLaw(Item * items , int cnt )
{
bool ret = true;
QSqlQuery query;
if(!db.open()|| cnt<=0 )
{
qWarning("db open fails or para invalid");
return false ;
}
/*
规律事件表:Law_Event
ret = query.exec("create table IF NOT EXISTS Law_Event "
"( L_law_id integer primary key autoincrement, "
"L_start_time datetime not null ,"
"L_delay_time integer , "
"L_ahead_time integer , "
"L_warn_type integer(2) not null ,"
"L_music_addr varchar(100) ,"
"L_describe varchar(1000) )"
);
*/
for(int i = 0 ; i < cnt && ret ; i++)
{
ret = query.exec(QString("insert into Law_Event values( '','%1','%2','%3' ,'%4' ,'%5' ,'%6')") .arg(items[i].start_time.toString()).arg(QString::number(items[i].delay_time)).arg(QString::number(items[i].ahead_time))
.arg(QString::number(items[i].warn_type)).arg(QString(items[i].delay_time)).arg(items[i].describe));
qDebug() << ret ;
qWarning("done ");
}
return ret ;
}