ORACLE——表

--建表
1、普通方法 create
create table t_name
(
   sno varchar2(10) primary key, --行行不同,不为null
   sname varchar2(10) unique,--行行不同,可以null,但只能有一个null
   sage integer check(sage between 0 and 200)
)
2、使用子查询创建表
  create table t_emp as
  select * from emp where deptno=30
  
  create table a(temp) as  --temp是列别名
  select sal from emp where deptno=30 --只能有一列的查询
  
  select * from a;
3、复制表结构,不复制数据
  CREATE TABLE t_tmp AS 
  SELECT * FROM emp WHERE 1=2;
  
--数据字典:本身就是一组表,因为数据库里的所有数据都存储在表中。
--可以把该字典看作是“用来描述表的表”。
1、user_tables:存放所有的用户表的相关信息
select table_name from user_tables where table_name='A'
2、all_tables:
select * from all_tables
3、dba_tables: --dba身份访问
select * from  dba_tables; 
4、USER_OBJECTS:--所有用户对象
select * from USER_OBJECTS where object_type='TABLE'
--元数据
存储在数据字典中的数据通常也称为“元数据”。
元数据包含有两个级别:内部和外部。
内部级别包含那些由各个DBMS 软件组件所使用的表。
对最终用户来说,这些表通常不可见。
外部级别提供了这些基表的许多视图,
可使用这些视图访问不同详细程度的对象和结构信息。


--修改表(表结构) alter
--增加一列
alter table A
add(num number)


alter table A
add(birth date default sysdate) --增加默认约束


select * from b


--修改表中的列信息 modify
alter table A
modify(temp number(30,3) default 0)


insert into A(num) values(12)


alter table A
modify(temp number(30,3) check(temp>-1))


--改列名
alter table A rename column temp to sal
--删除列
alter table A drop(num,birth)


--设置某列不可用
alter table A set unused(sal)


--删除所有不可用的列
ALTER TABLE tablename DROP UNUSED COLUMNS;


--改表名
rename a to b
--删除表
drop table b;
--给表加注释
comment on table b is '这是个无用的表'
select * from USER_TAB_COMMENTS
--给列加注释
comment on column b.sal is '这是个无用的列'
select * from USER_col_COMMENTS




  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值