Oracle 学习:PL/SQL循序渐进全面学习教程
课程八 用户访问控制
本课重点:
1、创建用户
2、创建角色来进行安全设置
3、使用GRANT或REVOKE 来控制权限
注意:以下实例中标点均为英文半角
一、概述:
ORACLE通过用户名和密码进行权限控制。
数据库安全:系统安全和数据安全
系统权限:使用户可以访问数据库
对象权限:操纵数据库中的对象
SCHEMA:各种对象的集合
二、系统权限:
1、超过80个权限可用。
2、DBA有最高的系统权限:
CREATE NEW USER
REMOVE USERS
REMOVE ANY TABLE
BACKUP ANY TABLE
三、创建用户
1、CREATE USER user IDENTIFIED BY password;
2、系统权限:CREATE SESSION Connect to the database.
CREATE TABLE Create tables in the user’s schema.
CREATE SEQUENCE Create a sequence in the user’s schema.
CREATE VIEW Create a view in the user’s schema.
CREATE PROCEDURE Create a stored procedure, function, or package in
the user’s schema.
3、授权用户系统权限:
GRANT privilege [, privilege...] TO user [, user...];
GRANT CREATE TABLE TO SCOTT;
四、角色的使用
1、概念:角色是一组权限的命名,可以授予给用户。这样就如同给了某个用户一个权限包。
2、创建、授予给角色:
CREATE ROLE MANAGER;
GRANT CREATE TABLE,CREATE VIEW TO MANAGER;
GRANT MANAGER TO CLARK
五、修改密码:
ALTER USER user IDENTIFIED BY password;
六、对象权限:
1、语句:
GRANT {object_priv(, object_priv...)|ALL}[(columns)]
ON object
TO {user[, user...]|role|PUBLIC}
[WITH GRANT OPTION];
2、实例:
最简单:
SQL> GRANT select
2 ON s_emp
3 TO sue, rich;
稍复杂:
SQL> GRANT update (name, region_id)
2 ON s_dept
3 TO scott, manager;
SQL> GRANT select, insert
2 ON s_dept
3 TO scott
4 WITH GRANT OPTION;
相关文档:
这sql 语句写的真的很不错!
if object_id('[tb]') is not null drop table [tb]
go
create table [tb]([col1] bigint,[col2] varchar(6),[col3] varchar(6))
insert [tb]
select 130126200201000275,'王文霞','靳川川' union all
select 130126200201000275,'王文霞','靳澤' union all
select 13012620 ......
SQL时间函数
--日期转换参数,值得收藏
select CONVERT(varchar, getdate(), 120 )2004-09-12 11:06:08
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')20040912110608
select CONVERT(varchar(12) , getdate(), 111 )2004/09/12
select CONVERT(varchar(12) , get ......
ORACLE 10G中新增的MODEL子句可以用来进行行间计算。MODEL子句允许像访问数组中元素那样访问记录中的某个列。这就提供了诸如电子表格计算之类的计算能力。
1、MODEL子句示例
下面这个查询获取2003年内由员工#21完成的产品类型为#1和#2的销量,并根据2003年的销售数据预测出2004年1月、2月、3月的销量。
......
课程四 组函数
本课重点:
1、了解可用的组函数
2、说明每个组函数的使用方法
3、使用GROUP BY
4、通过HAVING来限制返回组
注意:以下实例中标点均为英文半角
一、概念:
组函数是指按每组返回结果的函数。
组函数可以出现在SELECT和HAVING 字段中。
GROUP ......