oracle 数 据 库,表中有id(自增字段,主键), insert 语句插入一条记录后要求,返回当前插入记录的id値。这个ID不是主ID,ID里的值是CASE_SEQ.Nextval一个自增序列,我想获得当前的插入的记录里的自增序列的值,有人说的方法如下:
create sequence CASE_SEQ
minvalue 0
maxvalue xxxxxxxx
start with 1
increment by 1
cache 20;
select CASE_SEQ.nextval from dual
这个放法正确吗?
如果正确那 asp 里面掉用怎么而写正确
string str = "insert into PATIENT_T(pid,name) values(CASE_SEQ.Nextval,'黎明')";
str += "Select CASE_SEQ.currval from dual";
OracleConnection conn = DB.getCon();
OracleCommand cmd = conn.CreateCommand();
conn.Open();
int returnID = 0;
cmd.CommandText = str;
returnID = Convert.ToInt32(cmd.ExecuteScalar());
//returnID = cmd.ExecuteNonQuery();
conn.Close();
有错误啊 正确的应该怎么改 希望大虾指点,谢谢!!!!
我想要得到 returnID 的值 先看sql 语句对吗?然后怎么在 asp中写具体调用的指令,和返回的值类型,还用强制转化吗? 本人是新手希望有人能够解答,最好考虑到获得的CASE_SEQ.Nextval的唯一性,考虑到有多个用户同时丛客户端写插入语句,怎么知道得到的ID就是自己刚才插入的自动序列ID,不会是别人的序列ID,谢谢了,本人新手!!!
...插入一条信息返回当前信息的主键id 怎样写 oracle的数据库 主键序列...
insert into test(nid,test1) values(6,'aaa')insert into test(test1) values('bbb')
oracle怎么实现id自增和设置主键啊
before insert on book for each row begin select book_seq.nextval into :new.bookId from dual;end ;添加数据 insert into book(name) values ('cc');insert into book(name) values ('dd');commit;
oracle 如果存在主键则更新(update),否则添加新纪录(insert)怎么...
可以用merge语句。给你举个例子 CREATE OR REPLACE PROCEDURE test (in_deptno IN NUMBER, in_dname IN VARCHAR2, in_loc IN VARCHAR2)AS t_record scott.dept%ROWTYPE;BEGIN SELECT in_deptno, in_dname, in_loc INTO t_record FROM DUAL;---用merge语句 MERGE I...
oracle 实现主键id自增
通过利用Oracle数据库的序列功能,我们能够实现主键自动递增,避免了手动分配数值的繁琐过程,确保了主键的唯一性和自增性,从而提高了数据管理的效率与准确性。
oracle如何实现插如记录时ID自增
sql server中的ID是系统设定的,当我们插入数据时他会自己增加,但oracle没有,需要我们自己添加字段ID,由于ID设置成NOT NULL,插入数据库时就会失败,这样就需要插入数据库时实现这条记录ID自己自动增加,自己搜了一下,具体方法如下 假如将表li_line_fence sql server中的ID是系统设定的,当我们插入...
如何实现在Oracle插入一条记录返回主键
单纯sql语句里面没有这个语法。plsql里面有这个方法,具体示例:DECLARE v_id t.id%TYPE;BEGIN INSERT INTO t VALUES (t_seq.nextval, 'DDD')RETURNING id INTO v_id;COMMIT;DBMS_OUTPUT.put_line('ID=' || v_id);END;\/
oracle数据库,主键设置为ID,插入语句时,如何自动生成ID并让它顺序增加...
使用oracle数据库中的关键字sequence来实现目的。\/\/创建mySeq create sequence mySeqstart with 1increment by 2maxvalue 40minvalue 1cycle \/\/创建用户表 create table USER(Id int,CompName varchar2(20))插入语句可以这样写:insert into USER values(mySeq.nextVal,'AA')这样的话每次插入的ID就是...
...oracle 插入一条数据得到 他的自增长主键 tad_id
不用这么麻烦 只要 使用insert 的returning 即可满足需求
oracle数据库如何创建自增列的技巧教程
写个insert语句,插入一条记录,看ID字段自增了没,自增则OK啦。oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。先建一个测试表了:create table userlogin (id number(6) not null,name varchar2(30) not null primary key )tablespace users \/ 第一步:...
为什么ORACLE中,用SQL语句插入一条记录后,找不到该记录
oracle插入记录后必须commit,如果你insert之时的sqlplus客户端没有退出,也就是说session没发生改变,你即使没有commit也可以看到你insert的记录,数据库中这样读到的数据叫“脏读”。一旦session发生改变,没有commit的insert的记录是看不到的。没有commit的DML的记录被oracle放到回滚段或者UNDO表空间里,...