如何用for循环在qt中实现sql数据库的多行插入?
如题,断点显示已循环64次,但一行都没有完成插入。QSqlQueryquery;query.exec("createtableperson(idintprimarykey...
如题,断点显示已循环64次,但一行都没有完成插入。
QSqlQuery query;
query.exec("create table person (id int primary key, "
"name varchar(20), date1 varchar(20),"
"date2 varchar(20),date3 varchar(20),"
"date4 varchar(20),date5 varchar(20),"
"date6 varchar(20),date7 varchar(20),"
"date8 varchar(20),date9 varchar(20),"
"date10 varchar(20),value int)");
for(int i=1;i<=64;i++)
{
query.exec("insert into person values(i, '7', '', '', '', '', '', '', '', '', '', '', 0)");
}
而把i改成常量后,仅仅插入了一行(运行时从创建的QTableView的窗口上看到的)。
本人新手,很多东西还不清楚...... 展开
QSqlQuery query;
query.exec("create table person (id int primary key, "
"name varchar(20), date1 varchar(20),"
"date2 varchar(20),date3 varchar(20),"
"date4 varchar(20),date5 varchar(20),"
"date6 varchar(20),date7 varchar(20),"
"date8 varchar(20),date9 varchar(20),"
"date10 varchar(20),value int)");
for(int i=1;i<=64;i++)
{
query.exec("insert into person values(i, '7', '', '', '', '', '', '', '', '', '', '', 0)");
}
而把i改成常量后,仅仅插入了一行(运行时从创建的QTableView的窗口上看到的)。
本人新手,很多东西还不清楚...... 展开
4个回答
展开全部
估计你执行exec SQL的时候变量I没有转换为常量 把SQL语句先存到字符串变量里输出看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
从你的语句上看的话,字段数都对不上。
你先把insert语句单独提出来执行下看是否报错。把i赋值执行看是否正确先
insert into person values(i, '7', '', '', '', '', '', '', '', '', '', '', 0)
你先把insert语句单独提出来执行下看是否报错。把i赋值执行看是否正确先
insert into person values(i, '7', '', '', '', '', '', '', '', '', '', '', 0)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你确定是只插入了一条数据还是数据本身已经插入进去,tableView显示问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询