• 2701阅读
  • 1回复

[提问]qt如何监视数据库中数据的改动 [复制链接]

上一主题 下一主题
离线qazaq408
 

只看楼主 倒序阅读 楼主  发表于: 2015-03-05
我做了一个程序A用来显示数据中的表
程序A有代码
QSqlTableModel model;
model.setTable("City");

这里的City是位于数据库(Mysql)中的一张表,然后这张表在数据库中还会有别的用户操作(操作包括直接改动,调用储存过程,表触发器),然后别的用户改动City数据之后,程序A能否知道这张表的数据已经改动过了?每次我都要重启程序A才能显示改动的数据
离线begboy

只看该作者 1楼 发表于: 2015-03-05
qazaq408,您好!
(一) 数据库有触发器
      建议直接使用数据库的触发器的SQL语句进行处理
例如:在mysql
create trigger  触发器的名字   on 操作表
(二)数据库没有触发器
     例如一些很精巧的内存数据库,
这个比较复杂,我们主要使用对整个数据库文件
进行MD5映射和监视,当MD5值发生变化时,发送
特定信号(中断),QT收到信号时调用槽函数处理。

祝好运!
begboy


快速回复
限100 字节
 
上一个 下一个