Oracle学习笔记(四)
一、控制用户存取
1、创建修改用户CreatingUsers
Create/alterusernew_useridentifiedbypassword;
例:createuseruser_1indentifiedbypwd_1
alteruseruser_1identifiedbypwd_2
2、给用户授予权限
grantprivilege[,privilege]touser[,user|role,public...]
一些系统权限:
createsession/table/sequence/view/procedure
alter/delete/execute/index/insert/references/select/update
grantobject_priv[(columns)]
onobject
to{user|role|public}
[withgrantoption]
例如:
给用户user_1授予查询tt1表的权限
grantselectontt1表touser_1
给用户user_1授予修改“表1”中(列1,列2)的权限
grantupdate(列1,列2)on表1touser_1;
给用户user_1授予查询权限并可以把该权限授予其他用户的权限
grantselect
ontt1表
touser_1
withgrantoption
把权限授予所有用户
grantselect
on表1
topublic;
给用户user_1授权
grantcreatesessiontouser_1;
二、创建角色并给角色授权
1、创建角色
createrolemangager;
例如:createroletest_role1;
2、给角色授权
grantcreatetable,createviewtomanager;
例如:grantcreatetabletotest_role1;
3、把角色授予用户
grantmanagertouser_1,user_2...
granttest_user1touser_1;
三、取消用户权限
revoke{privilege[,privilege...]|all}
onobject
from{user[,user...]|role|public}
[cascadeconstraints];
revokeselecton表1fromuser_1;
四、DatabaseLinks
createpublicdatabaselinkhq.acme.comusing"sales";
select*fromemp@hq.acme.com;
五、oracle取并集、交集、差集
所取的列的数据类型必须兼容
1、取并集
union:会对数据排序,重复记录压缩,unionall不会
selectemployee_id,job_idfromemployess
union
selectemployee_id,job_idfromjob_history;
取所有并集不去除重复数据
selectemployee_id,job_idfromemployess
unionall
selectemployee_id,job_idfromjob_history;
2、取交集
selectemployee_id,job_idfromemployess
intersect
selectemployee_id,job_idfromjob_history;
3、差集
表employess去掉共同拥有的数据
selectemployee_id,job_idfromemployess
minus
selectemployee_id,job_idfromjob_history;
六、日期时间函数
求时差
selecttz_offset("US/Eastern")fromdual;
altersessionsettime_zone="-8:0";
selectsessiontimezone,current_datefromdual;
altersessionsettime_zone="-8:0";
selectsessiontimezone,current_timestampfromdual;
altersessionsettime_zone="-8:0";
selectcurrent_timestamp,localtimestampfromdual;
selectdbtimezone,sessiontimezonefromdual;
selectfrom_tz(timestamp"2000-03-2308:00:00","3:00")fromdual;
selectto_timestamp("2000-02-0111:00:00","YYYY-MM-DDHH:MI:SS")fromdual;
selectto_timestamp_tz("2000-02-0111:00:00","YYYY-MM-DDHH:MI:SSTZH:TZM")fromdual;
to_ymininterval()
相关文章
- 学习Oracle:马士兵带你走进数据库世界(马士兵oracle数据库)
- 获取最佳Oracle视频教程:体验学习之旅(最好的oracle视频)
- 标题:深入了解Oracle错误日志查看(oracle查看错误日志)
- 管理Oracle桌面管理:实现无缝管理(oracle桌面)
- 查询掌握Oracle字符连接数据查询技巧(oracle字符连接)
- Oracle视频教程:快速学习技能,轻松下载!(oracle视频下载)
- 学习Oracle的触发器类型分类(oracle触发器类型)
- 下载Oracle教程,学习数据库管理技巧(oracle教程下载)
- Oracle文档:一站式学习数据库知识(oracle 在线文档)
- Oracle索引:学习之路(oracle索引学习)
- Oracle的内容循环精彩不断(oracle 内容循环)
- 深入学习Oracle关闭所有服务(oracle关闭所有服务)
- 手把手教你学习Oracle编程(code oracle)
- 人生总有新的起点40岁技术提升之Oracle学习之旅(40岁去学oracle)
- 优化Oracle数据库碎片的清理方法(oracle中碎片清理)
- Oracle 以主键分组改善数据库性能(oracle以主键分组)
- Oracle通过DBA身份登录操作方式介绍(oracle以dba登陆)
- Oracle数据库的基本概念(oracle中的基本概念)
- 解决Oracle中文乱码问题(oracle中文乱码问号)
- Oracle中变换列为行的技巧(oracle中将列变成行)
- 学习Oracle,掌握基本SQL语句(oracle中基本语句)
- 使用Oracle中ISNULL函数判定空值(oracle中判空函数)
- 学习Oracle SQL数组的运用(oracle sql数组)
- Oracle和SAP教程一步一步学习(oracle sap教程)
- 立即拥抱Oracle Jar 6的无限可能性(oracle jar6)
- Oracle DB学习之路新手拥抱包教会(oracle db教材)
- Oracle Bug文档之调查这些bug有何秘密(oracle bug文档)