一、系统默认登录
普通用户: conn scott/密码
普通管理员: conn system/密码
超级管理员: conn sys as sysdba; 然后输入密码;
二、创建新用户
create user 用户名 identified by 密码;
三、赋予新用户权限
1、允许用户登录
grant create session to 用户名;
2、允许新用户连接数据库,并创建数据库对象
grant connect to 用户名;
3、允许用户使用资源的权限(例如创建表、修改表)
grant resource to 用户名;
4、允许用户创建表空间
grant create tablespace to 用户名;
5、允许用户使用表空间
grant unlimited session to 用户名;
6、允许用户查询TEST表的记录
grant select on test to 用户名;
7、允许用户更新test表中的记录
grant update on test to 用户名;
8、允许用户增、删、改、查test表中的记录
grant all on test to 用户名;
9、允许用户删除表
grant drop on 表名 to 用户名;
10、更改用户密码
alter user 用户名 identified by 新密码;
11、授予对指定表特定字段的插入和修改权限,注意,只能是insert和update
grant update(id) on 表名 to 用户名;
12、授予用户alert任意表的权限
grant alert all table to 用户名;
13、删除用户
drop user 用户名 [cascade];
(注: 当用户下有表或其它对象时,需要添加cascade关键字,级联删除对象)
14、允许用户创建视图view
grant create any view to 用户名;
四、查看权限
1、查看当前用户所有权限
select * from user_ sys_ _privs;
2、查看所用用户对表的权限
select * from user_ tab_ privs;
五、排序
1、rank() over(order by 列名) rank :并列跳空
例如:查询每个学生的的姓名,考试的课程名和分数,并按分数进行排序,能产生并列跳空的序号
select st.stuName as 学生姓名,c.cName as 课程名称,sc.grade as 分数,rank() over(order by sc.grade) rank from student st,course c,score sc where st.id = sc.id and c.cId = sc.cId;
2、dense_rank() over(order by 列名) dense_rank :并列不跳空
例如:查询每个学生的的姓名,考试的课程名和分数,并按分数进行排序,能产生并列跳空的序号
select st.stuName as 学生姓名,c.cName as 课程名称,sc.grade as 分数,dense_rank() over(order by sc.grade) dense_rank from student st,course c,score sc where st.id = sc.id and c.cId = sc.cId;
3、row_number() over(order by 列名) row_number :依次排序
例如:查询每个学生的的姓名,考试的课程名和分数,并按分数进行排序,能产生并列跳空的序号
select st.stuName as 学生姓名,c.cName as 课程名称,sc.grade as 分数,row_number() over(order by sc.grade) row_number from student st,course c,score sc where st.id = sc.id and c.cId = sc.cId;