Oracle 入门 3.小练习 创建主外键、序列自增的双表

本文介绍如何在Oracle数据库中创建包含主外键关联的两个表,并利用序列实现自动增长功能。首先创建部门表(dept)和人员表(person),然后通过外键约束将两表关联。接着定义序列用于自动生成主键值,并演示了插入数据及查询序列当前值的方法。

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

创建主外键、序列自增的双表

--创建(dept)部门表
create table dept(
       dept_id number(3) primary key,
       dept_name varchar2(20)
)


--删除(dept)数据表
drop table dept;


--遍历(dept)数据表
select * from dept;
  
--创建(person)数据表
create table person(
       id number(4) not null primary key,
       name varchar2(10),
       age number(2),
       sex varchar2(2),
       dept_id number(2)
)


--添加外键约束 
alter table person add foreign key (dept_id)
      references dept (dept_id);
      
--遍历(person)数据表
select * from person;       
       
--删除(person)数据表
drop table person;      
 
--定义(dept)表的序列
create sequence dept_seq
       start with 0
       increment by 1
       nomaxvalue
       minvalue 0
       cache 10; 


--删除(dept)表序列       
drop sequence dept_seq;
       
--定义(person)表的序列
create sequence person_seq
       start with 0
       increment by 1
       nomaxvalue
       minvalue 0
       cache 10;   


--删除(person)表序列       
drop sequence person_seq;


--添加数据到dept表
insert into dept values (dept_seq.nextval,'开发部');
insert into dept values (dept_seq.nextval,'测试部');
insert into dept values (dept_seq.nextval,'财务部');  
commit;    


--添加数据到person表
insert into person values (person_seq.nextval,'萌萌',25,'女',2);
insert into person values (person_seq.nextval,'浅夏',22,'女',3);
insert into person values (person_seq.nextval,'帅骏',28,'男',1);
insert into person values (person_seq.nextval,'樟夏',23,'女',2);
insert into person values (person_seq.nextval,'千歌',26,'男',1);
commit;


--查询序列的当前值
select dept_seq.currval from dual;

select person_seq.currval from dual;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值