`
JAVA天地
  • 浏览: 674156 次
  • 性别: Icon_minigender_1
  • 来自: 太原
文章分类
社区版块
存档分类
最新评论

PL/SQL入门例子

阅读更多

转贴地址:http://apple.upc.edu.cn/Article/ShowArticle.asp?ArticleID=493

PL/SQL入门例子

=================================================
基本操作
=================================================

SQL>set serveroutput on; --显示输出

-------------------------------------------------
--LOOP循环
declare
i number:=1;
begin
loop
i:=i+1;
exit when i=100;
dbms_output.put_line(i);
end loop;

end;

-------------------------------------------------
-- FOR LOOP循环50次
declare
i number :=10;
begin
for idx in 1..50 loop --次数:50-1+1=50
dbms_output.put_line(i);
end loop;
end;

-------------------------------------------------
-- WHILE LOOP循环
declare
i number :=100;
j number :=1;
begin
while(j<i) loop
dbms_output.put_line(j);
j:=j+1;
end loop;
end;

-------------------------------------------------
--IF语句
declare
i number :=40;
j number :=10;
begin
if(i<j) then
dbms_output.put_line('OK');
elsif (i=j) then
dbms_output.put_line('OK1');
else
dbms_output.put_line('OK2');
end if;
end;


=================================================
游标操作
=================================================

--显示游标
declare
--建立显示游标
cursor csr_1 is
select name from stu1;
cursor csr_2 is
select id from stu1;
--定义变量
str varchar2(10);
str2 varchar2(10);
begin
--打开游标
open csr_1;
open csr_2;
--附值
fetch csr_1 into str;
fetch csr_2 into str2;
--输出
dbms_output.put_line(str);
dbms_output.put_line(str2);
end;

-------------------------------------------------
--取表某列全部记录(适合控制)
declare
--建立显示游标
cursor csr_1 is
select name,note from stu1;
--定义变量
str varchar2(10);
str2 varchar2(10);
begin
--打开游标
open csr_1;
loop
fetch csr_1 into str,str2;
exit when csr_1%notfound; --到达记录尾
dbms_output.put_line(str || str2);
end loop;

--关闭游标
close csr_1;
end;

-------------------------------------------------
--FOR LOOP查询表全部记录(简单--打开、附值、关闭隐式完成)
declare
--建立显示游标
cursor csr_1 is
select name,note from stu1;
begin
for idx in csr_1 loop
dbms_output.put_line(idx.name || idx.note);
end loop;
end;


-------------------------------------------------
--利用游标复制表(效率不高)
declare
cursor csr_1 is
select ks_xm,ks_zkz,bk_cj from ahzk_all_cj;
i number;
begin
for idx in csr_1 loop
insert into tmp values(idx.ks_xm,idx.ks_zkz,idx.bk_cj);
i:=csr_1%rowcount; --获取当前记录数
if(i mod 1000=0) then
dbms_output.put_line(i);
commit;
end if;
end loop;
commit;
end;

--附:高效复制表
declare

begin
insert into tmp
select ks_xm,ks_zkz,bk_cj from ahzk_all_cj;
if(sql%found) then
dbms_output.put_line('插入' || sql%rowcount || '行记录');
end if;
commit;
end;
-------------------------------------------------
分享到:
评论

相关推荐

    PL/SQL入门到精通书的源代码

    通过这份“PL/SQL入门到精通书的源代码”,你可以看到实际应用这些概念的例子,加深理解,并通过实践来提高技能。每一个源代码文件都是一个精心设计的练习,涵盖了上述知识点的各个方面。对于想要系统学习PL/SQL的...

    Oracle PL/SQL程序设计(第5版)(上下册)

    - **性能提升技术**:提供了一些具体的例子和最佳实践,展示了如何利用Oracle 11g的新特性来进一步优化PL/SQL程序的性能。 #### 八、实战案例分析 - **案例研究**:通过实际案例来演示如何综合运用前面章节所学的...

    oracle9ipl/sql从入门到精通

    Oracle 9i PL/SQL是Oracle数据库系统中的一个核心组件,它是编程和...通过阅读和实践书中的例子,读者不仅可以掌握PL/SQL的基本语法,还能了解到如何在实际项目中有效地运用它,从而成为Oracle数据库的熟练开发者。

    PL/SQL存储过程语法(注释详细,例子多)

    PL/SQL存储过程语法(注释详细,例子多,注释十分清楚,入门良册) PL/SQL存储过程语法(注释详细,例子多,注释十分清楚,入门良册)

    Oracle PL/SQL入门案例实践

    在"Oracle PL/SQL入门案例实践"这个教程中,我们将通过一个具体的案例学习如何运用这些概念。 案例背景是模拟一个公司的员工管理和薪资系统,涉及两张表——emp表(员工信息)和dept表(部门信息)。我们需要完成...

    PL-SQL用户指南与参考(译)

    ### PL-SQL用户指南与参考(译) #### 第一章:PL/SQL一览 ##### 一、理解PL/SQL的主要特性 **1、块结构** PL/SQL使用块结构来组织程序,每个块可以独立运行,也可以组合在一起形成更复杂的程序结构。一个基本的...

    PLSQL教程-从入门到精通

    PL/SQL(Procedure Language for SQL)是一种专门为Oracle数据库设计的过程化语言,它结合了SQL的数据操作能力与传统过程化语言的控制结构,使得开发者能够在数据库内部编写高效、复杂的应用程序。 ##### 1.2 SQL与...

    Oracle PLSQL入门知识.doc

    Oracle PL/SQL是一种强大的编程语言,它将关系数据库管理系统的SQL查询能力与过程化编程语言的功能结合在一起。在Oracle数据库环境中,PL/SQL是开发存储过程、函数、包和触发器的主要工具,使得数据库管理更加高效和...

    oracle/plsql教程全解

    Oracle PL/SQL教程全解是一份全面覆盖Oracle数据库和PL/SQL编程的资源,适合对数据库技术感兴趣的初学者和进阶者。Oracle是全球广泛使用的数据库管理系统,而PL/SQL则是Oracle特有的结构化查询语言,用于编写存储...

    数据库简单练习

    描述中提及的PL/SQL练习对于初学者来说是很好的入门途径,因为它们可以帮助理解如何在Oracle环境中编写和执行SQL语句。 在提供的部分内容中,有两个主要的知识点: 1. **触发器(Triggers)**: 触发器是一种...

    Oracle Database 10g SQL.zip

    此书旨在帮助用户快速查询和掌握在实际工作中可能遇到的各种SQL问题,被评定为3级(5级)的速查使用等级,意味着它既适合初学者入门,也适用于有经验的开发者作为参考。 在Oracle Database 10g SQL.chm文件中,我们...

    sqlload入门简单教程

    这个“sqlload入门简单教程”旨在帮助初学者掌握如何使用SQL*Loader进行数据加载操作。 首先,我们需要理解SQL*Loader的工作原理。它从外部文件(如CSV、TXT或DBF)读取数据,然后根据控制文件的指示将这些数据插入...

    oracle 11g从入门到精通

    本书名为《oracle 11g从入门到精通》,旨在引导读者从零基础开始学习Oracle数据库的各种操作,并深入理解和应用PL/SQL编程,创建和维护数据库对象如函数、触发器等。 在介绍Oracle 11g的基础知识时,首先会讲解...

    oracle详细教程

    本教程“Oracle8i/9i数据库基础”由赵元杰编写,旨在为学习者提供一个全面而简洁的Oracle入门指南,涵盖Oracle SQL*PLUS基础和PL/SQL程序设计。 在Oracle SQL*PLUS基础部分,教程首先介绍了关系数据库系统的基本...

    ORACLE_PlSql-甲骨文学习笔记

    ### ORACLE_PlSql-甲骨文学习笔记 #### 一、创建表 ##### 创建表一 ```sql ...以上内容涵盖了 Oracle PL/SQL 的基础知识和技术要点,可以帮助初学者快速入门并掌握如何使用 PL/SQL 进行数据库编程。

    嵌入SQL资料

    5.1 一个简单的入门例子89 5.2 宿主变量91 5.3 嵌入SQL的处理过程96 5.4 动态SQL语言96 5.4.1 SQLDA97 第六节MICROSOFT SQL SERVER7嵌入式SQL语言105 6.1 一个嵌入SQL语言的简单例子105 6.2 嵌入SQL的处理...

    Datenbanken und SQL - Einf&#252;hrung.ppt

    【SQL相关资料】这篇文档是关于数据库和SQL的入门介绍,涵盖了从基本概念到深入技术的多个方面。它由德国多特蒙德工业大学的Klaus Rüdiger Philipp教授讲解,分为十个部分,旨在帮助读者理解和掌握数据库系统、数据...

Global site tag (gtag.js) - Google Analytics