首页 > 其他分享 >ORA-01008:并非所有变量都已绑定-解决办法

ORA-01008:并非所有变量都已绑定-解决办法

时间:2023-09-27 16:57:17浏览次数:54  
标签:解决办法 变量 01008 绑定 sql paraCondition ORA

        近期批量处理数据,后台用JAVA编写,连接Oracle数据库,程序运行报ORA-01008问题。解决这个问题时遇见的坑较多,下面复盘现象、问题提出解决办法,希望能帮到遇见同类问题的你。

调试问题:

后台代码:

   /**
     * 插入操作的封装
     * **/
    public static void insertRow(String sql,List<Object> paraCondition)  {
//        1建立数据库连接
        Connection conn=JDBCUtils.getConnection();
        //2sql传入,传入的参数带变量,将SQL绑定变量处理
        try {
            //3为sql语句赋值
            PreparedStatement pstmt = conn.prepareStatement(sql);
            if(paraCondition!=null && paraCondition.size()>0){
                for(int i=0;i<paraCondition.size();i++){
                    pstmt.setObject(i+1,paraCondition.get(i));
                }
            }
            pstmt.execute(sql);//执行SQL
        }catch (SQLException e){
            e.printStackTrace();
        }
    }

解决办法:

1、要求绑定变量sql中的个数与paraCondition中的个数要一致。

2、paraCondition处理的有问题,不要有NULL值

3、注意上面代码“//执行SQL”中传入了参数“sql”,注意此处不要传参。

我遇见的坑是这三个,希望帮到寻觅原因的你。

标签:解决办法,变量,01008,绑定,sql,paraCondition,ORA
From: https://www.cnblogs.com/handhead/p/17733092.html

相关文章

  • 【从0学习Solidity】 5. 变量数据存储和作用域 storage/memory/calldata
    【从0学习Solidity】5.变量数据存储和作用域storage/memory/calldata博主简介:不写代码没饭吃,一名全栈领域的创作者,专注于研究互联网产品的解决方案和技术。熟悉云原生、微服务架构,分享一些项目实战经验以及前沿技术的见解。关注我们的主页,探索全栈开发,期待与您一起在移动开发的......
  • vue-router使用,localStorage系列,vue3介绍,组合式api和配置项api
    1vue-router使用......
  • Oracle各个产品官方报价
    今天无意中找了Oracle官方网站基于产品的报价,记录一下:网址:https://shop.oracle.com/apex/f?p=dstore:2:0::NO:RIR,2:PROD_HIER_ID:28457297826249371097327176Oraclesoftware软件价格:(按Processor计算)(按user计算) (按Processor计算)ADG软件价格:(按Processor计算)按照user......
  • Python脚本连接Oracle数据库并验证成功
    #yaml文件存储数据->root\Data\oracle_admin_f_shozaiko.yaml#TestDataforOracleDB:ADMIN->F_SHOZAIKO-name:connecttoOraclerequest:uname:adminupwd:P823!ApoLhost:rf-oms.cbfvvrud0bld.ap-northeast-1.rds.amazonaws.com:1521/rfomsqu......
  • Oracle CloudWorld 2023:Safra Catz主题演讲——把客户的成功放在首要位置
    SafraCatz在OracleCloudWorld2023的开场演讲主题是“把客户的成功放在首要位置”。她强调了客户的重要性,并说大家通过合作和技术可以实现几乎一切。她感谢在场的观众,强调了学习和分享的重要性,以及公司致力于为客户提供更好服务的承诺。在演讲中,她还邀请了来自其他公司的高管......
  • C#中DataGridView控件绑定控件绑定数据源方式
    第一种:DataSetds=newDataSet();this.dataGridView1.DataSource=ds.Table[0];第二种:DataTabledt=newDataTable();this.dataGridView1.DataSource=dt;第三种:DataSetds=newDataSet();this.dataGridView1.DataSource=ds.Tables["表名"];第四种:DataSetds=newDataSet......
  • LIS实验室(检验科)信息系统源码 C# +.Net+Oracle
    LIS实验室(检验科)信息系统,一体化设计,与其他系统无缝连接,全程化条码管理。集申请、采样、核收、计费、检验、审核、发布、质控、查询、耗材控制等检验科工作为一体的网络管理系统。技术细节:体系结构:Client/Server架构客户端:WPF+WindowsForms服务端:C#+.Net数据库:Oracle接口技术:RESTf......
  • Ubuntu 22.04上安装docker方法及oracle 11g方法
    1.切换到管理员登录ubt2204@ubt2204-Virtual-Machine:~/database$suPassword:2.执行安装docker命令root@ubt2204-Virtual-Machine:/home/ubt2204/database#sudoaptinstalldocker.io3.启动docker服务systemctlstartdocker#或者sudoservicedockerstart4.......
  • 联想T30瘦客户机安装DoraOS体验
    硬件配置:J4125、8GRAM、128GROM联想T30台式电脑,它是一台迷你计算机,尺寸小巧玲珑,重量适中,方便携带。它的性能十分强大,能够运行各种应用程序,包括网页浏览器、视频播放器等。它还支持多种操作系统,如Windows系统和Linux系统,用户可以根据自己的需求选择不同的操作系统。此外,这台计......
  • Oracle19c RPM 方式安装
    Oracle19c提供Linux环境单机的rpm安装方式,仅支持单实例安装,不支持集群,rpm文件大小为2.5G。操作系统版本建议Linux7.6或SUSELinuxEnterpriseServer12SP3以上,Linux6就别折腾了。需要的文件oracle-database-preinstall-19c-1.0-3.el7.x86_64.rpmcompat-libstdc++-33-3.2.3-7......