问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在plsql中调用存储过程没问题,在java里面调用不报错,返回的参数也是成功,数据没插到表中

发布网友 发布时间:2022-04-08 07:03

我来回答

2个回答

懂视网 时间:2022-04-08 11:24

1 存储过程介绍

         存储过程是指用于特定操作的pl/sql块,是由流控制和sql语句书写的过程。
         存储过程经编译和sql优化后存储在数据库服务器中,使用时候只需要调用即可。

2 存储过程的优点

       1 使用存储过程,可以实现存储过程设计和编码工作分开进行,只要将存储过程名,参数,以及返回信息告诉编码人员即可。

       2 使用存储过程可以减少sql注入式攻击,提供系统的安全性。

       3 执行存储过程的用户要具有一定的权限才能使用存储过程。没有数据操作权限的用户只能在系统控制下间接的存取数据。

       4 存储过程的代码直接放在了数据库中,一般由客户端直接通过存储过程的名称来进行调用,简化客户端的操作逻辑。

3 存储过程的语法

          存储过程 包含三部分 声明,执行部分,异常。可以有无参数的或带参数的存储过程。

         存储过程的定义:

          Create  [or replace]  procedure procedure_name

          [(parameter1[mode] datatype1,parameter2 [model] datatype2…)]

          IS[As]

          Begin

           Pl/sql block;

          End [procedure_name]

       其中: procedure_name是存储过程的名字,parameter用于指定参数,model用于指定参数模式,datatype用于指定参数类型, IS [AS]用于开始PL/SQL代码块。

       注:1, 当定义存储过程的参数时,只能指定数据类型,不能指定数据长度。

               2, 建立存储过程时,既可以指定存储过程的参数,也可以不提供任何参数。

               3, 存储过程的参数主要有三种类型:输入参数(IN)、输出参数(OUT)、输入输出参数(IN OUT),其中IN用于接收调用环境的输入参数,OUT用于将输出数据传递到调用环境,IN OUT不仅要接收数据,而且要输出数据到调用环境。

技术分享

4  一个简单的存储过程+调试

  技术分享

写一个存储过程--修改其中的数据

技术分享

select count(*)  from table1 where name=‘weiguo‘ 的查询结果是 count(*)=0

技术分享

 

如果涉及到两个或以上的输入参数,如下图:

技术分享

5  存储过程和java程序的接口操作

     5.1   无返回值的存储过程

           技术分享

 

技术分享

   查询数据库-显示

技术分享

     5.2  有返回值的存储过程(非列表-单个出参)

    技术分享

 

 技术分享

 

  注意,这里的proc.getString(2)中的数值2并非任意的,而是和存储过程中的out列对应的,如果out是在第一个位置,那就是proc.getString(1),如果是第三个位置,就是proc.getString(3),当然也可以同时有多个返回值,那就是再多加几个out参数了。

  由于oracle存储过程没有返回值,它的所有返回值都是通过out参数来替代的,列表同样也不例外,但由于是集合,所以不能用一般的参数,必须要用pagkage了。

 返回列表的存储过程对我来说,不常用。要通过建包+游标的方式来实现。


plsql知识梳理-存储过程和java调用

标签:

热心网友 时间:2022-04-08 08:32

你确认一下过程中是否满足条件,有可能是过程成功,但逻辑不满足,空执行或在过程有捕捉异常处理追问存储过程是没有问题的,在plsql中执行都正确,但是用java程序调用返回值也是成功的返回值,但是数据没插入

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
人类如何才能悬浮在空中? - 知乎 人体悬浮术是真的存在吗 人体怎样才能真正的在空中悬浮 小孩c蛋白反应高是什么原因 (2014?南海区二模)如图所示,物重G为2000N,小红用800N的拉力花2s的时间... 苹果13系列升级iOS15.5好吗? 出生2o12年11月20日2点姓石光字辈取名 求龙凤胎名字:2012年6月21日(农历5月初3)凌晨0点40分出生,大的为龙,小... by和take有什么区别 takeby后面跟交通工具的区别 《糜欢》许然 小说全集下载…txt 网络名叫许然有什么意思? 唐衍离是男主角的小说 迟愿和许然是哪个小说里面的人物? 路由器有信号没网怎么用手机设置 玄学主角独自在北京上学生活,等待李家上面取东西,是什么小说? 求一些耽美小说的男主角 一部BL小说,只记得主角叫许然。有人知道篇名是什么吗?? 路由器未联网手机可以解决吗? 许然肖筱作者是谁 许然萧寒是哪部小说的主角 萧韩许然小说从哪看 谁能白话解释一下“强者不自勉 或死而泯灭于无闻 弱者能自力 则必有称于世 ”什么意思 孟子万章上 万章问曰:“象日以杀舜为事,立为天子,则放之,何也?”孟子曰:“封之也,或曰放焉。” 这首诗的大意 什么是圣人? 天行健君子以自强不息下一句是什么? 文言文成语故事和翻译!20个越短越好!!!不要太长的 曾国藩语录 中国哲学中,"天人合一"有哪几种理论形态 苹果还原需要退出id吗ld退不出去、还原也没有用、也是退不出去、_百度问一问 微信通讯录好友资料页面右上角圈圈上为什么会有一根红色的杠? 我的微信好友的个人资料的右上角是一个带横条的红色标记,而不是三个小黑点,无法删掉好友,有什么办法删 先退出id还是先抹掉数据? 拜托,请问我微信的好友点击他的详细资料他右面有个图标(圆圈)有一个红道,代表什么意思 微信搜索好友,右上角出现红色小圈什么意思他并不是我的好友 成人高考考试时间是几个小时? 苹果lD恢复出厂设置和退出ID是一样的吗 成人高考21级什么时候毕业 旧手机恢复出厂设置时,忘记把ID退出,导致恢复出厂设置时候icloud备份的照片没有了。能恢复吗? 七台河成人高考报名时间和考试时间都是什么时候? iphone6sp ID没有退出直接恢复了出厂设置? 成人高考考试时间和自考考试时间一样吗 苹果手机恢复出厂设置id登陆怎么关闭 大海螺煮熟了立马盛出来还是再过会 护国运动爆发的直接原因是 什么是护国战争 讲一下护国战争和护法战争的经过 梦见自己中彩票了10多万,然后买了房子,买了车.这是怎么回事? 做梦梦见中奖10万又结果又去买了一辆车