以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  后台sqlserver删除,前台点保存  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=138071)

--  作者:vimin
--  发布时间:2019/7/22 14:40:00
--  后台sqlserver删除,前台点保存
我在看帮助文件的时候,看到OpenQQ中即使同步数据中有写,客户端删除了某行通知其他客户端也同步删除。
我同时想到,如果A用户和B用户都打开了N表(SQL外部数据源,SQLTABLE),A用户删除了X行,然后保存,没有通知B用户保存,那B用户点击保存,X行是否会保存汇SQL Server中呢?
手动测试:
在SQLserver删除了X行,客户端保存N表,是没有任何反应的。
客户端增加一新行保存,新增行可以保存进N表SQL中,但X行还是不会保存回去。
如果客户端修改了X行,再点保存,也不会把X行重新保存回去,而且X行再客户端还消失了。

请问这样的过程原理是什么?会不会出现一些不可控的情况,比如有时又能保存回后台数据源等。
如果确定不会保存回去,那是不是就不用在设计OPENQQ同步数据时写同步删除某行的代码?

谢谢

--  作者:有点蓝
--  发布时间:2019/7/22 15:00:00
--  
不会保存回去的。但是也应该写同步删除某行的代码。因为不存在的数据仍然保留在界面,容易让用户产生误会和迷惑
--  作者:vimin
--  发布时间:2019/7/22 18:10:00
--  
不会保存回去的原理能简单说一下吗,我实在是搜索不到。
--  作者:有点蓝
--  发布时间:2019/7/22 20:29:00
--  
这些是底层的处理逻辑,一般人不需要知道,也看不懂,没有必要放到帮助。

很简单,Foxtable保存数据是依据主键和行状态的。如果是修改,根据主键更新数据,如果主键对应的数据不存在,当然就不会更新了。
--  作者:vimin
--  发布时间:2019/7/23 13:11:00
--  
好的,谢谢。确定不会保存了就行。
--  作者:blackzhu
--  发布时间:2019/7/23 14:33:00
--  
以下是引用vimin在2019/7/23 13:11:00的发言:
好的,谢谢。确定不会保存了就行。

主键都被删了,怎么找