以文本方式查看主题

-  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=12920)

--  作者:lenshen
--  发布时间:2011/9/20 15:22:00
--  新增一条记录出错

ORACLE 表

 

CREATE TABLE ORDER_CUST_INFO
(
  "_Identify"    NUMBER,                         ----------------主键,ORACLE 序列自动编码(触发器做的)
  CUST_NAME      VARCHAR2(20 BYTE),
  CONTACT_NAME   VARCHAR2(20 BYTE),
  CONTACT_PHONE  VARCHAR2(20 BYTE)
)

 

buton "NEW"  click :

 

 With Tables("ORDER_CUST_INFO")
    If .Current.DataRow.RowState = DataRowState.Unchanged Then \'如果当前行未曾修改
        .AddNew()
        
    Else
        MessageBox.Show("该记录已经被修改,若想保存结果请先<保存修改>,否则请<撤销修改>! ")
       
    End If
   
End With

 

只要我光标跳动就出错

 


图片点击可在新窗口打开查看此主题相关图片如下:ttt.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-9-20 15:23:26编辑过]

--  作者:狐狸爸爸
--  发布时间:2011/9/20 15:25:00
--  

增加外部表的时候,有没有指定序列名?

 

http://www.foxtable.com/help/topics/1825.htm

 


--  作者:lenshen
--  发布时间:2011/9/20 15:54:00
--  

指定了, 还要不要自动编码的触发器??


--  作者:狐狸爸爸
--  发布时间:2011/9/20 15:59:00
--  

如果指定了,按道理不会这样的。


在这个表DataRowAdding事件加入下面的代码看看:
 
Static Index As Integer = 99999
e.DataRow("_Identify") = Index
Index = Index - 1


--  作者:lenshen
--  发布时间:2011/9/21 9:31:00
--  
为什么我每次出现上面的错误,我的表就被删除了,但是在外部数据表那里还有,就是不见了,这样窗口也丢了,新增一个同名的外部表也不行,怎么找回,多谢!
--  作者:狐狸爸爸
--  发布时间:2011/9/21 9:53:00
--  

表不会自动删除的,重新打开项目应该就行了。

 


--  作者:狐狸爸爸
--  发布时间:2011/9/21 9:54:00
--  

建议外部数据源用SQL Server。