oracle中pl/sql编程(四):

补充一下上次博客的一些知识点:
for循环:(用的不多,作了解)



基本结构:
begin 
  for i in reverse 1...10 loop
  insert into users values(i,'张三');
  end loop;
end;


控制变量i,在隐含中就在不停的增加


oracle中pl/sql编程(四):


下面的案例所有的表都需要提前创建好
--案例:无返回值的存储过程
编写一个过程,可以向book表添加书,要求通过java程序调用该过程


create or replace procedure sp_pro9(spBookId in number,spBookName in varchar2,spPublisher in varchar2) is
begin
insert into book values(spBookId,spBookName,spPublisher);
end;


java程序:
package javastudy;


//无返回值的存储过程
import java.sql.*;
public class Testit1 {


public static void main(String[] args) {
 
        try {
         //加载驱动程序
        Class.forName("oracle.jdbc.driver.OracleDriver");
        //得到链接
        Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","lh621366");
        CallableStatement cs = conn.prepareCall("{call sp_pro10(?,?)}");//这里不支持exec这种调用模式
        cs.setInt(1, 7788);
        cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);//这里的类型取决于上面第二个问号值的类型,暂时给第二个问号传递一个输出参数
        
        //创建CallableStatement
        CallableStatement cs = conn.prepareCall("{call sp_pro9(?,?,?)}");
        //给?赋值
        cs.setInt(1, 10);
        cs.setString(2, "大卫");
        cs.setString(3, "中华人民出版社");
        //执行一下语句
        cs.execute();
        conn.close();
        cs.close();

} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}


}


--案例:有返回值的存储过程
编写一个过程,可以输入雇员的编号,返回该雇员的姓名


create or replace procedure sp_pro10(spno in number,spName out varchar2) is
begin
select ename into spName from emp where spno=empno;
end;




对应的java程序:
package javastudy;


//无返回值的存储过程
import java.sql.*;
public class Testit1 {


public static void main(String[] args) {
 
        try {
         //加载驱动程序
        Class.forName("oracle.jdbc.driver.OracleDriver");
        //得到链接
        Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","lh621366");
        CallableStatement cs = conn.prepareCall("{call sp_pro10(?,?)}");//这里不支持exec这种调用模式
        cs.setInt(1, 7788);
        cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);//这里的类型取决于上面第二个问号值的类型,暂时给第二个问号传递一个输出参数
    //执行一下语句
        cs.execute();
        //根据序号得到名字
        String name = cs.getString(2);
        //输出名字
        System.out.println("7788序号所对应的名字为:"+name);
        //关闭资源
        conn.close();
        cs.close();

} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}


}


        








--案例:返回值为结果集的存储过程:



编写一个过程,输入部门号,返回该部门所有雇员信息


--分两步,先创建包,然后创建存储过程


--创建包
create or replace package testpackage as
type test_cursor is ref cursor;
end testpackage;


--再来创建存储过程
create or replace procedure sp_pro11(spno in number,sp_cursor out testpackage.test_cursor) is
begin
open sp_cursor for select * from emp where deptno=spno;
end;


对应的java程序:
package javastudy;


import java.sql.*;


public class Test2 {


public static void main(String[] args) {


try {
// 加载驱动程序
Class.forName("oracle.jdbc.driver.OracleDriver");
// 得到链接
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "lh621366");
CallableStatement cs = conn.prepareCall("{call sp_pro11(?,?)}");// 这里不支持exec这种调用模式
            cs.setInt(1, 10);
            cs.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
            cs.execute();
            ResultSet rs = (ResultSet) cs.getObject(2);
            while(rs.next())
            {
            System.out.println("用户名为:"+rs.getString(2));
            }
            conn.close();
            cs.close();
} catch (Exception e) {


}


}


}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: OraclePL/SQL是两个不同的东西。Oracle是一种关系型数据库管理系统,而PL/SQLOracle数据库编程语言。 要下载和安装Oracle数据库,您需要访问Oracle官方网站,选择适合您操作系统的版本,然后按照安装向导进行操作。安装过程可能会涉及到一些配置和设置,需要仔细阅读安装向导的说明。 要下载和安装PL/SQL,您需要先安装Oracle数据库,然后在Oracle数据库安装PL/SQL开发工具。Oracle提供了多种PL/SQL开发工具,包括Oracle SQL Developer、Oracle Developer Suite等。您可以根据自己的需求选择合适的工具进行安装和配置。 ### 回答2: Oracle是一个广泛使用的关系型数据库管理系统,它可以通过PL/SQL编程实现高度的数据处理和管理。本文将介绍如何下载和安装OraclePL/SQL。 1. Oracle数据库安装 (1)首先,我们需要从Oracle官网(https://www.oracle.com/)下载Oracle数据库软件,选择相应的版本(如Oracle Database 12c),然后选择所需的操作系统(Windows、Linux等),接着下载安装文件。 (2)在下载完成之后,打开文件并运行安装向导,按照提示完成安装。 (3)在安装过程,您将需要创建一个Oracle数据库管理员账户(也被称为“sys”用户)和一个普通用户账户(也被称为“hr”用户),并分别设置它们的密码。此外,您还将需要指定Oracle数据库安装路径和相关参数配置。 (4)完成安装后,您将能够访问Oracle数据库。 2. PL/SQL安装 (1)要安装PL/SQL,首先需要下载并安装Oracle SQL Developer(也是从Oracle官网获得),这是一个用于管理数据库和编写SQLPL/SQL代码的强大工具。 (2)在下载和安装完成SQL Developer后,打开软件并创建连接到您安装的Oracle数据库。 (3)创建连接后,您可以使用SQL Developer的“工具”菜单的“编译器”选项来打开PL/SQL编辑器(或者按F11),在该编辑器PL/SQL语言编写自己的代码。 (4)若要调试和运行PL/SQL代码,您可以在“工具”菜单选择“调试”选项来启动调试工具。此时,您可以单步运行代码,设置断点等等,以便更好地调试和测试代码。 总之,Oracle数据库PL/SQL是强大的数据管理和编程工具,它们可以极大地帮助我们更好地组织和管理大量复杂的数据。如果您想学习PL/SQL编程,下载和安装Oracle数据库PL/SQL是必不可少的第一步。 ### 回答3: Oracle是目前最为流行的关系型数据库管理系统之一,而PL/SQL则是Oracle数据库的一种高级程序设计语言,能够对数据库进行编程和操作。本文将介绍OraclePL/SQL的下载和安装流程。 一、Oracle数据库下载与安装: 1. 登录Oracle官网下载页面(https://www.oracle.com/downloads/)。 2. 根据自己的电脑操作系统的选择与下载,考虑到比较稳定的版本,可以选择19c。 3. 下载完成后,双击安装包,点击“安装”。 4. 点击“创建并配置数据库”。 5. 选择“服务器类”安装类型,然后点击“下一步”。 6. 在“数据库配置”页面上,输入“全局数据库名称”和管理员密码,然后点击“下一步”。 7. 在“运行批处理”页面上,勾选“创建数据库”和“批处理”之后,点击“下一步”。 8. 在“安装选项”页面上,勾选“创建桌面快捷方式”,然后点击“下一步”。 9. 点击“安装”按钮,等待安装完成。 10. 安装完成后,通过SQL Developer连接数据库,进行数据库的管理和开发。 二、PL/SQL开发工具下载与安装: 1. 登录Oracle官网(https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/)。 2. 根据自己的电脑操作系统的选择下载SQL Developer。 3. 下载完成后,双击安装包并点击“安装”按钮。 4. 打开SQL Developer,配置连接Oracle数据库的信息,输入用户名、密码和连接字符串等信息,并测试连接是否成功。 5. 连接成功后,即可开始使用PL/SQL进行数据库的设计和开发。 总结: OraclePL/SQL的下载和安装相对较为简单,按照官方的指引进行操作,即可顺利完成,不会出现太多的问题。安装完成后,可以开始使用SQL Developer进行数据库的管理和开发,利用PL/SQL语言进行程序设计,对数据库的操作具有强大的能力和灵活性。OraclePL/SQL是企业级数据库管理系统和高级开发语言,掌握它们可以为工作和技术发展带来极大的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弗兰随风小欢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值