QT数据插入数据语法

梦想的IT男 2014-04-21 04:54:20
QString insert = "insert into test1(IP, username, ltnr, time)values('"+ipAddress"','"+userName"','"+message"','"+time"')";

提示错误:
1>widget.cpp
1>.\widget.cpp(81) : error C2143: 语法错误 : 缺少“;”(在“字符串”的前面)
1>.\widget.cpp(81) : error C2143: 语法错误 : 缺少“;”(在“字符串”的前面)
1>.\widget.cpp(81) : error C2143: 语法错误 : 缺少“;”(在“字符串”的前面)
1>.\widget.cpp(81) : error C2143: 语法错误 : 缺少“;”(在“字符串”的前面)


这个是照着教程写的不知道哪里错了,求大神指点一下。
...全文
207 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
梦想的IT男 2014-04-22
  • 打赏
  • 举报
回复
引用 4 楼 xiuxianshen 的回复:
你看看实际的sql执行语句不就行了,打印出来看看
我的message内容包含着属性信息,怎么处理一下呢。 比如“收到”: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'宋体'; font-size:12pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">收到</p></body></html>
gucunlin 2014-04-22
  • 打赏
  • 举报
回复
解决问题的思想很重要 ,既然打印出来语句了,把语句拿到数据库里执行一下看看就不知道了,如果语句没有问题,你找代码的问题呀。看看每个函数的返回值别忽略了。
梦想的IT男 2014-04-21
  • 打赏
  • 举报
回复
引用 3 楼 gucunlin 的回复:
query连上数据库了吗? insert的表和字段都有吗? 单步跟一下


我的message东西是这些: 怎么让他只有内容呢?

message:
梦想的IT男 2014-04-21
  • 打赏
  • 举报
回复
梦想的IT男 2014-04-21
  • 打赏
  • 举报
回复
这段代码:
QSqlQuery query;
QString insert = "insert into test1(IP, username, ltnr, time) values('" + ipAddress + "','"+userName + "','" + message + "','"+time + "')";
printf("%s",insert);
query.exec(insert);
if(!query.isActive())
{
QMessageBox::information(this, tr("提示"), tr("数据入库失败!"), tr("确定"));
database::close();
break;
}
QMessageBox::information(this, tr("提示"), tr("数据入库成功!"), tr("确定"));
database::close();
break;


测试的单步inset的内容为:
insert into test1(IP, username, ltnr, time) values('192.168.1.116','crazy','
啊啊啊啊

','2014-04-21 17:48:04')
附上我的表,新手啊不知道哪里出问题了。
xiuxianshen 2014-04-21
  • 打赏
  • 举报
回复
你看看实际的sql执行语句不就行了,打印出来看看
gucunlin 2014-04-21
  • 打赏
  • 举报
回复
query连上数据库了吗? insert的表和字段都有吗? 单步跟一下
梦想的IT男 2014-04-21
  • 打赏
  • 举报
回复
有点粗心改了一下: QString insert = "insert into test1(IP, username, ltnr, time)values('"+ipAddress+"','"+userName+"','"+message+"','"+time+"')"; query.exec(insert); 为什么执行SQL语句失败呢?
gucunlin 2014-04-21
  • 打赏
  • 举报
回复
QString insert = "insert into test1(IP, username, ltnr, time)values('" \
            +ipAddress + "','"+userName + "','" + message + "','"+time + "')";
麻烦你写规范点

16,211

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧