首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle SQL中缺少输入或输出参数

Oracle SQL中缺少输入或输出参数
EN

Stack Overflow用户
提问于 2021-09-11 14:47:09
回答 1查看 58关注 0票数 0

我在SQL{ "U“= UPPER(:codigo) }的这个部分上得到了一个错误。当我删除变量和硬代码:codigo作为u或U,它工作良好。我接收到的erro参数缺少入或出参数。我在Oracle 12c服务总线上收到了这个错误

完整SQL:

代码语言:javascript
复制
    SELECT Resultado_Ensaio.Amos_Cd_Tipo_Local, Resultado_Ensaio.Amos_Cd_Loc_Amostg, Resultado_Ensaio.Prod_Cd_Id, Resultado_Ensaio.Amos_Dh_Amostra,
              Resultado_Ensaio.Reen_Md_Res_Num, Componente_Gas_Nat.Cpgn_Nm_Abreviado,
              Caract_Produto.Capr_Nm_Completo,
              Unidade_Medida_Emq.Unme_Sg_Notacao, Metodo_Ensaio.Prme_Cd_Id, Metodo_Ensaio.Meen_Cd_Id,
              Resultado_Ensaio.Reen_Cd_Res_Alfa_E, Resultado_Ensaio.Tiam_Cd_Id, Caract_Produto.Capr_Cd_Comp_Carac,
              Caract_Produto.Capr_Cd_Id
              , Ce.AMOS_NR_CERT_QUAL, Ce.AMOS_DT_CERT_QUAL
          FROM Caract_Produto
          INNER JOIN Resultado_Ensaio ON (Caract_Produto.Capr_Cd_Id = Resultado_Ensaio.Capr_Cd_Id
              AND Caract_Produto.Capr_Cd_Comp_Carac = Resultado_Ensaio.Capr_Cd_Comp_Carac
              AND Caract_Produto.Grcp_Cd_Id = Resultado_Ensaio.Grcp_Cd_Id)
          INNER JOIN Metodo_Ensaio ON (Metodo_Ensaio.Meen_Cd_Id = Resultado_Ensaio.Meen_Cd_Id
              AND Metodo_Ensaio.Prme_Cd_Id = Resultado_Ensaio.Prme_Cd_Id)
          INNER JOIN Unidade_Medida_Emq Unidade_Medida_Emq ON (Unidade_Medida_Emq.Gume_Cd_Id = Resultado_Ensaio.Gume_Cd_Id
              AND Unidade_Medida_Emq.Unme_Cd_Id = Resultado_Ensaio.Unme_Cd_Id)
          LEFT JOIN Caract_Produto_Componente ON (Caract_Produto_Componente.Grcp_Cd_Id = Resultado_Ensaio.Grcp_Cd_Id
              AND Caract_Produto_Componente.Capr_Cd_Id = Resultado_Ensaio.Capr_Cd_Id
              AND Caract_Produto_Componente.Capr_Cd_Comp_Carac = Resultado_Ensaio.Capr_Cd_Comp_Carac)
          LEFT JOIN Componente_Gas_Nat ON (Caract_Produto_Componente.Cpgn_Cd_Id = Componente_Gas_Nat.Cpgn_Cd_Id)
          LEFT JOIN Certificado_Ensaio Ce ON (Resultado_Ensaio.Amos_Cd_Loc_Amostg = Ce.Amos_Cd_Loc_Amostg
              AND Resultado_Ensaio.Amos_Cd_Tipo_Local = Ce.Amos_Cd_Tipo_Local
              AND Resultado_Ensaio.Amos_Dh_Amostra = Ce.Amos_Dh_Amostra
              AND Resultado_Ensaio.Tiam_Cd_Id = Ce.Tiam_Cd_Id
              AND Resultado_Ensaio.Prod_Cd_Id = Ce.Prod_Cd_Id
              AND Resultado_Ensaio.Prco_Cd_Comp_Prod = Ce.Prco_Cd_Comp_Prod
              AND Resultado_Ensaio.Orga_Cd_Cbi_Exec = Ce.Orga_Cd_Cbi_Exec)
          WHERE
              Resultado_Ensaio.Amos_Cd_Tipo_Local    = (:tipo)
--------------AND ('U' = UPPER(:posicao) AND-------------------------------
              Resultado_Ensaio.Amos_Dh_Amostra       = (
                      SELECT MAX(Reen2.Amos_Dh_Amostra)
                      FROM Resultado_Ensaio Reen2
                      WHERE Resultado_Ensaio.Amos_Cd_Loc_Amostg = Reen2.Amos_Cd_Loc_Amostg
                          AND Resultado_Ensaio.Amos_Cd_Tipo_Local = Reen2.Amos_Cd_Tipo_Local
                          AND Reen2.Amos_Dh_Amostra <= TO_TIMESTAMP('1999-11-01 07:00', 'YYYY-MM-DD HH24:MI:SS')
                  )
                  OR
------------------'P' = UPPER(:posicao) AND--------------------------------
                  Resultado_Ensaio.Amos_Dh_Amostra       = (
                      SELECT MIN(Reen2.Amos_Dh_Amostra)
                      FROM Resultado_Ensaio Reen2
                      WHERE Resultado_Ensaio.Amos_Cd_Loc_Amostg = Reen2.Amos_Cd_Loc_Amostg
                          AND Resultado_Ensaio.Amos_Cd_Tipo_Local = Reen2.Amos_Cd_Tipo_Local
                          AND Reen2.Amos_Dh_Amostra >= TO_TIMESTAMP('1999-11-01 07:00', 'YYYY-MM-DD HH24:MI:SS') 
                  )
                 )
                 AND Resultado_Ensaio.Amos_Cd_Loc_Amostg like '314TQ5901%'
          ORDER BY Resultado_Ensaio.Amos_Dh_Amostra, Resultado_Ensaio.Amos_Cd_Loc_Amostg, Caract_Produto.Capr_Nm_Completo
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-11 04:10:03

问题是:

每次变量:posicao被引用,我的请求需要有相同的变量的确切数目。

让$dbInput := posicao1,posicao2

即使posicao1和posicao2得到相同的值。

在调用DbAdapters时是这样工作的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69144030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档