oracle表创建序列创建触发器创建

本文介绍如何在Oracle数据库中创建表与序列,并通过示例展示了如何利用序列实现自动增长ID,同时提供了表和字段的注释说明,以及插入记录和创建触发器的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 创建一个序列
CREATE SEQUENCE Car_GUID increment by 1;
// 创建一个表
CREATE TABLE Car
(
GUID NUMBER NOT NULL PRIMARY KEY,
PhoneId Char(11) NOT NULL,
UserName VarChar(20) NOT NULL
);
// 添加注释
comment on table car is '定位信息用户表';
Comment on column car.guid is '自增字段';
Comment on column Car.PhoneId is '电话唯一标识';
Comment on column Car.UserName is '用户名称';
// 添加一条记录
INSERT INTO Car(GUID, PhoneId, UserName) Values(CAR_GUID.nextval, '13589256783', '张三');
// 提交
commit;

// 触发器
create or replace trigger Trigger_Car_GUID_Insert
before insert on Car
for each row
begin
select CARGUIDSEQ.nextval into :new.GUID from sys.dual;
end;

-----------------------------下面是自已建的测试表----------------------------
/*create table STUBASEINFO(ID NUMBER(10)
CONSTRAINT STUBINFO_id_pk PRIMARY KEY,
STUID NUMBER(8) NOT NULL UNIQUE,
STUNAME VARCHAR2(20) NOT NULL,
SEX NUMBER DEFAULT 1 NOT NULL,
PHONE VARCHAR2(13),
MOBILE VARCHAR2(11),
ADDR VARCHAR2(100),
EMAIL VARCHAR(100),
FLAG NUMBER DEFAULT 1 NOT NULL,
OPRTIME DATE DEFAULT SYSDATE
);
comment on column STUBASEINFO.STUID is '学号与学生履历表中的学号一对一';
comment on column STUBASEINFO.FLAG is '学生的状态信息' */


/* create table STURESUME(ID NUMBER(10) CONSTRAINT STURESUME_id_pk PRIMARY KEY,
STUID NUMBER(8) NOT NULL UNIQUE,
EXPERIENCEONE VARCHAR2(200),
EXPERIENCETWO VARCHAR2(200),
EXPERIENCETH VARCHAR2(200),
EXPERIENCEFOUR VARCHAR2(200),
EXPERIENCEFIVE VARCHAR2(200),
OPRTIME DATE DEFAULT SYSDATE);
COMMENT ON TABLE STURESUME IS '学生履历记录表';
COMMENT ON COLUMN STURESUME.STUID IS '学号与stubaseinfo表中一对一关系';
COMMENT ON COLUMN STURESUME.EXPERIENCEONE IS '第一个工作经验或是取得的成就';
COMMENT ON COLUMN STURESUME.OPRTIME IS '操作时间'; */

---给两表增加序列
--CREATE SEQUENCE STUBASEINFO_ID increment by 1;
--CREATE SEQUENCE STURESUME_ID increment by 1;


---给两表新增一条数据信息(测试)
INSERT INTO STUBASEINFO(ID,STUID,STUNAME,SEX,MOBILE,ADDR) Values(STUBASEINFO_ID.nextval,'01080001','赵敏敏',0,'13912345678','杭州市西湖区');

INSERT INTO STURESUME(ID,STUID,EXPERIENCEONE,EXPERIENCETWO) VALUES(STURESUME_ID.NEXTVAL,'01080001','取得数据库工程师证','学生管理系统开发');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值