Oracle 存储过程出错

2024-02-02

当尝试创建此存储过程时,我收到错误:

PLS-00428:此 SELECT 语句中需要 INTO 子句

Code:

CREATE OR REPLACE PROCEDURE FindDb(
       P_BookId IN BOOKMASTER.BookId%TYPE,
       p_PublisherCode OUT BOOKMASTER.PUBLISHERCODE%TYPE,
       p_ISBNCode OUT BOOKMASTER.ISBNCODE%TYPE,
       p_BookName OUT BOOKMASTER.BOOKNAME%TYPE,
    p_BookType OUT BOOKMASTER.BOOKTYPE%TYPE,
    p_BookLevel OUT BOOKMASTER.BOOKLEVEL%TYPE,
    p_BookCategory OUT BOOKMASTER.BOOKCATEGORY%TYPE,
    p_AuthorNames OUT BOOKMASTER.AUTHORNAMES%TYPE,
    p_PublishedYear OUT BOOKMASTER.PUBLISHEDYEAR%TYPE,
    p_CostPrice OUT BOOKMASTER.COSTPRICE%TYPE,
    p_MRP OUT BOOKMASTER.MRP%TYPE,
    p_BookImage OUT BOOKMASTER.BOOKIMAGE%TYPE)
 AS
BEGIN

  SELECT  PUBLISHERCODE, ISBNCODE, BOOKNAME,BOOKTYPE,BOOKLEVEL,BOOKCATEGORY
 ,AUTHORNAMES,PUBLISHEDYEAR,COSTPRICE,MRP,BOOKIMAGE
  FROM  BOOKMASTER WHERE BOOKID = p_BookId;

END FindDb;
/

在 Oracle 存储过程中,我们必须将 SELECT 值放入变量或输出参数中。请阅读文档 http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/selectinto_statement.htm#LNPLS01345.

尝试按以下方式创建存储过程。

CREATE OR REPLACE PROCEDURE finddb (
    p_bookid            IN   bookmaster.bookid%TYPE,
    p_publishercode     OUT bookmaster.publishercode%TYPE,
    p_isbncode              OUT bookmaster.isbncode%TYPE,
    p_bookname              OUT bookmaster.bookname%TYPE,
    p_booktype              OUT bookmaster.booktype%TYPE,
    p_booklevel             OUT bookmaster.booklevel%TYPE,
    p_bookcategory      OUT bookmaster.bookcategory%TYPE,
    p_authornames           OUT bookmaster.authornames%TYPE,
    p_publishedyear     OUT bookmaster.publishedyear%TYPE,
    p_costprice             OUT bookmaster.costprice%TYPE,
    p_mrp                   OUT bookmaster.mrp%TYPE,
    p_bookimage             OUT bookmaster.bookimage%TYPE
)
AS
BEGIN
    SELECT  publishercode,
                isbncode,
                bookname,
                booktype,
                booklevel,
                bookcategory,
                authornames,
                publishedyear,
                costprice,
                mrp,
                bookimage
      INTO  p_publishercode,
                p_isbncode,
                p_bookname,
                p_booktype,
                p_booklevel,
                p_bookcategory,
                p_authornames,
                p_publishedyear,
                p_costprice,
                p_mrp,
                p_bookimage
      FROM  bookmaster
     WHERE  bookid = p_bookid;
END finddb;
/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Oracle 存储过程出错 的相关文章

随机推荐

  • 惰性 getter 在类中不起作用

    class a get b delete this b return this b 1 var c get b delete this b return this b 1 console log c b works as expected
  • JsonProvider 可以反序列化为 Generic.Dictionary 吗?

    我正在学习类型提供程序 它看起来像是一个突破性的功能 但是 我无法设法使用 JsonProvider 反序列化 json 以便目标类型具有 Generic Dictionary 属性 可以使用 Json NET 来完成 这是代码 type
  • 在 GO 中获取传入的 TTL

    我正在为我正在进行的一个小项目而苦苦挣扎 我想在 GO 中实现功能 允许我在传出 UDP 数据包上设置 IP 标头 TTL 然后发送该数据包并查看另一端收到的 TTL 我尝试使用 net 库提供的多个连接 但到目前为止没有成功 我可以设置
  • 逐行读取输入

    如何在Java中逐行读取输入 我搜索过 到目前为止我有这个 import java util Scanner public class MatrixReader public static void main String args Sca
  • 在 Android ActionBar 上设置导航图标

    因此 我正在努力将 ActionBarSherlock 和导航抽屉添加到以前实现自定义 写得很差 操作栏 的项目中 某些活动不使用片段和活动的后台堆栈进行导航 而是显示和隐藏不同的布局 也就是说 假设我处于列表模式 然后选择一个按钮进入编辑
  • CQRS 项目是否需要像 NServiceBus 这样的消息传递框架?

    过去 6 个月的学习曲线充满挑战 CQRS 和 DDD 是罪魁祸首 这很有趣 我们的项目已经完成了 1 2 我还没有时间深入研究的领域是消息传递框架 目前我不使用 DTC 因此如果我的读取模型未更新 那么很可能会出现读取和写入数据库之间的不
  • MediaCodec 给出了 storeMetaDataInBuffers 跟踪错误

    在 Android 中通过 MediaCodec 进行编码时 我在 logcat 上遇到了下一个错误 实际的编码工作正常并且输出生成正确 所以我无法真正理解为什么我得到这个跟踪 这是无害的错误跟踪 还是我遗漏了什么 E ACodec 643
  • 使用 PowerShell 授权 Office365 逻辑应用 API 连接

    尝试设置一堆支持Azure功能等的逻辑应用程序 概念是利用ML Azure功能 逻辑应用程序等来设置自动邮件系统 一切都是使用 ADO Git 和 CD CI 管道进行部署的 但我们在 Office365 连接器方面遇到了问题 它在创建后需
  • 即使应用程序似乎未安装,也会失败 [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

    当尝试将我的应用程序部署到 Android 设备时 我收到以下错误 Deployment failed because of an internal error Failure INSTALL FAILED UPDATE INCOMPATI
  • Glyphicon 在 bootstrap 版本 4.1 及更高版本中不起作用

    我试图展示一个搜索图标形式 但唯一的按钮显示没有字形
  • 将数据文件添加到python项目setup.py

    我有一个这样的项目 CHANGES txt LICENSE MANIFEST in docs index rst negar Negar py Virastar py Virastar pyc init py data init py un
  • 随机长长生成器 C++ [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 生成随机数的解决方案是什么long
  • 验证 struts 2 中的双字段

    我的 struts 2 表单之一中有一个 长度 字段 length 的数据类型是 double 我已经在 XML 文件中应用了 双重 验证 但是当我在 长度 文本字段中键入字母时 它显示错误消息为 Invalid field value f
  • 我搞砸了我的 System_server 服务吗?

    我的手机正在产生不间断的 Log d 输出 以下内容不断重复每秒1200次 04 25 15 58 04 883 1542 5012 D NetworkStatsCollection getHistory mUID 10266 isVide
  • antlr4:如何知道在给定上下文的情况下选择了哪个替代方案

    假设有一个关于 类型 的规则 它可以是预定义类型 由 IDENTIFIER 引用 或 typeDescriptor type IDENTIFIER typeDescriptor 在我的程序中 我有一个 typeContext ctx 的实例
  • 垂直对齐:基线有什么用?

    我以为我了解 CSS 但我现在需要向某人解释一些事情 但我发现我做不到 我的问题基本上可以归结为 为什么vertical align baseline当同一行中有其他对齐时被忽略 示例 如果第二个跨度有vertical align bott
  • 实体框架4:我的load方法和IsLoaded属性在哪里?

    我正在使用 EF4 并且在我的类中使用 System Data Entity dll 但是 我看不到实体的导航属性的加载方法 我怎样才能访问这个方法 我正在做的是创建 NET 的 e 4 0 项目 从数据库创建我的 edmx 右键单击模型
  • 在 Android studio 项目上找不到参数的方法 test()

    在我的 Android 应用程序中 我想排除包中的一些测试用例 以便我使用test任务在build gradle文件 例如 apply plugin com android library test exclude calltest Sum
  • 无法生成云端点类

    亲爱的程序员朋友们 我对编程非常陌生 我正在遵循有关使用应用程序引擎后端教程的教程 然而我一路上遇到了一些问题 我已经设置了 App Engine 后端应用程序项目 创建了一个 CheckIn 实体类 之后 我按照说明创建一个名为 Chec
  • Oracle 存储过程出错

    当尝试创建此存储过程时 我收到错误 PLS 00428 此 SELECT 语句中需要 INTO 子句 Code CREATE OR REPLACE PROCEDURE FindDb P BookId IN BOOKMASTER BookId