一、创建表格
以创建员工信息表为例,创建表格的实例如下:
--删除表
drop table emp_t;
--创建表
create table emp_t(
id integer primary key,
num varchar2(8) default '1000',
name varchar2(20) default NULL,
age integer default 0,
email varchar2(40) default NULL,
department varchar2(30) default NULL,
position varchar2(20) default NULL
);
--添加表注释:
comment on table emp_t is '员工信息表';
--添加字段注释:
comment on column emp_t.id is 'id';
comment on column emp_t.name is '姓名';
comment on column emp_t.age is '年龄';
comment on column emp_t.num is '工号';
comment on column emp_t.email is '邮箱地址';
comment on column emp_t.department is '所属的部门';
comment on column emp_t.position is '职位';
--创建序列
create sequence emp_s
increment by 1 --ID每次自增1
start with 1 --ID从1开始自增
maxvalue 99999 --ID的最大值
minvalue 1; --ID的最小值
--创建触发器 添加数据的时候id自增
create or replace trigger emp_trigger
before
insert on emp_t
for each row
when(new.id is null)
begin
select emp_s.NEXTVAL into :new.id from dual;
end;
--触发器创建好之后就可以这样添加数据了
insert into emp_t(id,num,name,age,email,department,position) values(null,'10001','张1',28,'zhangsa1n@qq.com','支付开发部','程序员');
insert into emp_t(id,num,name,age,email,department,position) values(null,'10002','张2',38,'zhangsan2@qq.com','支付开发部','程序员');
insert into emp_t(id,num,name,age,email,department,position) values(null,'10003','张3',27,'zhangsan3@qq.com','支付开发部','程序员');
insert into emp_t(id,num,name,age,email,department,position) values(null,'10004','张4',27,'zhangsan4@qq.com','支付开发部','程序员');
insert into emp_t(id,num,name,age,email,department,position) values(null,'10005','张5',28,'zhangsan5@qq.com','支付开发部','程序员');
--显示所有的数据
select * from emp_t;
二、修改和删除表格
1、修改表的操作:
(1)、添加列:
语法格式:alter table talbe_name add column_name dataType;
例:alter table student add tel varchar2(11);
(2)、修改列:
语法格式:alter table table_name modify column _name newDataType;
例:alter table student modify tel number(11,0);
(3)、删除列:
语法格式:alter table table_name drop column column _name;
例:alter table student drop column tel ;
(4)、修改列名:
语法格式:alter table table_name rename column column_name to new_column_name;
例:alter table student rename column tel to phone;
(5)、修改表名:
语法格式:rename table_name to new_table_name;
例:rename student to studentInfo;
2、删除表的操作:
(1)、truncate table table_name
:truncate table操作用于删除表中的全部数据,并不是把表删除掉,这种删除方式比delete方式删除数据的速度快
(2)、drop table table_name
:删除表结构(表中数据全部被删除)