Oracle(八)创建和管理表

查询数据字典

查看用户自定义的表

select table_name
from user_tables;

查看用户定义的各种数据库对象

select distinct object_type
from user_objects;

查看用户定义的表,视图,同义词和序列

select * from user_catalog;

创建表

第一种创建方式

create table emp1(
id number(5), --99999
name varchar2(10),
salary number(10,2),
hire_date date
)

select * from emp1;

第二种创建方式:基于已经存在的表

基于已经存在的表创建新的表

create table emp2
as
select employee_id,last_name,salary,hire_date
from employees;
--一方面基于已经存在的表创建新的表,并且列的数据类型与原表一致。另一方面原表中的数据可以同样的导入
select * from emp2;

基于已经存在的表创建一个空表

create table emp4
as
select employee_id,last_name,salary,hire_date
from employees
where 1 = 2;

实现对已有表的复制

create table emp6
as
select * from employees;

修改表

增加一个列

alter table emp1
add(email varchar2(20));

修改现有的列(存储值的范围,增加默认值)

alter table emp1
modify(id number(10));

alter table emp1
modify(salary number(10,2) default 2500);

重命名一个列

alter table emp1
rename column salary to sal;

删除一个现有的列

alter table emp1
drop column email;

清空表

truncate table emp2;--注意与delete的区别:truncate(DDL)操作不可以回滚。
delete from emp3;--DML的删除,是可以回滚的。
rollback;--DML的一个操作:回滚

重命名表

rename emp3 to empp3;

删除表

drop table emp1;

总结

语句描述
CREATE TABLE创建表
ALTER TABLE修改表结构
DROP TABLE删除表
RENAME TO重命名表
TRUNCATE TABLE删除表中的所有数据,并释放存储空间

以上这些DDL的命令,不可回滚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值