如何实现数据库的同步读写
最近在做一个GPS实时监控系统,数据的实时更新是关键。我采用的思路如下:把接收到的源源不断的GPS定位数据往数据库中写,一个数据对(x,y)为一条数据库记录,页面这头不断去读数据库的最近记录,从而显示出车载GPS的运动。
但不知道如何控制读与写的同步,写程序(WinForm程序),暂时启名叫"writer",先打开了数据库在往里写,记录不断增加,读数据库程序(WebForm程序)后打开,但它去读的时候,总是不能读到“writer"启动以后写近去的记录,是不是因为锁的原因?
请教大家,如何实现数据库的同步读写啊?
参考答案:你在写数据的时候要看你数据库允许的锁定级别是什么,每种数据库都不一样,如果是最高级别的锁你在写数据的时候其他事务是无法对他进行写操作的,如果是读就会发生 (1)读事务读取的数据不同(2)发生对未提交的更新的依赖。
则读事务在读数据的时候需要申请读锁。建议是你不要通过扫数据库来查找更新,把数据放到内存中通过缓冲区进行交换那样更好