oracle如何用,序列生成的id主键自增长,再利用id进行删除某行数据

就是插入的主键id为序列产生的,怎么在利用id删除呢路过的大神,帮帮忙看一下不胜感激。... 就是插入的主键id为序列产生的,怎么在利用id删除呢
路过的大神,帮帮忙看一下不胜感激。
展开
 我来答
IT老K
2018-12-18 · 超过33用户采纳过TA的回答
知道答主
回答量:56
采纳率:89%
帮助的人:25.3万
展开全部

使用序列+触发器创建自增列:

创建序列
-- Create sequence
create sequence SEQ_T_RECV
minvalue 1
maxvalue 9999999
start with 1
increment by 1
cache 50;
创建表
-- Create table
create table RECV_MSG
(
  id          NUMBER,
  messageid   VARCHAR2(32),
  contents    VARCHAR2(2000),
  app_flg     VARCHAR2(100),
  phonenumber VARCHAR2(2000),
  updatetime  DATE default sysdate
);
创建触发器
CREATE OR REPLACE TRIGGER "recv_trig"
  BEFORE INSERT ON recv_msg
  REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW
DECLARE
BEGIN
  SELECT SEQ_T_RECV.NEXTVAL INTO :NEW.ID FROM DUAL;
END recv_trig;


删除数据
DELETE FROM RECV_MSG WHERE ID=1;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式