![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
oracle
luwenbangisme
这个作者很懒,什么都没留下…
展开
-
oracle系统权限管理
在cmd窗口中运行sqlplus。 以sys身份进入数据库中,命令如下:/ as sysdba。 以sys身份创建用户,命令:create user lisi identified by lisi。 给lisi用户授登录的权限,命令:grant create session to lisi。 给lisi用户授操作表空间的权限,命令:grant unlimited tablespace to...原创 2011-01-17 14:39:43 · 76 阅读 · 0 评论 -
oracle数据字典
数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者是sys用户。 用户只能在数据字典上执行查询操作,而其维护和修改是由系统自动完成的。 数据字典包括:数据字典基表和数据字典视图。 数据字典基表存储数据库的基本信息,普通用户不能直接访问数据字典的基表。 数据字典视图是基于数据字典基表所建立的视图,普通用户可以通过查询数据字典视图取得系统信息。 数据字典视图主要包括:u...原创 2011-02-10 09:53:12 · 99 阅读 · 0 评论 -
动态性能视图
动态性能视图用于记录当前例程的活动信息,当启动oracle server时,系统会建立动态性能视图;当停止oracle service时,系统会删除动态性能视图。oracle的所有动态性能视图都是以v_$开始的,并且oracle为每个动态性能视图都提供了相应的同义词,并且其同义词是以V$开始的,例如v_$datafile的同义词为v$datafile;动态性能视图的所有者为sys,一般情况下,由d...原创 2011-02-10 09:55:34 · 72 阅读 · 0 评论 -
管理表空间和数据文件
表空间是数据库的逻辑组成部分。从物理上讲,数据库数据存放在数据文件中;从逻辑上讲,数据库则是存放在表空间中,表空间由一个或者多个数据文件组成。 oracle中逻辑结构包括表空间,段,区和块。 数据库由表空间构成,而表空间由段构成,段由区构成,区由块构成。 表空间作用: 1、控制数据库占用的磁盘空间。 2、将不同数据类型部署到不同位置,提高i/o性能,同时利于备份和恢复等管理操作。 建立...原创 2011-02-10 09:57:52 · 74 阅读 · 0 评论 -
oracle约束
约束: 列级定义: 1、not null 非空(可以多个) 2、unique 唯一(可以多个,不能重复,但可以null) 3、primary key 主键(只能一个) 4、foreign key 外键(可以多个,列定义 references 关键表(关键字段)) 5、check 检查(可以多个,check (字段名 between 1 a...原创 2011-02-10 10:00:22 · 57 阅读 · 0 评论 -
管理索引
在一张表中可以多个索引,但是组合必须不同。 索引是用于加速数据存取的数据对象,合理使用索引可以大大降低i/o次数,从而提高数据访问性能。 单列索引 create index 索引名 on 表名(列名) 复合索引 create index 索引名 on 表名(列名1,列名2...) 使用原则: 1、在大表上建立索引才有意义; 2、在where子句或者连接条件上经常引用的列上建立索引 ...原创 2011-02-10 10:01:20 · 60 阅读 · 0 评论 -
管理权限和角色
权限包括:系统权限和对象权限 系统权限:针对这个数据库系统的权限,包括140个权限 对象权限:针对数据库系统的对象的权限,包括16个权限 系统权限和对象权限的回收是不同的。 当收回对象权限的时候,底下分配出去的对象权限,和传递下去的对象权限一并回收。 当收回系统权限的时候,底下分配出去的系统权限,和传递下去的系统权限不会回收。 角色就是相关权限的命令集合,使用角色的主要目的就是为了...原创 2011-02-10 10:02:32 · 111 阅读 · 0 评论 -
pl/sql编程规范
pl/sql(procedural language/sql)是oracle在标准的sql语言上的扩展。pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加强大。 优点: 1、提高应用程序的运行性能 2、模块化的设计思想 3、减少网络传输量 4、提高安全性 缺点: 1、移植性不好. 编写规范 单行...原创 2011-02-10 10:05:21 · 154 阅读 · 0 评论 -
游标管理
游标类型:隐式游标,显式游标,ref游标; 隐式游标: 在pl/sql中使用dml语句时自动创建隐式游标; 隐式游标自动声明,打开和关闭,其名为sql; 通过检查隐式游标的属性可以获得最近执行的DML语句的信息; 隐式游标的属性有: %found-sql语句影响了一行或者多行时为true; %notfound-sql语句没有影响任何行时为true; %rowcount-sql语句影...原创 2011-02-10 10:09:56 · 89 阅读 · 0 评论 -
oracle存储过程
过程用于执行特定的操作,当建立过程时,即可以指定输入参数(in),也可以指定输出参数(out).通过在过程中使用输入参数,可以将数据传递到执行部分;通过使用输出参数,可以将执行部分的数据传 递到应用环境。使用create or replace procedure 过程名 is 来建立存储过程。 create or replace procedure sp_pro_sal(spName va...原创 2011-02-10 10:12:22 · 69 阅读 · 0 评论 -
pl/sql进阶
pl/sql的条件语句,循环结构,顺序控制结构 条件分支语句 if-then...end if; if-then-else...end if; if then-elseif-else...end if; 简单的条件判断if-then...end if: create or replace procedure sp_pro_ifthen(spName varchar2) is ...原创 2011-02-10 10:19:17 · 81 阅读 · 0 评论 -
动态sql
动态sql是指在PL/SQL程序执行时生成的SQL语句 编译程序对动态SQL不做处理,而是在程序运行时动态构成语句、对语句进行语法分析并执行。 DDL语句命令和会话控制语句不能在pl/sql中直接使用,但是可以通过动态SQL来执行。 执行动态SQL的语法: declare v_sql varchar2(200); v_empId number(4):=7566; v_rec emp%...原创 2011-02-10 10:21:01 · 71 阅读 · 0 评论 -
oracle例外
declare v_ename emp.ename%type; begin select ename into v_ename from emp where empno=&no; dbms_output.put_line('name:'||v_ename); exception when no_data_found then dbms_output.put_line('没有该编号!...原创 2011-02-10 10:24:44 · 68 阅读 · 0 评论 -
oracle数据库备份
导出表 1、导出自己的表 exp userid=scott/tiger@sid tables=(emp) file=d:\e1.dmp 2、导出其他方案的表 exp userid=system/manager@sid tables=(scott.emp) file=d:\e2.dmp 3、导出表结构 exp userid=scott/tiger@sid tables=(emp) fil...原创 2011-02-10 09:52:04 · 72 阅读 · 0 评论 -
oracle函数
1、字符函数 lower(char);将char字符串转化为小写字母 upper(char);将char字符串转化为大写字母 length(char);返回字符串char的长度 substr(char,m,n);截取字符串char,从第m个字符开始,取n个字符,如果m是负数,代表从右边开始数。 concat(char1,char2);把char2连接到char1后面。或者用||来连接。 ...原创 2011-02-10 09:50:30 · 56 阅读 · 0 评论 -
oracle对象权限
每个表都是某个用户的表,默认只访问用户自己的表,如果用户想要访问别人的表,必须授权。sys用户默认拥有访问其他用户表的权限。在授权某个表的时候,需要表用户的窗口下授权,而不是sys管理员。对象授权语法:grant select on mytable to lisi。mytable为表名,lisi为用户名(可以用public代表所有用户)。select为权限名. grant insert on m...原创 2011-01-17 14:43:23 · 117 阅读 · 0 评论 -
oracle登录验证机制
修改普通用户密码,必须用sys超级管理用户登录; alter user scott identified by tiger; 数据库的三种验证机制: 1、操作系统验证(超级管理员,例如sys) 2、密码文件验证(超级管理员,例如sys) 3、数据库验证(普通用户) 要让oracle运行,至少启动两个服务,一个是监听服务,一个是oracle的实例服务。 linux下oracle的...原创 2011-01-17 14:46:15 · 90 阅读 · 0 评论 -
oracle帐户管理细节
create user abc identified by abc default tablespace users temporary tablespace temp quota 50M on users 在命令行中ed可以保存文本,保存关掉后在命令中/回车,可以执行文本的命令。 不可以在临时表空间控制限额; 删除用户 drop user 用户名 [cascade];...原创 2011-01-17 14:52:08 · 75 阅读 · 0 评论 -
oracle权限传递
系统权限传递,在系统用户授权的时候,如果user_sys_privs视图的ADM列为no的时候,那么该用户是不可以再把权限分配给别的用户,只有当yes的时候才能传递,那么要在授权的时候加上这样的一句话:with admin option。例如:grant alter any table to public with admin option。 对象权限是谁创建表谁授权;对象权限的传递是wit...原创 2011-01-17 14:54:02 · 71 阅读 · 0 评论 -
oracle角色管理
创建角色:create role myrole; 给角色授权:grant create session to myrole; grant create table to myrole; 创建用户:create user zhangsan identified by zhangsan; 给用户分配角色:grant myrole to zhangsan; 删除角色:drop role myr...原创 2011-01-17 14:55:12 · 70 阅读 · 0 评论 -
完全卸载oracle
1.停止所有与ORACLE相关的服务。 “控制面板 ” ->“管理工具” -> “计算机管理” ->“服务和应用程序” ->“服务”,找到所有与ORACLE有关的服务,停掉。 2. 使用OUI(Oracle Universal Installer)卸载Oracle软件。 “开始” ->“程序” ->“Oracle-OraDb110g_home1|Oracle insta...原创 2011-01-17 15:22:28 · 78 阅读 · 0 评论 -
oracle客户端连接服务端配置
一般只有一个文本文件供修改 tnsnames.ora修改格式如下 [自定义名称] = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = [主机IP])(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME ...原创 2011-01-25 16:01:18 · 147 阅读 · 0 评论 -
profile管理用户登录口令
创建profile管理用户口令 create profile lock_account limit failed_login_attempts 3 password_lock_time 2; create profile myprofile limit password_life_time 10 password_grace_time 2; 修改profile管理用户口令 alter us...原创 2011-02-10 09:43:06 · 191 阅读 · 0 评论 -
oracle同义词
创建同义词 针对某个用户创建同义词 create synonym 同义词名 for 需要被定义的名词; 针对全部用户创建同义词 create public synonym 同义词名 for 需要被定义的名词;...原创 2011-02-10 09:44:38 · 72 阅读 · 0 评论 -
oracle多行操作数据
多行插入数据 insert into 表名[(字段名)] select [(字段名)] from 表名; 修改某一个记录和另一条记录一样; update 表名 set (字段名1,字段名2,字段名3...)=(select 字段名1,字段名2,字段名3... from 表名 where ...)where.... 多行子查询可以用in关键字或者逻辑运算符加上all或any关键字....原创 2011-02-10 09:46:16 · 94 阅读 · 0 评论 -
java连接orace和处理事务
java中处理事务的时候,通过connection的来控制事务,步骤如下: 1、设置connection的setAutoCommit属性为false; 2、在catch模块中设置connection的方法rollback(); 3、在try模块中所有的语句执行完后,加上connection的commit()方法。 java连接oracle的两种方法: 1、odbc方法,在控制...原创 2011-02-10 09:47:58 · 83 阅读 · 0 评论 -
oracle函数
1、字符函数 lower(char);将char字符串转化为小写字母 upper(char);将char字符串转化为大写字母 length(char);返回字符串char的长度 substr(char,m,n);截取字符串char,从第m个字符开始,取n个字符,如果m是负数,代表从右边开始数。 concat(char1,char2);把char2连接到char1后面。或者用||来连接。 ...原创 2011-02-10 09:50:22 · 70 阅读 · 0 评论 -
oracle视图
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。 可以解决的问题有: 1,解决需要多张表联合查询的时候用视图。 2,只希望用户查询一部分数据用视图。 注意:视图不能加索引。 创建视图: create view 视图名 as select语句 [with read only] 创建或修改视图...原创 2011-02-10 10:25:15 · 70 阅读 · 0 评论