- 浏览: 440788 次
- 性别:
- 来自: 杭州
最新评论
-
陌路人丁:
SmallFish 写道同上,我也遇到了这个问题,目前还没解决 ...
Java类动态加载(一)——java源文件动态编译为class文件 -
陌路人丁:
冯程程 写道如果java源码中引用了第三方类后,动态编译会报软 ...
Java类动态加载(一)——java源文件动态编译为class文件 -
lvhejin:
Java设计模式源代码——自己看pdf写的 -
yunxi_2015:
不好用啊,查询失败
用Java解析手机号获取手机信息(归属地、Sim卡类型、移动或是联通、区号、邮编) -
zhouyicang:
我是拿来现成用的,非常感谢博主的代码,不过我给和我一样的人一个 ...
判断点与多边形的位置关系
文章列表
原文链接:http://www.examda.com/oracle/zonghe/20100805/092741666.html
[导读]Oracle是一种关系型数据库,在表中不可能以层次的关系存放数据,但是oracle提供了层次(树形)查询语句,使用树的遍历来获得层次关系的数据。 sql语法
select c ...
整体要求:
1、先查询出父资源库分类的所有资源库属性元数据
2、然后再查询出父资源库分类的所有子资源库分类
3、最后将子分类中没有而父分类中有的资源库属性元数据插入到子资源库分类中
declare
--定义可以利用的资源 ...
可能不是很多人知道 RAISE_APPLICATION_ERROR 的用途是什么,虽然从字面上已经猜到这个函数是干什么用的。平时用来测试的异常处理
我们都是通过dbms_output.put_line来输出异常信息,但是在实际的应用中,需要把异常信息返回给调用的客户端。
其实 RAISE_APPLICATION_ERROR 是将应用程序专有的错误从服务器端转达到客户端应用程序(其他机器上的SQLPLUS或者其他前台开发语言)
RAISE_APPLICATION_ERROR 的声明:
PROCEDURE RAISE_APPLICATION_ERROR( error_number_in IN N ...
数据库字典视图user_objects用于显示当前用户包含的所有对象。它不仅可以用于列出用户的表、视图、索引等,也可以用于列出用户的存储过程、函数、包。
--1、查询数据库中的视图、存储过程、函数
select object_name,created,status
from user_objects
where object_type in ('PROCEDURE','FUNCTION','VIEW')
--2、查看存储过程源代码
--当存储过程建立后,oracle将过程名、源代码机器执行代码存放到数据字典中。我们可以通过查询urser_source查看当前用户的所有存储过程 ...
--Oracle10g 开发函数
--1、建立不带参数的函数
create or replace function get_user
return varchar2
is
v_user varchar2(100);
begin
select username into v_user from user_users;
return v_user;
end;
--在sql中利用函数进行查询
select get_user from dual;
--2、建立带有输入参数的函数
create or replace function get_name(id in c ...
--在创建存储过程时,为参数传递变量和数据
create or replace procedure add_dept
(dno number,dname varchar2 default null,loc varchar2 default null)
is
begin
insert into dept values(dno,dname,loc);
exception
when dup_val_on_index then
raise_application_error(-2000,'部门号不能重复');
end;
--1、位置传递
--位置传递是指在调用存储过程时,按照参数 ...
--1、创建存储过程(无参数)
create or replace procedure out_time
is
begin
dbms_output.put_line(systimestamp);
end;
--调用存储过程
exec out_time;
call out_time();
--结果
24-11月-10 08.59.35.500000000 上午 +08:00
--2、创建存储过程(有参数,且显示指定为输入参数,如果不指定参数模式,默认为输入参数)
create or replace procedure update_comtype_name
(p ...
首先自己动手写一个批处理命令,也就是一个bat文件,用来将项目产生的文件备份到一个文件夹中。
步骤一:先新建一个txt文件,然后向txt文件中写入下面的内容。
@echo off
xcopy h:\txt\* h:\backup\temp_txt\ /s /e /h /d /c /y
rmdir /s/q h:\backup\txt
rename h:\backup\temp_txt txt
该段命令的作用就是将H盘的txt文件夹下的所有文件(包括子目录),备份到H盘的backup文件下。
步骤二:将其保存为bat格式文件
步骤三:点击 开始(即按下windows键)-> ...
--处理非预定义例外
--非预定义例外用于处理与预定义例外无关的oracle错误。
--使用预定义例外,只能处理21个oracle错误。而当开发的时候,可能会遇到其他的一些oracle错误
--比如:执行dml语句时,违反了约束规则
declare
e_integrity exception;
pragma exception_init(e_integrity,-12899);
begin
update communitytype t
set t.withdrawn = '132'
where t.community_type_id = 'ebook';
exception
...
Oracle提供了预定义例外、非预定义例外和自定义例外等三种例外类型,其中预定义例外用于常见的Oracle错误;非预定义例外则用于预定义例外所不能处理的错误;自定义例外用于处理与Oracle错误无关的其他情况
1、例外的格式
declare
v_name communitytype.name%type;
begin
select name into v_name
from communitytype
where community_type_id = 'ebook';
dbms_output.put_line(v_name);
--捕捉异常
exception
when t ...
首先介绍Oracle 9i新增加的一个系统自带的排序函数
1、按首字母排序
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值
SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
SCHINESE_PINYIN_M 按照拼音排序
oracle9i中新增了按照拼音、部首、笔画排序功能
用法示例:
拼音
SELECT * FROM TEAM ORDER BY NLSSORT(排序字段,'NLS_SORT = ...
在定义又表示必须要带有for update子句,用于在游标结果集数据上加行共享锁,以防止其他用户在相应行上执行dml操作;当select语句引用到多张表时,使用of子句可以确定哪些表要加锁,如果没有of子句,则会在select语句所引用的 ...
--使用游标
1)9i以前的使用方法,一次取一条数据
--1、显示游标
declare
--定义游标
cursor temp_cursor is
select t.name,t.english_name from communitytype t;
--where t.community_type_id = 'ebook';
--定义变量
v_name communitytype.name%type;
v_english_name communitytype.english_name%type;
begin
--打开游标
open temp_cursor;
--循环取数据 ...
--Oracle 10g复合数据类型pl/sql集合,集合又可以分为索引表、嵌套表、变长数组
--1、索引表(下标没有长度限制,且可以为负值)
--在9i前,定义索引表时,只能使用binary_integer和pls_integer作为下标的数据类型,
--但是在9i后,下标数据类型还可以使用varchar2
declare
type area_table_type is table of number
index by varchar2(10);
area_table area_table_type;
begin
area_table('北京'):=1;
area_table( ...
--1、查询出被锁的情况:
SELECT OBJECT_ID,SESSION_ID,SERIAL#, ORACLE_USERNAME,OS_USER_NAME,S.PROCESS
FROM V$LOCKED_OBJECT A, V$SESSION S
WHERE A.SESSION_ID=S.SID;
--2、解锁:
alter system kill session 'sid,serial#';
--解除所有被锁的记录
alter system kill session
SELECT SESSION_ID||','||SERIAL#
FROM V$LOCKED ...