oracle 建表id自增长_oracle建表设置主键自增

首先创建一张表

create table member(

memberId number primary key,

memberMail varchar2(20)not null,

memberName varchar2(20) not null,

memberPassword varchar2(20)

);

然后,你需要一个自定义的sequence

CREATE SEQUENCE emp_sequence

INCREMENT BY 1 -- 每次加几个

START WITH 1 -- 从1开始计数

NOMAXVALUE -- 不设置最大值

NOCYCLE -- 一直累加,不循环

NOCACHE -- 不建缓冲区

你只有了表和序列还不够,还需要一个触发器来执行它!代码如下:

create trigger mem_trig before

insert on member for each row when (new.memberId is null)

begin

select emp_sequence.nextval into:new.memberId

from dual;

end;

这样就可以就可以了,插入数据测试

insert into member(memberMail,memberName,memberPassword)

values('123@qq.com','jack','123456');

查询表中的数据

select * from member;

据我所知,表空间的扩展有两种方法:

1、增加数据文件

2、调整当前数据文件的大小或扩展的大小

1、增加数据文件

ALTER TABLESPACE TESTTBS

ADD DATAFILE '+DG1/ora/datafile/testtbs01.ora' SIZE 500M

AUTOEXTEND ON

NEXT 50M

MAXSIZE 2000M;

增加了一个500M的数据文件,并且可以自动扩展到2G,每次扩展50M。

2、增加当前数据文件的大小:

ALTER DATABASE

DATAFILE '+DG1/ora/datafile/testtbs.ora'

RESIZE 50000M;

或者使用file_id

ALTER DATABASE

DATAFILE 10

RESIZE 50000M;

3、在使用过程中,如果想改变某个数据文件的最大大小,可以

ALTER DATABASE

DATAFILE '+DG1/ora/datafile/test.ora'

AUTOEXTEND ON

NEXT 50M

MAXSIZE 10240M;

--查询表空间的总容量

select tablespace_name, sum(bytes) / 1024 / 1024 as

MB

from dba_data_files

group by tablespace_name;

--查询表空间使用率

select total.tablespace_name,

round(total.MB, 2) as Total_MB,

round(total.MB - free.MB, 2) as Used_MB,

round((1 - free.MB / total.MB) * 100, 2) || '%' as

Used_Pct

from (select tablespace_name, sum(bytes) / 1024 / 1024 as

MB

from dba_free_space

group by tablespace_name) free,

(select tablespace_name, sum(bytes) / 1024 / 1024 as

MB

from dba_data_files

group by tablespace_name) total

where free.tablespace_name =

total.tablespace_name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值