Oracle学习笔记(四)

一、控制用户存取
1、创建修改用户Creating Users
Create/alter user new_user identified by password;
例:create user user_1 indentified by pwd_1
alter user user_1 identified by pwd_2
2、给用户授予权限
grant privilege[,privilege] to user [,user|role,public...]
一些系统权限:
create session/table/sequence/view/procedure

alter/delete/execute/index/insert/references/select/update
grant object_priv [(columns)]
on object
to {user|role|public}
[with grant option]
例如:
给用户user_1授予查询tt1表的权限
grant select on tt1表 to user_1
给用户user_1授予修改“表1”中(列1,列2)的权限
grant update(列1,列2) on 表1 to user_1;
给用户user_1 授予查询权限并可以把该权限授予其他用户的权限
grant select
on tt1表
to user_1
with grant option
把权限授予所有用户
grant select
on 表1
to public;

给用户user_1授权
grant create session to user_1;

二、创建角色并给角色授权
1、创建角色
create role mangager;
例如:create role test_role1;
2、给角色授权
grant create table,create view to manager;
例如:grant create table to test_role1;

3、把角色授予用户
grant manager to user_1,user_2...
grant test_user1 to user_1;

三、取消用户权限
revoke {privilege [,privilege...]|all}
on object
from {user[,user...]|role|public}
[cascade constraints];

revoke select on 表1 from user_1;

四、Database Links
create public database link hq.acme.com using 'sales';
select * from emp@hq.acme.com;

五、 oracle取并集、交集、差集
所取的列的数据类型必须兼容
1、取并集
union :会对数据排序,重复记录压缩,union all不会
select employee_id,job_id from employess
union
select employee_id,job_id from job_history;
取所有并集不去除重复数据
select employee_id,job_id from employess
union all
select employee_id,job_id from job_history;

2、取交集
select employee_id,job_id from employess
intersect
select employee_id,job_id from job_history;

3、差集
表employess去掉共同拥有的数据
select employee_id,job_id from employess
minus
select employee_id,job_id from job_history;

六、日期时间函数
求时差
select tz_offset('US/Eastern') from dual;

alter session set time_zone='-8:0';
select sessiontimezone,current_date from dual;
alter session set time_zone='-8:0';
select sessiontimezone,current_timestamp from dual;

alter session set time_zone='-8:0';
select current_timestamp,localtimestamp from dual;

select dbtimezone,sessiontimezone from dual;
select from_tz(timestamp'2000-03-23 08:00:00','3:00') from dual;

select to_timestamp('2000-02-01 11:00:00','YYYY-MM-DD HH:MI:SS')from dual;

select to_timestamp_tz('2000-02-01 11:00:00','YYYY-MM-DD HH:MI:SS TZH:TZM')from dual;
to_ymininterval()

时间: 2011-12-27

oracle学习笔记(二)

一.多行函数又称组合函数(Group Functions).聚合函数 1. Types of Group Functions avg.count.max.min.stddev.sum.variance avg 求平均数 select avg(nvl(列1,0)) from 表1 count求行数 在where条件中不允许使用聚合函数,但可以使用having avg(列1)>1000 having所起的作用和where一样 二.子查询Subqueries 查询前10行数据 oracle: sele

Oracle学习笔记(六)

一.oracle oracle服务器有Oracle instace 和Oracle database instance有memory structure 和 background process 组成. memory structure包括shared pool. SGA(System Global Area). SGA包括:Database buffer cache 和 Redo log buffer cache. show sga; show parameter shared; show p

Oracle学习笔记(一)

一.基本的查询语句,特殊符号||.制定列的别名AS,唯一标示distinct 1.字符连接符"||"与"+"符 oracle:select  列名||'111111111111111' from 表名sql:select  列名+'111111111111111' from 表名T 2"AS"符号oracle:select  列名 as 新列名 from 表名 (空格,不能有as)新表名sql:select  列名 as 新列名 from 表名T

oracle学习笔记(三)

一.创建和管理表 1.创建表语法 create table 表名(column datatype [default expr][,column ...]) default 约束 说明略 2.利用子查询创建表 create table 表名 as select * from u表 二.修改表 1.添加一个新列 oracle:alter table table_name add(column datatype [default expr][,column datatype]...); 2.修改现有的

Oracle学习笔记(五)

组合集总计: group by with rollup/cube grouping sets 子查询按执行方式分:标准子查询.关联子查询 标准子查询:嵌套子查询 标量值查询 case with then 使用exits查询 select user_id,user_name from tb_001 tb where [not] exists (select 'x' from tb_001 where manager_id=tb.user_id ) 关联更新 update table1 alias1

python网络编程学习笔记(五):socket的一些补充

1.半开放socket 利用shutdown()函数使socket双向数据传输变为单向数据传输.shutdown()需要一个单独的参数,该参数表示了如何关闭socket.具体为:0表示禁止将来读:1 表示禁止将来写:2表示禁止将来读和写. 2.timeouts控制超时 调用socket的settimeout()函数,向其传递参数,表明超时时间设置.当访问一个socket,如果经过了参数设定的时间后,什么都没有发生,则会产生一个socket.timeout异常.例如:当程序运行后,会等待数据传入.

ORACLE学习笔记-新建用户及建表篇

一.用户相关SQL语句 /*新建用户*/ create user SA identified by 2013; 说明:SA用户名,2013密码 /*授权connect,resource给用户sa*/ grant connect,resource to sa; 说明:CONNECT角色: --是授予最终用户的典型权利,最基本的 . ESOURCE 角色: --是授予开发人员的 /*查询所有的用户*/ select * from all_users; /*将表STU查询权限授予SA*/ GRANT

ORACLE学习笔记-查询篇

一.普通查询 /*查询表数据*/ select * from STU /*取出前3行数据*/ select * from stu where ROWNUM<=3 /*模糊查询*/ select * from stu where stu_id like 'stu001%' 说明:通配符"%"代表一个或者多个字符,通配符"_"代表一个字符. /*别名*/ select STU_ID as 学号 from stu 二.联合查询 /*普通联合查询*/ SELECT S

MongoDB学习笔记(五) MongoDB文件存取操作

由于MongoDB的文档结构为BJSON格式(BJSON全称:Binary JSON),而BJSON格式本身就支持保存二进制格式的数据,因此可以把文件的二进制格式的数据直接保存到MongoDB的文档结构中.但是由于一个BJSON的最大长度不能超过4M,所以限制了单个文档中能存入的最大文件不能超过4M.为了提供对大容量文件存取的支持,samus驱动提供了"GridFS"方式来支持,"GridFS"方式文件操作需要引入新的程序集"MongoDB.GridFS.