请问 Oracle数据库在.NET下编程问题,关于Sequence(序列)
.NET下编成。使用Oracle的.NET Data Provider
使用ADO.NET的方式。获取DataTable 然后通过添加
编辑,删除 datarow的方式 改变DataTable,最后把修改
提交给数据源。
现在出现一个问题,问题是如果我要使用Oracle数据库的
序列。Sequence.
通过Sequence.NextValue 给DataTable添加的新纪录
作标记,比如赋给某个字段***ID,该如何做?
下面的语句是使用SQL语句添加新的纪录到SEQUENCE_TABLE 调用
TEMPSEQUENCE.NEXTVAL作为值 赋给NO这个字段
INSERT INTO SEQUENCE_TABLE(NO) VALUES(TEMPSEQUENCE.NEXTVAL)
在ADO.NET方式下如何使用?
问题点数:20、回复次数:6Top
1 楼xiaowangtian1117(笑望天1117)回复于 2005-08-02 13:55:10 得分 0
你可以做一个触发器,当对表SEQUENCE_TABLE做插入动作时用序列给NO列一个值,这样你在往表里插数据时就不用管NO列的值了,这些都由触发器来完成Top
2 楼maggiecheung(^0^)回复于 2005-08-02 15:32:43 得分 0
不行啊,我要用INSERT语句添加的纪录的字段NO往往是主健。
不能用触发器添加值吧。我现在的问题就是简化成了
如何在C#下程序中取到Oracle数据库中序列的Next值。当然取得过程中应当让序列往前走一步
Top
3 楼yiyi0518(世上的盐和光)回复于 2005-08-02 16:11:28 得分 15
每当需要添加数据的时候去数据库读取SEQUENCE,然后插入,一直这么做的Top
4 楼yiyi0518(世上的盐和光)回复于 2005-08-02 16:16:18 得分 5
定义变量P1==> 读取数据库中的SEQUENCE.NEXTVAL值==》赋值给P1==》在添加记录的时候用P1对应字段插入Top
5 楼maggiecheung(^0^)回复于 2005-08-02 17:06:41 得分 0
如何读取阿??读取数据库中的SEQUENCE.NEXTVAL值
我用了一下,不知道如何写SQL语句单独读取阿。
大虾救命,非常感谢,我加分。。Top
6 楼xiaowangtian1117(笑望天1117)回复于 2005-08-03 10:50:58 得分 0
这和主键没有关系,你用insert语句插入记录时不要向no列插值,触发器会自动在当你往数据库插入记录时自动往no字段插入值Top




