qt数据库查询

liyingju001 2013-09-22 07:40:21
我现在数据库里面有两个表,
表1: id1 mac bridge
1 123 1
2 234 2
3 345 3
表2: id2 bridge value
1 1
2 2
3 3
现在我能从表中取得所有的mac,并一系列操作后得到每一个mac的数据,存入表2,但是mac123的value要存入bridge等于1后面的value,以此类推,怎么写数据库语言呢?教程俺看了N遍了
...全文
299 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyingju001 2013-10-04
  • 打赏
  • 举报
回复
引用 5 楼 winslx 的回复:
[quote=引用 4 楼 liyingju001 的回复:] [quote=引用 1 楼 winslx 的回复:] update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
现在数据库结构是在ib_sensor里面,每一个mac对应一个bridge_id,查到每一个mac的value后插入到相应的ib_data_bridge1或者ib_data_bridge2中,当然还有3,4,以后甚至还有很多,这个可就难多了,表的名字后缀是变化的 请问能指点下吗[/quote] 这个就不知道了 因为设计的时候根本就不会这样设计的 表结构是随便乱改的?[/quote]if(m_sensor.getSenorValue(m_pkgBuf,val,temp )==true) { qDebug()<<"val"<<val<<endl;//此时还是得到的数值 例如是129 query.prepare("INSERT INTO ib_data_bridge2 (value) VALUES (?)"); query.addBindValue("val");//但是数据库的插入的数值是0 为什么呢 query.exec(); query.clear(); }
Marvelous1988 2013-09-23
  • 打赏
  • 举报
回复
引用 4 楼 liyingju001 的回复:
[quote=引用 1 楼 winslx 的回复:] update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
现在数据库结构是在ib_sensor里面,每一个mac对应一个bridge_id,查到每一个mac的value后插入到相应的ib_data_bridge1或者ib_data_bridge2中,当然还有3,4,以后甚至还有很多,这个可就难多了,表的名字后缀是变化的 请问能指点下吗[/quote] 这个就不知道了 因为设计的时候根本就不会这样设计的 表结构是随便乱改的?
liyingju001 2013-09-23
  • 打赏
  • 举报
回复
引用 1 楼 winslx 的回复:
update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)

现在数据库结构是在ib_sensor里面,每一个mac对应一个bridge_id,查到每一个mac的value后插入到相应的ib_data_bridge1或者ib_data_bridge2中,当然还有3,4,以后甚至还有很多,这个可就难多了,表的名字后缀是变化的 请问能指点下吗
Marvelous1988 2013-09-23
  • 打赏
  • 举报
回复
引用 2 楼 liyingju001 的回复:
[quote=引用 1 楼 winslx 的回复:] update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
可以试试: update 表2 set value=(select mac where mac='123') where bridge=1[/quote] 这样只能更新一条记录
liyingju001 2013-09-23
  • 打赏
  • 举报
回复
引用 1 楼 winslx 的回复:
update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
可以试试: update 表2 set value=(select mac where mac='123') where bridge=1
Marvelous1988 2013-09-23
  • 打赏
  • 举报
回复
引用 6 楼 liyingju001 的回复:
[quote=引用 5 楼 winslx 的回复:] [quote=引用 4 楼 liyingju001 的回复:] [quote=引用 1 楼 winslx 的回复:] update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
现在数据库结构是在ib_sensor里面,每一个mac对应一个bridge_id,查到每一个mac的value后插入到相应的ib_data_bridge1或者ib_data_bridge2中,当然还有3,4,以后甚至还有很多,这个可就难多了,表的名字后缀是变化的 请问能指点下吗[/quote] 这个就不知道了 因为设计的时候根本就不会这样设计的 表结构是随便乱改的?[/quote]那倒不是 是一开始就设计成这样的了 我上次问的时候问的有些问题 没说清楚[/quote] 设计就有问题 表结构不能随便乱改的
liyingju001 2013-09-23
  • 打赏
  • 举报
回复
引用 5 楼 winslx 的回复:
[quote=引用 4 楼 liyingju001 的回复:] [quote=引用 1 楼 winslx 的回复:] update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)
现在数据库结构是在ib_sensor里面,每一个mac对应一个bridge_id,查到每一个mac的value后插入到相应的ib_data_bridge1或者ib_data_bridge2中,当然还有3,4,以后甚至还有很多,这个可就难多了,表的名字后缀是变化的 请问能指点下吗[/quote] 这个就不知道了 因为设计的时候根本就不会这样设计的 表结构是随便乱改的?[/quote]那倒不是 是一开始就设计成这样的了 我上次问的时候问的有些问题 没说清楚
Marvelous1988 2013-09-22
  • 打赏
  • 举报
回复
update 表2 set value = (select mac from 表1 where 表1.bridge = 表2.bridge)

16,240

社区成员

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

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