以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=114663)

--  作者:zcgmxf
--  发布时间:2018/2/12 16:18:00
--  [求助]

老师,我这是操作别人的sql 数据库出现的错误提示,用我们的foxtable 向别人的数据库添加数据,别人的系统自己增加保存数据时出现的,并且覆盖了我的数据。有时候有,有时候没有。不明白是什么意思,请您帮忙。谢谢!

 

 

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Exception: data exists error
   at CYYFCheckupMgr.DBUtility.SqlHelper.ExecuteOraclCmd(String connectionString, String cmdText)
   at CYYFCheckupMgr.DBUtility.SqlHelper.SaveData(DataSet dsdata, String connectionString)
   at CYYFCheckupMgr.DBUtility.SqlHelper.SaveData(DataSet dsdata, String connectionString)
   at CYYFCheckupMgr.SqlDAL.DALPersonToRegister.SaveData(DataSet ds)
   at CYYFCheckupMgr.BLL.BLLPersonToRegister.SaveData(DataSet ds)
   at CYYFCheckupMgr.CustomerServiceMgr.frmItemCommend.SaveData()
   at CYYFCheckupMgr.CustomerServiceMgr.frmItemCommend.button2_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at DevExpress.XtraEditors.BaseButton.OnClick(EventArgs e)
   at DevExpress.XtraEditors.BaseButton.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at DevExpress.Utils.Controls.ControlBase.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

[此贴子已经被作者于2018/2/12 16:23:30编辑过]

--  作者:有点甜
--  发布时间:2018/2/12 16:58:00
--  

1、你如何向数据库添加数据的?你是修改原来的数据,还是新增数据,还是删除数据?

 

2、比如,别人加载了10行数据,你删除了一行数据,那数据库之后9行,对方保存的时候,自然会报错。


--  作者:zcgmxf
--  发布时间:2018/2/12 18:52:00
--  
老师,我通过代码将表A中的一行数据,在别人的数据库 表B中新增一行,然后复制数据,然后保存,没问题,别人再新增行保存时就出现上面的提示,并且覆盖了我的数据。

    两个操作平台不同哦
[此贴子已经被作者于2018/2/12 19:54:58编辑过]

--  作者:有点蓝
--  发布时间:2018/2/12 20:09:00
--  
跟踪分析别人的系统新增一条数据会增加什么数据,有那些关键的标记列?最主要的是要分析清楚别人的业务逻辑是怎么样的:仅仅只是新增?还是新增前会删除自己业务里不存在的数据?还是会覆盖某些标记的数据?



--  作者:zcgmxf
--  发布时间:2018/2/12 20:25:00
--  
老师,我新增一行,保存,看得到数据,然后他们的平台新增就出现提示,然后查看就覆盖了我的数据,他们的主键是 SGLCHECKID 列,删除行后他们的平台新增会断号,如果foxtable 插入到他们的空号,然后他们新增没问题。


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180212202105.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180212202155.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180212202229.png
图片点击可在新窗口打开查看






--  作者:zcgmxf
--  发布时间:2018/2/12 20:26:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180212202302.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180212202334.png
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2018/2/12 20:36:00
--  
那就是人家有一套自己的编号处理逻辑,自己测试摸清楚规则。这种情况找我们没有用的,自己去测试分析
--  作者:有点甜
--  发布时间:2018/2/13 9:23:00
--  

列【SGLCHECKID】能否任意的赋值?如果你赋值为abcdefg这样行不行?如果不行说明人家有检测逻辑,可能会删除或者覆盖你的数据。

 

还有就是,人家处理数据有一套逻辑的,人家可能不止添加1行数据,人家可能在多个表添加了数据的。