PL/SQL开发
文章平均质量分 91
总结了当Oracle开发以来学习和工作当中遇到的知识,希望对后起之秀有所帮助。
罗汉爷
每一个不曾起舞的日子,都是对生命的辜负!
展开
-
oracle trim函数用法详解
今天看oracle文档,发现trim函数的用法不仅仅局限于去除字符串的空格!特翻阅官方解释,并最如下实验,希望大家共同学习!1. 语法解释首先看一下trim函数的语法图:http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions199.htm 语法描述如下: TRIM([ { { LEADING | ...原创 2012-07-15 16:20:58 · 37886 阅读 · 2 评论 -
oracle char与varchar2的比较与使用
最近工作处理了一些有关oracle字符数据类型的问题,特做如下整理,希望和大家共同学习:一、首先对char与varchar2类型做下比较:(以下部分内容转自华夏名网)区别: 1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2 (20)则只占原创 2012-07-18 14:56:03 · 3859 阅读 · 0 评论 -
oracle连接查询详解
连接查询是数据库查询语句中使用频率很高的查询方式,下面根据Oracle提供的官方文档学习一下连接查询:一 Equijoins 等值连接: 等值连接是条件连接在连接运算符为“=”号时的特例。(相对于非等值连接,如:between...and条件) 它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组。e.g.:SQL> select e.emplo原创 2012-07-20 23:48:39 · 13099 阅读 · 1 评论 -
oracle savepoint介绍
SAVEPOINT 由官方文档提供http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_10001.htm#SQLRF017011. 目的:Use the SAVEPOINT statement to identify a point in a transaction to which you can later原创 2012-07-22 11:51:21 · 1743 阅读 · 0 评论 -
oracle 索引详解
一.索引介绍 1.1 索引的创建语法: CREATE UNIUQE | BITMAP INDEX . ON . ( | ASC | DESC, | ASC | DESC,...) TABLESPACE STORAGE LOGGING | NOLOGGING COMPUTE转载 2012-07-23 16:33:04 · 2004 阅读 · 0 评论 -
了解oracle自治事务
1、什么是Oracle自治事务在官方文档中,是这样的定义的“Autonomous transactions are independent transactions that can be called from within another transaction.”就是说它被一个事务调用的事务,但它独立于它的父事务提交或回滚。下面看一个例子首先创建一张测试表 MIK原创 2012-07-30 19:53:50 · 3493 阅读 · 0 评论 -
oracle闪回表介绍
FLASHBACK TABLE目的:1. 使用闪回表语句恢复表到出现人为或应用错误事件之前的状态。2. 可以闪回到过去多长时间取决于系统中undo数据量的大小。3. 并且oracle数据库无法恢复通过DDL语句修改了结构的表。 注:oracle强烈建议设置UNDO_MANAGEMENT为AUTO(自动管理回滚数据)。另外,设置UNDO_RETENTION (回滚数据的保留时翻译 2012-08-02 19:32:13 · 8802 阅读 · 0 评论 -
Oracle中加密PL/SQL代码
下面不才根据oracle官方文档讲解一下如何加密PL/SQL代码,希望大家共同学习:主要内容包含以下三块:What is Obfuscation?Obfuscating PL/SQL Code With the wrap UtilityObfuscating PL/QL Code With DBMS_DDL Subprograms 一、什么叫加密(二进制原创 2012-08-08 15:11:15 · 7081 阅读 · 0 评论 -
学习oracle约束
管理数据完整性一 学习目标 1.实现数据完整性约束 2.管理完整性约束 3.从数据字典中获取约束信息二 保证数据完整性的方法 1.应用程序代码控制 2.触发器控制 3.声明完整性约束三 约束的类型 (见图) 1.not null (不能为空) 2.unique (值必须唯一)原创 2012-08-18 22:21:12 · 2895 阅读 · 1 评论 -
Oracle用户、权限、角色管理
Oracle 权限设置一、权限分类:系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 二、系统权限管理:1、系统权限分类:DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数转载 2012-08-19 20:03:19 · 1625 阅读 · 0 评论 -
oracle角色管理
最近学习oracle角色管理,遂整理一下内容:一 学习目标 1.创建和修改角色 2.控制角色的可用性 3.移除角色 4.使用预定义角色 5.通过数据字典查询角色信息二 角色的概念和特性 1.什么是角色? 角色就是相关权限的命令集合,使用角色的主要目的就是为了简化权限的管理。 2.角色的原创 2012-08-22 23:29:46 · 5409 阅读 · 2 评论 -
Oracle ref cursor使用
Oracle 系列:REF Cursor在上文 Oracle 系列:Cursor (参见:http://blog.csdn.net/qfs_v/archive/2008/05/06/2404794.aspx)中 提到个思考:怎样让游标作为参数传递? 解决这个问题就需要用到 REF Cursor 。1,什么是 REF游标 ? 动态关联结果集的临时对象。即在运行的时候动态决定执行查翻译 2012-08-25 22:57:28 · 17310 阅读 · 3 评论 -
Oracle 物化视图介绍
一. 物化视图概述Oracle的物化视图是包括一个查询结果的数据库对像,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。物化视图存储基于远程表的数据,也可以称为快照。 物化视图可以用于预先计算并保存表连接或聚集等耗时较多的操作的结果,这样,在执行查询时,就可以避免进行这些耗时的操作,而从快速的得到结果。物化视图有很多方面和索引很相似:使用物化视图的目的是转载 2012-09-24 23:57:27 · 3395 阅读 · 0 评论 -
ORACLE触发器详解
本文对原文做了格式和目录调整方便阅读。文章总结的很全面,感谢原作的辛勤付出!!!原文链接:http://www.cnblogs.com/huyong/archive/2011/04/27/2030466.html#!comments--------------------------------------------------------------------------------...转载 2012-09-27 10:00:56 · 430653 阅读 · 53 评论 -
Oracle集合操作符union、union all、intersect和minus
废话少说直奔主题:如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字。union(或称为联合)的作用是将多个结果合并在一起显示出来。union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。1. union:对两个结果集原创 2012-10-14 20:02:49 · 4742 阅读 · 0 评论 -
Oracle 记录类型介绍
注:以下内容来源于网络。一,什么是记录(Record)? 由单行多列的标量构成的复合结构。可以看做是一种用户自定义数据类型。组成类似于多维数组。将一个或多个标量封装成一个对象进行操作。是一种临时复合对象类型。 记录可以直接赋值。RECORD1 :=RECORD2; 记录不可以整体比较. 记录不可以整体判断为空。 二,%ROWTYPE和记录(Record)?原创 2012-10-22 11:28:09 · 6665 阅读 · 1 评论 -
Oracle 集合类型介绍
注:以下内容整理自网络。---------------------------------------------------集合类型 1. 使用条件: a. 单行单列的数据,使用标量变量 。 b. 单行多列数据,使用记录 [ 详细讲解请见: 点击打开链接 ] c. 单列多行数据,使用集合 *集合:类似于编程语言中数组也就原创 2012-10-22 13:21:51 · 17560 阅读 · 0 评论 -
Oracle Bulk Binding
说明:以下内容整理自网络-----------------------------------------1. 通常在SQL语句中给PL/SQL变量赋值叫做绑定(Binding),一次绑定一个完整的集合称为批量绑定(Bulk Binding)。2. 批量绑定(Bulk binds)可以通过减少在PL/SQL和SQL引擎之间的上下文切换(context switches )提高了性能.原创 2012-11-06 11:14:04 · 2730 阅读 · 0 评论 -
Sql cookbook学习笔记
以下是笔者在看cookbook时做的实验笔记,由于是PDF版,光看还是不行滴!(持续更新)-------------------------------------------------------第六章 使用字符串--6.7 提取姓名的大写首字母缩写SELECT replace( translate( REPLACE('Dylan Xu', ' ',原创 2012-11-23 10:19:33 · 2337 阅读 · 0 评论 -
Oracle TYPE OBJECT详解
======================================================最近在自学PL/SQL高级编程,了解到对象类型(OBJECT TYPE)。特意搜索了一下10G官方文档,下面不才基于此进行拓展:=======================================================1. 介绍Object-o原创 2012-12-25 22:36:31 · 25321 阅读 · 0 评论 -
Oracle 11g之不可见的索引
以下内容摘自OTN------------------------您常常感到疑惑,索引是否真的有利于用户的查询?它可能有利于一个查询,但会影响 10 个其他查询。索引肯定会对 INSERT 语句造成负面影响,也会执行潜在的删除和更新操作,这取决于WHERE 条件是否在索引中包括该列。一个相关的问题是,使用索引时,如果该索引被删除,会对查询性能造成什么影响?当然,您可以删除索引并查看对查原创 2013-04-10 09:49:52 · 4297 阅读 · 0 评论 -
Oracle sql loader 使用案例
sql loder, 例子原创 2013-07-06 20:26:32 · 1883 阅读 · 0 评论 -
Oracle代码封装工具和DBMS_DDL包的使用
The WRAP Utility and the DBMS_DDL PackageOn occasion it is necessary to hide (obfuscate) your PL/SQL source code. Traditionally this has been done using the WRAP utility, but Oracle 10g Release 2 al转载 2013-07-13 09:15:09 · 2383 阅读 · 0 评论 -
oracle sqlplus命令详解(官方示例)
以为内容选自Oracle官方文档:----------------------------------------------------------------------------------------------------1、glogin.sql常用脚本(配置sqlplus command line)-- To change the SQL*Plus prompt to d原创 2014-02-12 22:13:06 · 21053 阅读 · 0 评论 -
细说Oracle中NULL值
1、NULL是什么?NULL表示UNKNOW(未知),其不代表任何值。例如一行中某列没有任何值即为NULL。ORACLE允许任何一种数据类型的字段为空,除了以下两种情况:1)主键字段(primary key),2)定义时已经加了NOT NULL限制条件的字段2、NULL有什么用?1)NULL可用于条件判断: SELECT * FROM EMP WHERE CO原创 2014-06-19 23:19:35 · 3038 阅读 · 0 评论 -
ORACLE用户权限管理
参考整理自:http://docs.oracle.com/cd/B19306_01/network.102/b14266/admusers.htm#i1006856只挑干货讲!!!一 用户管理1、创建用户create user dylanidentified by 123default tablespace users --指定表空间quota 100m on use原创 2014-12-26 00:25:49 · 4601 阅读 · 0 评论 -
ORACLE FORALL介绍
FORALL原创 2013-07-07 15:41:09 · 7760 阅读 · 0 评论 -
Oracle Autonomous Transactions(自治事务)
oracle 自治事务翻译 2013-07-16 13:42:51 · 2781 阅读 · 2 评论 -
An Introduction to ANYDATA
以下内容来自Oracle FAQ writen By Kevin,关于ANYDATA类型在项目中的应用。My newest project needed to create a record keeping component that would keep track of balancing results over time. Sounded good, meant my custo翻译 2013-07-23 08:17:09 · 2115 阅读 · 1 评论 -
Working with Dates in PL/SQL(PL/SQL中使用日期)
Working with Dates in PL/SQLBy Steven Feuerstein 史蒂芬.佛伊尔斯坦 The previous articles in this introductory PL/SQL series focused on working with strings and numbers in PL/SQL-based applications. Wit翻译 2013-08-18 00:54:54 · 2130 阅读 · 0 评论 -
Working with Numbers in PL/SQL(在PL/SQL中使用数字)
This article gives you all the information you need in order to begin working with numbers in your PL/SQL programs.Numbers in PL/SQLPL/SQL offers a variety of numeric datatypes to suit different p翻译 2013-08-19 00:39:56 · 2455 阅读 · 0 评论 -
Working with Strings(使用Oracle字符串)
Working with StringsBy Steven Feuerstein Part 3 in a series of articles on understanding and using PL/SQLEvery application needs data. That seems rather obvious, doesn’t it? An application is翻译 2013-08-20 01:26:45 · 2366 阅读 · 0 评论 -
使用UTL_HTTP包获取网页内容
UTL_HTTP 包提供了容易的方式通过HTTP协议获取网页内容,下面结合几个例子介绍一下:----------------------------------------------------------------------------------------1、小网页内容获取( 1.1 创建函数p,供输出获取到的网页数据使用:create or replace pr原创 2013-11-30 22:57:35 · 6071 阅读 · 0 评论 -
oracle authid current_user详解
在编写PLSQL程序时,对于授权的考虑很重要。ORACLE PLSQL中提供两种授权选择:--AUTHID DEFINER (定义者权限):指编译存储对象的所有者。也是默认权限模式。注意:此模式会disable 角色授权。--AUTHID CURRENT_USER(调用者权限):指拥有当前会话权限的模式,这可能和当前登录用户相同或不同(alter session set current_s原创 2013-12-02 11:24:14 · 14025 阅读 · 0 评论 -
使用 Oracle PL/SQL NOCOPY 提示
参考文献: official document: http://docs.oracle.com/cd/B19306_01/appdev.102/b14261/tuning.htm#LNPLS01208 oracle nocopy hint tips: http://www.dba-oracle.com/plsql/t_plsql_nocopy_hint.htm原创 2013-12-03 14:21:35 · 3975 阅读 · 0 评论 -
oracle 游标变量ref cursor详解
1、强类型游标:CREATE OR REPLACE PACKAGE strongly_typed ISTYPE return_cur IS REF CURSOR RETURN all_tables%ROWTYPE;PROCEDURE child(p_return_rec OUT return_cur);PROCEDURE parent(p_NumRecs PLS_INTEGER);原创 2013-12-04 15:15:36 · 36619 阅读 · 0 评论 -
oracle FGAC(细粒度访问控制)介绍
在ORACLE中,RLS有时也叫做虚拟私有数据库(VPD)或者细粒度访问控制(FGAC)。RLS由8i引进,利用这一特性我们可以对表定义安全策略(并且指明对表的操作类型),实现对用户可以看到或者修改的数据进行限制。这个功能大部分通过内置包DBMS_RLS实现。下面通过一个实例说明,详细情况请查阅官方文档:-----------------------------------------原创 2014-01-02 14:32:55 · 5342 阅读 · 0 评论 -
Encrypt or Decrypt sensitive data using PLSQL - DBMS_CRYPTO
Oracle 10g introduced Transparent Data Encryption, which is about storing data physically as encrypted in data files. The users always create/retrieve data as plain text. When the data is created, use翻译 2014-01-03 15:07:58 · 2562 阅读 · 0 评论 -
oracle goto语句介绍
以下内容来自oracle plsql user guide.-------------------------------------------------------一 定义: The Oracle PL/SQL GOTO statement is a sequential control structure available in Oracle. The GOTO原创 2014-02-10 22:35:00 · 22883 阅读 · 0 评论 -
Oracle 分析函数详解(Analytic Functions)--概念部分
一、概念介绍: Analytic functions compute an aggregate value based on a group of rows. They differ from aggregate functions in that they return multiple rows for each group. The group of rows is翻译 2014-02-25 16:41:18 · 3654 阅读 · 0 评论