以文本方式查看主题

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

--  作者:cat88hzh
--  发布时间:2014/3/21 12:54:00
--  如何使用序列
我在用oracle数据库的时候因为没法自动增加ID,
想使用主键序列,可是在说明书上查  使用序列  只写了可以使用序列,但是怎么用呢?我直接在哪里随便填一个名字好像没用


还有一个问题就是,我也想着在程序里写,
增加一行我就执行一次加法,查找到数据源中最大的ID然后加1
如下,但是有问题

DataTables("HZH_GL_REPORTS").LoadFilter = ""
\'DataTables("HZH_GL_REPORTS").Load    但是这样做必须全部加载出来一次才能使用Compute,不然只会显示我搜索功能搜出的那些数据的最大ID,也想问问这个时候一般用什么方法解决,不影响我查询出来的数据就可以吧最大ID找出来?

Dim x As Integer = DataTables("HZH_GL_REPORTS").Compute("Max(GL_REPORTS_ID)")
‘MessageBox.Show(x)
x = x+1

e.DataRow("GL_REPORTS_ID") = x

能否两个问题都回答一下。


我把ID字段名字填入哪里,然后删除了每行增加1的代码,好像可以自动加序列了,但是点保存会报 ORA-02289: 序列不存在


[此贴子已经被作者于2014-3-21 13:08:24编辑过]

--  作者:cat88hzh
--  发布时间:2014/3/21 13:13:00
--  
偶,我试出来了,要现在数据库中建一个序列,然后那个序列的名字是填你建立的那个序列的名字