Oracle命令学习一

Oracle命令学习一

一、oracle基本操作
--创建一张表
create table zhiheng(
    eid number primary key ,
    ename varchar2(40),
    pwd varchar2(40)
)

--创建序列
create sequence us
start with 1
increment by 1

--删除序列
drop sequence us;

--添加SQL语句
insert into zhiheng(eid,ename,pwd) values (us.nextval,'武松','123456')
insert into zhiheng(eid,ename,pwd) values (us.nextval,'林冲','123456')
insert into zhiheng(eid,ename,pwd) values (us.nextval,'孙二娘','123456')
    
--查询
select * from zhiheng

--删除
delete from zhiheng where eid=4
    
--修改
update zhiheng set ename='武二郎' where eid=2

--查看当前账户下有多少张表
select * from user_tables;

-----------------------------------------------------------------------------------------

--创建用户语法规则(使用system用户即超级管理员来创建):
create user 用户名 identified by 初始化密码 [account lock/unlock(锁定/解锁) password expire]

--创建用户
create user zijin identified by 123;

--给指定账户授予登录(create session)的权限:grant 权限名 to 用户名
grant create session to zijin

--修改指定账户的密码
alter user zijin identified by 123456

--将指定账号锁定
alter user scott account lock;

--将指定账号解锁
alter user scott account unlock;

--查看所有用户
select * from all_users;

--查看指定的用户是否存在:
select * from all_users where username='zijin';

--查看当前连接的是哪个账号(用户)
show user;

--查看当前账号的详细信息
select * from user_users;

--删除指定的账号(指定账号须断开连接):drop user 用户名
drop user zijin

--连接:connection
--连接oracle数据库:conn 用户名/密码
--断开连接:disc
二、oracle权限与角色
  1. 权限(系统权限、对象权限)
--什么是权限?
    --定义可以执行的操作

--系统权限(粗粒度):登录权限(create session)、创建表权限(create table)、使用表空间权限(unlimited tablespace)、查看任意表权限(select any table)等

--给指定用户授予系统权限(使用system来授权):grant 系统权限名 to 用户名 [with admin option]

--在授予系统权限时,如果后面追加with admin option 时,代表此权限可以传递给其他用户 

create user zijin identified by 123;
grant create session to zijin with admin option;

create user lisi identified by 123;

--回收指定账户的系统权限
revoke create session from zijin;

--查看指定账户下拥有哪些权限:
select * from user_sys_privs;

--给账号lisi授予创建表的权限
grant create table to lisi; 

--给账号lisi授予表空间的权限
grant unlimited tablespace to lisi;

--system账户可以查看其他账户下的表
select * from lisi.aaa;

-----------------------------------------------------------------------------------------
    
--对象权限(细粒度):控制指定用户只能查看一张表,只能修改某一张表中的某个字段

--给用户授予对象权限:grant 对象权限名 on 对象名 to 用户名 [with grant option]

select * from all_users where username='MISGUO';

create user misguo identified by 123;

--授予misguo三个系统权限
grant create session,create table,unlimited tablespace to misguo;

--给misguo授予查看一张表的权限
grant select on scott.dept to misguo;

--给misguo授予修改一张表的某一个字段的权限
grant update(dname) on scott.dept to misguo;

--注:在oracle中增、删、改之后,需要提交事务:commit

--复制某一张表的数据与结构:
create table zhiheng_emp as select * from emp;
  1. 角色
--角色:一组权限的集合

--创建角色语法:create role 角色名;
create role zhiheng_role_a;

--查看当前数据库下有哪些角色
select * from user_role_privs;

--删除指定角色
drop role zhiheng_role_a;

--给角色授权:grant 权限名 to 角色名
grant create session,create table,unlimited tablespace to zhiheng_role_a;


--查询用户
select * from all_users;

--删除用户:如果在删除用户时,不能够删除,则在语句后面添加cascade关键字强制删除
drop user lisi cascade;

--创建一个用户
create user zhiming identified by 123;

--将角色授予用户
grant zhiheng_role_a to zhiming;
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值