摘要:
1.例子 struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* ... 阅读全文
摘要:
--创建用户 create user han identified by han default tablespace users Temporary TABLESPACE Temp; grant connect,resource,dba to han; //授予用户han开发人员的权利 --------------------对表的操作-------------------------- -... 阅读全文
摘要:
一、触发器简介 触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。然后,触发器的触发条件其实在你定义的时候就已经设定好了。这里面需要说明一下,触发器可以分为语句级触发器和行级触发器。详细的介绍可以参考网上的资料,简单的说就是语句级的触发器可以在某些语句执行前或执行后被触发。而行级触发器则是在定义的了触发的表中的行... 阅读全文
摘要:
一、介绍 视图是一张虚拟表,其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。(视图不是真实存在磁盘上的) 二、视图与表的区别 1、表需要占用磁盘空间,视图不需要 2、视图不能添加索引(所以查询速度略微慢点) 3、使用视图可以简化,复杂查询 4、视图... 阅读全文
摘要:
一、例外分类 oracle将例外分为预定义例外、非预定义例外和自定义例外三种。 1)、预定义例外用于处理常见的oracle错误。 2)、非预定义例外用于处理预定义例外不能处理的例外。 3)、自定义例外用于处理与oracle错误无关的其它情况。 下面通过一个小案例演示如果不处理例外看会出现什么情况? 编写一个存储过程,可接收雇员的编号,并显示该雇员的姓名。 sql代码如下: 复制代码 SET ... 阅读全文
摘要:
一、无返回值的存储过程 古人云:欲速则不达,为了让大家伙比较容易接受分页过程编写,我还是从简单到复杂,循序渐进的给大家讲解。首先是掌握最简单的存储过程,无返回值的存储过程。 案例:现有一张表book,表结构如下:书号、书名、出版社。 CREATE TABLE book( ID NUMBER(4), book_name VARCHAR2(30), publishing VAR... 阅读全文
摘要:
一、pl/sql的进阶--控制结构 在任何计算机语言(c,java,pascal)都有各种控制语句(条件语句,循环结构,顺序控制结构...),在pl/sql中也存在这样的控制结构。 在本部分学习完成后,希望大家达到: 1.使用各种if语句 2.使用循环语句 3.使用控制语句——goto和null(goto语句不推荐使用); 二、条件分支语句 pl/sql中提供了三种条件分支语句if—t... 阅读全文
摘要:
一、变量介绍 在编写pl/sql程序时,可以定义变量和常量;在pl/sql程序中包括有: 1)、标量类型(scalar) 2)、复合类型(composite) --用于操作单条记录 3)、参照类型(reference) --用于操作多条记录 4)、lob(large object) 二、标量(scalar)——常用类型 1)、在编写pl/sql块时,如果要使用变量,需在定义部分定义变量... 阅读全文
摘要:
包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成。 1)、我们可以使用create package命令来创建包,如: i、创建一个包sp_package ii、声明该包有一个过程update_sal iii、声明该包有一个函数annual_income --声明该包有一个存储过程和一个函数 阅读全文
摘要:
一、pl/sql developer开发工具 pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品。 二、pl/sql介绍 开发人员使用pl/sql编写应用模块时,不仅需要掌握sql语句的编写方法,还要掌握pl/sql语句及语法规则。pl/sql编程可以使用变量和逻辑控制语句,从而可以编写非常有用的功能模块。... 阅读全文
摘要:
存储过程用于执行特定的操作,当建立存储过程时,既可以指定输入参数(in),也可以指定输出参数(out),通过在过程中使用输入参数,可以将数据传递到执行部分;通过使用输出参数,可以将执行部分的数据传递到应用环境。在sqlplus中可以使用create procedure命令来建立过程。 实例如下: 1.请考虑编写一个存储过程,可以输入雇员名,新工资,用来修改雇员的工资 --根据雇员名去修改工资 ... 阅读全文
摘要:
函数用于返回特定的数据,当建立函数时,在函数头部必须包含return子句。而在函数体内必须包含return语句返回的数据。我们可以使用create function来建立函数。 1)、接下来通过一个案例来模拟函数的用法 复制代码 --输入雇员的姓名,返回该雇员的年薪 CREATE FUNCTION annual_incomec(uname VARCHAR2) RETU... 阅读全文
摘要:
一、pl/sql 是什么 pl/sql(procedural language/sql)是oracle在标准的sql语言上的扩展。 pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加强大。 二、为什么要学pl/sql 1.提高应用程序的运行性能 2.模块化的设计思想(分页的过程,订单的过程,转账的... 阅读全文
摘要:
一、介绍 这一部分我们主要看看oracle中如何管理权限和角色,权限和角色的区别在哪里。 当刚刚建立用户时,用户没有任何权限,也不能执行任何操作。如果要执行某种特定的数据库操作,则必须为其授予系统的权限;如果用户要访问其它方案的对象,则必须为其授予对象的权限。为了简化权限的管理,可以使用角色。这里我们会详细的介绍。 二、权限 权限是指执行特定类型sql命令或是访问其它方案对... 阅读全文
摘要:
一、介绍 角色就是相关权限的命令集合,使用角色的主要目的就是为了简化权限的管理。 假定有用户a,b,c为了让他们都拥有如下权限 1. 连接数据库 2. 在scott.emp表上select,insert,update。 如果采用直接授权操作,则需要进行12次授权。 因为要进行12次授权操作,所以比较麻烦喔!怎么办? 如果我们采用角色就可以简化: 首先将creat session,select o... 阅读全文
摘要:
一、维护数据的完整性 数据的完整性用于确保数据库数据遵从一定的商业和逻辑规则,在oracle中,数据完整性可以使用约束、触发器、应用程序(过程、函数)三种方法来实现,在这三种方法中,因为约束易于维护,并且具有最好的性能,所以作为维护数据完整性的首选。 二、约束 约束用于确保数据库数据满足特定的商业规则。在oracle中,约束包括:not null、 unique, primary... 阅读全文
摘要:
一、管理索引-原理介绍 索引是用于加速数据存取的数据对象。合理的使用索引可以大大降低i/o次数,从而提高数据访问性能。索引有很多种我们主要介绍常用的几种: 为什么添加了索引后,会加快查询速度呢? 二、创建索引 1)、单列索引 单列索引是基于单个列所建立的索引 语法:create index 索引名 on 表名(列名); eg、create index nameI... 阅读全文
摘要:
一、概念 数据字典是oracle数据库中最重要的组成部分,它提供了数据库的一些系统信息。 动态性能视图记载了例程启动后的相关信息。 二、数据字典 1)、数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者为sys用户。 2)、用户只能在数据字典上执行查询操作(select语句),而其维护和修改是由系统自动完成的。 3)、这里我们谈谈数据字典的组成:... 阅读全文
摘要:
一、概念 表空间是数据库的逻辑组成部分。 从物理上讲,数据库数据存放在数据文件中; 从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或多个数据文件组成。 二、数据库的逻辑结构 oracle中逻辑结构包括表空间、段、区和块。 说明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而区又是由oracle块构成的这样的一种结构,可以提高数据库的效率。 ... 阅读全文
摘要:
一、数据库管理员 每个oracle数据库应该至少有一个数据库管理员(dba),对于一个小的数据库,一个dba就够了,但是对于一个大的数据库可能需要多个dba分担不同的管理职责。那么一个数据库管理员的主要工作是什么呢: 1.安装和升级oracle 数据库 2.建库,表空间,表,视图,索引… 3.制定并实施备份和恢复计划 4.数据库权限管理,调优,故障排除 5.对于高级dba,要求能参与项目开发,会... 阅读全文