一、Oracle PlSQL使用

1、用户管理

数据库系统权限(DataBaseSystem Privilege)

数据库对象权限(DataBaseSystem Privilege)

Oracle内部用户Sys和System

创建用户:create user user_test identified by user_test123;

修改用户:alter user user_test identified by user_test123;

删除用户:drop user user_test;

删除用户与其对象:drop user user_testCASCADE;

用户授权连接:grant connect,resource to user_test;

在sqlplus 中使用以下命令可以查出用户表的清单:

sqlplus scott/tiger -- 使用sqlplus 登录 oracle 数据库

col table_name format a30; -- 指定table_name 的列宽

col table_type format a10; -- 指定table_type 的列宽

select * from cat; -- 列出用户数据表

2、角色管理

1)Connect Role(连接角色):临时用户,不需要建表的用户。

2)Resource Role(资源角色):更可靠和正式的数据库用户。

3)Dba Role(数据库管理员角色):拥有所有的系统权限。

操作:

grant(授权)命令:grant connect,resource to user_test;

revoke(撤销)命令:revoke connect,resource to user_test;

创建角色:除了系统自带的3种标准角色外用户可以创建自己的role.

create role user_test_role;

角色授权:grant select on t_service to user_test_role;

注:拥有student角色的用户都具有对t_service表的select权限。

删除角色:droprole user_test_role;

查看用户有哪些角色:

select grant_role fromdba_role_privs where grantee='scott';

查看用户有哪些权限:

select privilege from dba_sys_privs wheregrantee='scott';

select privilege fromdba_sys_privs where grantee='CONNECT';

默认用户:Sys:oralce中的超级用户,主要用来维护系统信息和管理实例。

System:oracle中默认的系统管理员,拥有dba权限。通常管理oracle数据库的用户、权限和存储等。

Scott:oracle数据库的一个示范账户,在数据库安装时创建。

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

grant select on scott.emp to user_test with grant option;

grant create session to user_test;

3、权限管理

授予user_test用户查看emp表数据的权限

1.验证user_test对scott用户的emp表进行查询的权限。

SQL>select *from scott.emp;

2.为用户user_test授予scott用户的emp表的查询权限。

SQL>conns cott/scott@test;

SQL>grant select on scott.emp to user_test;

3.使用user_test账户登录并查询scott用户的表emp信息。

SQL>conn user_test/u01@test;

SQL>select *from scott.emp;

收回权限: revoke 权限 [ on 对象名 ] from 用户名

SQL>revoke select on scott.emp from user_test;

修改用户密码:alter user 用户名 identified by 新密码;

与权限相关的表:

1.dba_sys_privs(所有系统权限)

2.user_sys_privs(用户拥有的系统权限)

3.user_col_privs(用户拥有的对象权限)

常用的系统权限赋值语句:

SQL>grant create session to user_test;

SQL>grant create table to user_test;

SQL>grant unlimited tablespace to user_test;

SQL>grant create session to public;

对象权限的赋予与撤销语句:

SQL>grant select on mytable to user_test;

SQL>grant all on mytable to user_test;

SQL>revoke select on mytable from user_test;

SQL>revoke all on mytable from user_test;

Oracle中除了能在表对象上赋予相应的权限,还能将权限控制到表的列上:

SQL>grant update(name)on mytable to user_test;

SQL>grant insert(id) on mytable to user_test;

4、口令管理

使用profile管理用户口令

profile是口令限制,资源管理的命令集合,当建立数据库时,Oracle会自动建立名词为default的profile。当建立用户没有指定profile选项,那Oroacle就会将default分配给用户。

关键字列表:

SQL>create profile 配置文件名称 limit failed_login_attempts 尝试次数password_lock_time 锁定天数;

SQL>alter user 用户名 profile 配置文件名称;

例:指定tea用户最多只能尝试3次登陆,锁定时间为2天,下面可以实现。

SQL>create profile lock_account limit failed_login_attempts 3 password_lock_time 2;

SQL>alter user tea profile lock_account;

给账号解锁

SQL>alter user user_test account unlock;

例:为了让用户定期修改密码可使用终止口令完成。

SQL>create profile myprofile limit password_life_time 10 password_grace_time 2;

给用户解锁

SQL>alter user user_testprofile myprofile;

删除profile

SQL>drop profile myprofile[cascade];

5、有关表sequence

创建主键自增表

1)创建表 t_test

create table t_test(

userid number(10) NOT NULL primary key,  /*主键,自动增加*/

username varchar2(20)

);

2)创建自动增长序列

CREATESEQUENCE t_test_increase_sequence

INCREMENTBY 1   -- 每次加几个

START WITH 1     -- 从1开始计数

NOMAXVALUE       -- 不设置最大值  ,设置最大值:maxvalue 9999

NOCYCLE          -- 一直累加,不循环

CACHE 10;

示例:CREATE SEQUENCE t_service_sequence INCREMENT BY1   START WITH 1   NOMAXVALUE  NOCYCLE     CACHE 10;

3)创建触发器(客户端工具添加)

CREATE TRIGGER t_service_triggerBEFORE

insert ON t_service FOR EACH ROW          /*对每一行都检测是否触发*/

begin

select t_service_sequence.nextvalinto:New.userid from dual;

end;

示例:

create orreplacetrigger t_service_trigger

before insert on t_service

for eachrow

declare

-- local variables here

begin

select t_service_sequence.nextvalinto:New.idfrom dual;

end t_service_trigger;

4)提交

commit;

5)测试

insert intoTest_Increase(Username) values('test');

6、远程连接 在连接之前设置好监听程序然后使用如下命令:

sqlplus usr/pwd@//host:port/sid

二、SpringJDBC配置

#flow config jdbcfor oracle

jdbc.driver=oracle.jdbc.driver.OracleDriver

jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl

jdbc.username=user_test

jdbc.password=user_test123

xml里配置方言:

org.hibernate.dialect.OracleDialect

true

true

false

true

update

oracle plsql 命令,Oracle PlSQL常用命令相关推荐

  1. debian linux下载路径,Debian 常用命令,debian常用命令

    Debian 常用命令,debian常用命令 换源用中科大的比较快deb http://mirrors.ustc.edu.cn/debian jessie main contrib non-freed ...

  2. 基本的Dos命令以及Windows常用命令

    基本的Dos命令以及Windows常用命令 1.打开CMD的方式 开始+系统+命令提示符 win键+R 输入cmd打开控制台(推荐使用) 在任意的文件夹下面,按住shift键+鼠标右键右击,在此处打开 ...

  3. 【Linux-Linux常用命令】Linux常用命令总结

    [Linux-Linux常用命令]Linux常用命令总结 1)文件管理 1.1.目录操作 1.2.vim操作 1.3.打包压缩相关命令 1.4.Linux管道 2)文件权限管理 2.1.三种基本权限 ...

  4. linux mv命令的功能,linux常用命令:Linux常用命令之mv命令是什么?

    Linux是目前使用比较广泛的服务器操作系统,可以安装在各种计算机硬件设备中,例如手机,路由器等.由于Linux是开源和免费的,因此Linux系统的稳定性和安全性更高一些,所以Linux具有很高的市场 ...

  5. BT 面板控制命令 宝塔 Linux 常用命令收集整理

    文章目录 BT 面板控制命令 宝塔 Linux 常用命令收集整理 1. 安装命令 2.卸载命令 3.显示 bt 命令行操作面板 4.忘记面板密码如何修改 5.对于 bt 管理的软件的管理 BT 面板控 ...

  6. Linux 基础操作、常用shell命令、vi常用命令、man帮助手册

    Linux 基础操作.常用shell命令.vi常用命令.man帮助手册 一.简述 记录简单的Linux 基础操作.常用shell命令.vi编辑器常用命令.man帮助手册的使用. 二.Linux 基础操 ...

  7. larvel 5.7命令行cmd常用命令

    larvel 5.7命令行cmd常用命令 一.使用如下 Artisan 命令创建一个新的 TagCreateRequest: 1.创建常规类()Make 文件夹 控制器名字 例如表单请求类: php ...

  8. oracle集群crs,oracle rac集群 crs常用命令(转)

    from: 常用的crs命令如下: $ORA_CRS_HOME/bin/crs_stat –t 此命令主要用来检查crs资源状态 例如 [oracle@rac2 css]$ $ORA_CRS_HOME ...

  9. oracle nbu 删除,NBU基本常用命令

    Veritas常用命令: 1. 查看当有运行的任务 bpdbjobs –report | grep Active 2. 停止任务 bpdbjobs –cancel PID (包括主任务和子任务) 3. ...

  10. oracle执行命令显示2,oracle数据库执行脚本时常用命令总结

    收集了一篇oracle数据库执行脚本常用命令总结,希望给同学带来一些帮助. 1. 执行一个SQL脚本文件 代码如下 sqlplus user/pass@servicenamefile_name.sql ...

最新文章

  1. pelee yuface 手势模型
  2. python白名单验证-python脚本简单检测ip合法性并添加到白名单文件
  3. [html] HTML5的文件离线储存怎么使用,工作原理是什么?
  4. PX4代码解析(2)
  5. 两种数据仓库分层实例
  6. 最新Fastjson再爆安全黑洞!可获取服务器权限,快升级!(扩散!!!)
  7. CSF文件批量转换为AVI格式
  8. 计算机所建造全过程,Midas 桥梁设计建模计算,全过程图文解析!
  9. php 绕不过的laravel,php – 为什么在Laravel中不能轻松下载大文件?
  10. JVM调优总结(4)-调优方法
  11. 【网页设计大作业】:端午主题(HTML+CSS+JavaScript)——中国传统文化(6页)
  12. package.json 文件详解
  13. 超全汇总 | 基于Camera的3D目标检测算法综述!(单目/双目/伪激光雷达)
  14. git bash安装SDKman遇到需要安装zip的问题
  15. 《菩萨蛮·书江西造口壁》 辛弃疾
  16. 【Baidu Apollo】5 预测
  17. 从四个维度谈谈如何做好团队管理
  18. 历史上几次股市大崩盘
  19. HashMap(2)-----哈希表
  20. 解决Django migrate: Your models in app(s): ‘Mymodelclassname‘ have changes that are not yet reflected

热门文章

  1. 微软鼠标测试软件,微软IO1.1鼠标使用测试_微软 IO1.1红光鲨鼠标(战队包黑色版)_键鼠评测-中关村在线...
  2. 96微信编辑器服务器老是连不上,96微信编辑器出现文章排版混乱的详细原因介绍...
  3. 简单实现select多选功能
  4. 小作业-drawline换成drawrectangle和fillRectangle
  5. 老电脑宏基E1-471G SSD 装win10系统
  6. 跨实例查询 mysql_SQL语句怎么搞定跨实例查询?
  7. Linux编译安装Apache
  8. 搭建 Harbor v2.2.0 docker私库
  9. CI框架 url指向错误 配置根目录
  10. 基于Multisim的MC1496调幅电路的仿真