oracle学习笔记---新建表、索引、空间、修改表名、列名列类型、授权等命令

oracle修改表增加列删除列修改列
1.增加列
ALTER TABLE table_name ADD( column datatype [DEFAULT EXPR][,column datatype...]);
例如:
SQL>ALTER TABLE emp01 ADD eno NUMBER(4);
2.修改列定义
例如:
SQL>ALTER TABLE emp01 MODIFY job VARCHAR2(15)
2    DEFAULT 'CLERK'
3.删除列
例如:
SQL> ALTER TABLE emp01 DROP COLUMN dno;
4.修改列名
例如:
SQL>ALTER TABLE emp01 RENAME COLUMN eno TO empno;
5.修改表名
例如:
SQL>RENAME emp01 TO employee;
6.增加注释
例如:
SQL>COMMENT ON TABLE employee IS '存放雇员信息';
SQL>COMMENT ON TABLE employee.name IS '描述雇员姓名';

6、建表、建索引语句

 

建表
create table 表名(
    字段 类型,
constraint  主键名  primary key (主键字段))
TABLESPACE 表空间  NOLOGGING;


 建索引

 create index 索引名 on 表名(字段名) TABLESPACE 表空间 NOLOGGING;


 建序列:

 CREATE  sequence  序列名   start with 1 MAXVALUE  999999999999999999999;   --with 从哪一个数开始  MAXVALUE   最大数为止

 重置序列存储过程:

------------------------------------BEGIN------------------------------------------------------

 CREATE OR REPLACE Procedure seq_Reset(v_seqname varchar2)
 As
 n number(10);
 tsql varchar2(100);
 Begin
   tsql := 'Select ' || v_seqname || '.nextval From dual';
   Execute Immediate tsql into n;
   
   --如果序列本身是初始状态则不进行数值计算
  if n <> 1 then
     n := -(n-1);
  end if;

  tsql := 'Alter Sequence ' || v_seqname || ' Increment By ' || n;
  Execute Immediate tsql;
  
  tsql := 'Select ' || v_seqname || '.nextval From dual';
  Execute Immediate tsql into n;
  
  tsql := 'Alter Sequence ' || v_seqname || ' Increment By 1';
  Execute Immediate tsql;
End seq_Reset;

----------------------------------------------END---------------------------------------------------------------


7、建表空间(例)

   create tablespace SPACE1
  datafile 'f:\oracle\oradata\xe\SPACE1.DBF'  
  size 400m   
  autoextend on   
  next 200m maxsize unlimited   
  extent management local; 

8、建用户

create user 用户名  identified by 用户名
default tablespace SPACE1   
temporary tablespace SPACETMP; 


9、给用户授权

grant connect,resource,dba to 用户名;
grant create view to 用户名;


10、用户间单独授权、需使用sys用户登录,连接为SYSDBA

 GRANT SELECT ON  用户名.表或序列名  to 另一用户;

 GRANT Alter ON  用户名.表或序列名 to 另一用户;

...






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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值