2 setochiyo SetoChiyo 于 2016.01.15 11:15 提问

关于Win32 API和数据库

请问有没有办法,类似于Socket那样,当数据库有新的一行结果的时候,这边客户端不新建立查询可以获取到呢?

4个回答

91program
91program   Ds   Rxr 2016.01.15 11:33
已采纳

使用数据库,但又不想通过查询来获取更新?这样不好吧!
如果一定要,那只能在服务器有新结果的时候,将新的数据以 Socket 协议数据发送给客户端。但这样做,肯定是不好的。

91program
91program 回复SetoChiyo: 数据更新,肯定有其方法的。例如:从数据的来源处进行监控。
接近 2 年之前 回复
SetoChiyo
SetoChiyo 关键是怎样让服务端知道有数据库新的数据出来了,然后才去获取最新一行...就是这个点不知道咋解决
接近 2 年之前 回复
91program
91program 回复SetoChiyo: 实时,最好是通过 Socket TCP 来实现,通话客户端更新数据,以获取到最新一行的数据
接近 2 年之前 回复
SetoChiyo
SetoChiyo 形容的可能有点问题,应该是实时获得最新的一行数据,这个没想到该怎么做
接近 2 年之前 回复
enpterexpress
enpterexpress   2016.01.15 11:25

其实一般数据表显示都是在插入数据库数据时更新一下数据源

enpterexpress
enpterexpress 回复SetoChiyo: 放心,不影响显示效果,记着按日期排序
接近 2 年之前 回复
SetoChiyo
SetoChiyo 想做一个向上滚动的效果来着,直接更新数据源的话,这不就不好做了嘛??
接近 2 年之前 回复
beau_lily
beau_lily   2016.01.15 11:34

具体的操作没做过 做过类似的
通过数据库处理
方式1:在数据库里建立作业,轮询数据库发生的变化
方式2:通过触发器,当某个表或者多张表发生变化的时候触发相关查询
通过代码
方式1:通过消息机制,开辟新的辅助线程进行查询数据,当有变化的时候用主线程处理数据

SetoChiyo
SetoChiyo 是个思路,谢谢
接近 2 年之前 回复
CSDNXIAOD
CSDNXIAOD   2016.01.15 11:55

Win32 API下的多线程编程
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!