易截截图软件、单文件、免安装、纯绿色、仅160KB

北大青鸟oracle学习笔记23 24

子程序 命名的pl/sql块
create procedure 过程名 [参数1 in|out|in out…]
    局部变量声明
    执行语句
in
out
in out
    过程名(参数里表); create or replace
procedure add123 as
i integer;
j integer;
begin
i:=1;
j:=2;
dbms_output.put_line(i+j);
end;
execute add123;
注意这里创建过程和执行不能放在一起,否在execute会随过程定义写入过程中,sql develop中测试如此,不知道为什么。
CREATE OR REPLACE
PROCEDURE QUERYSTUNAME
( stuid STUDENT.STU_ID%TYPE)
AS
sname student.stu_name%type;
ssex student.stu_sex%type;
BEGIN
select stu_name,stu_sex into sname,ssex from student where stu_id = stuid;
dbms_output.put_line(sname||ssex);
EXCEPTION
when No_Data_Found then
dbms_output.put_line('no data found');
when Too_Many_Rows then
dbms_output.put_line('to many rows');
when others then
dbms_output.put_line('other error');
END QUERYSTUNAME;

execute querystuname(1); 函数
create function 函数名 [参数列表]
    局部变量声明
    可执行语句
end;
两种访问方式
sql语句
仅接受in参数,返回值类型不能带精度。
CREATE OR REPLACE
FUNCTION GETNAME(stuid varchar)
RETURN VARCHAR AS
stuname student.stu_name%type;
BEGIN
select stu_name into stuname from student where stu_id = stuid;
RETURN stuname;
EXCEPTION
when No_Data_Found then
dbms_output.put_line('no data found');
when Too_Many_Rows then
dbms_output.put_line('to many rows');
when others then
dbms_output.put_line('other error');
END GETNAME;

declare
begin
dbms_output.put_line(getname(1));
end;

过程
函数
作为pl/sql语句执行
作为表达式一部分调用
在规格说明中不包含return子句
必须在规格说明中包含return子句
可以返回任何值
返回单值
可以包含return语句,但是不能用于返回值
必须包含return语句


相关文档:

Oracle Connect By用法

Oracle Connect By用法
 
oracle中的select语句可以用START WITH...CONNECT BY PRIOR子句实现递归查询,connect by 是结构化查询中用到的,其基本语法是:
select ... from <TableName>
where <Conditional-1>
start with <Conditional-2>
connect by <Conditional-3>
;
<Conditi ......

ORACLE带参全连接

    
  select * from (
  select cw2.NO WHOLENO,sp1.ARGUMENTNAME TYPENAME,sp2.ARGUMENTNAME BRANDNAME,sp3.ARGUMENTNAME STYLENAME,sp4.ARGUMENTNAME DEPART,so.OPERATORNAME USERNAME
  from COM_WHOLE_INFO cw2,SYS_OPERATOR so, SYS_PUBLICARGUMENT sp1, SYS_PUBLICARGUMEN ......

ORACLE 10G for RHEL AS 4 安装(完整版)

ORACLE 10G for RHEL AS 4 安装
验证安装:检查ORACLE所需的程序是否安装均已安装(或更高版本)
compat-db-4.1.25-9.i386.rpm
compat-gcc-32-3.2.3-47.3.i386.rpm
compat-gcc-32-c++-3.2.3-47.3.i386.rpm
compat-libstdc++-33-3.2.3-47.3.i386.rpm
compat-oracle-rhel4-1.0-5.i386.rpm
gcc-3.4.3-9.EL4.i386.rpm
gli ......

oracle监听加密 更安全

很多人都知道,Oracle的监听器一直存在着一个安全隐患,假如不设置安全措施,那么能够访问的用户就可以远程关闭监听器。
相关示例:
D:\>lsnrctl stop eygle
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 28-11月-2007 10:02:40
Copyright (c) 1991, 2006, Oracle. All rights reserved.
......

Oracle千万条记录插入与查询小结

 
最近做了个项目,实现对存在千万条记录的库表进行插入、查询操作。原以为对数据库的插入、查询是件很容易的事,可不知当数据达到百万甚至千万条级别的时候,这一切似乎变得相当困难。几经折腾,总算完成了任务。
  1、避免使用Hibernate框架
  Hibernate用起来虽然方便,但对于海量数据的操作显得力不从心。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号