在要求输入数字处找到非数字字符 求解

问题描述

StringtheSql="insertintobig_data(pan,acc_date,txn_date,type_mid,rrn,org_id,mid,tid,mch_name,trans_type,money,fee,rec_money,card_type,agent_type,on_line,card_bin)values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";pstm=conn.prepareStatement(theSql);obj=newObject[]{dataList.get(0),"to_date('"+dataList.get(1)+"','yyyy-mm-dd')","to_date('"+dataList.get(2)+","+DateConstant.cheDate(dataList.get(3))+"','yyyy-MM-dd,HH24:mi:ss')",dataList.get(4),dataList.get(5),dataList.get(6),dataList.get(7),dataList.get(8),dataList.get(9),dataList.get(10),dataList.get(11),dataList.get(12),dataList.get(13),dataList.get(16),agentType,1,StringUtil.subCardSix(dataList.get(0))};for(inti=0;i<obj.length;i++){pstm.setObject(i+1,obj[i]);}pstm.addBatch();pstm.executeBatch();以下为报错信息:java.sql.BatchUpdateException:ORA-01858:在要求输入数字处找到非数字字符atoracle.jdbc.dbaccess.DBError.throwBatchUpdateException(DBError.java:441)atoracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:3364)atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)atjava.lang.reflect.Method.invoke(Method.java:597)atorg.logicalcobwebs.proxool.ProxyStatement.invoke(ProxyStatement.java:100)atorg.logicalcobwebs.proxool.ProxyStatement.intercept(ProxyStatement.java:57)atoracle.jdbc.OracleStatement$$EnhancerByProxool$$25ce4da2.executeBatch(<generated>)atcom.sssoft.data.struts.action.FileUploadAction.upExT1(FileUploadAction.java:806)atcom.sssoft.data.struts.action.FileUploadAction.upExcel(FileUploadAction.java:93)atsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)atjava.lang.reflect.Method.invoke(Method.java:597)atorg.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)atorg.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)atorg.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)atorg.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)atorg.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)atorg.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)atjavax.servlet.http.HttpServlet.service(HttpServlet.java:710)atjavax.servlet.http.HttpServlet.service(HttpServlet.java:803)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atcom.sssoft.framework.web.util.CharacterEncodingFilter.doFilter(UnknownSource)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)atorg.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)atorg.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)atorg.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)atjava.lang.Thread.run(Thread.java:619)

解决方案

本帖最后由 zhidage 于 2014-07-23 18:30:57 编辑
解决方案二:
打个断点看一下就行了,你在数值类型的地方放入了非数值字符
解决方案三:
断了啊没见哪有错额
解决方案四:
崩溃手拼sql直接放到数据库里边都好使

时间: 2024-10-25 19:39:55

在要求输入数字处找到非数字字符 求解的相关文章

html文本框只能输入数字

进行web前端开发,会经常遇到校验文本框内容的情形.比如校验用户输入的手机号是否合法. 其实我们可以从根本上减少用户犯错的机会,比如文本框只能输入数字,若输入非数字字符,则马上被删除. 界面:  第一个文本框,输入字母时会立即把字母替换为空字符串. 核心js方法: Js代码   /*   * 只能输入正整数,不能有小数点   *    */   onlyIntegerKeyUp=function(e){       if(e===undefined){           e=window.ev

asp.net TextBox 只能输入数字和小数点

在定制的textbox控件中,如果只允许输入数字,需要考虑如下三种情况: 正常按键输入的字符,包括西文.中文字符等 通过键盘快捷键方式贴入的文本,即ctrl+v操作 通过上下文关联菜单的mouse操作贴入的文本,即"粘贴"操作 在探讨的同类文章中,多数只考虑了第1种情况,忽略得了第2.3种常见的操作 只允许数据小数 private sub text1_keypress(keyascii as integer)  if keyascii < 48 or keyascii >

DataGridView的奇怪问题:输入数字时第一个数重复

问题描述 我在使用DataGridView的时候发现一个奇怪的问题:如果往单元格里输入数字,第一个数字总要重复两次,比如要输入30,在单元格里发现输入的是330.请问怎么解决这个问题? 解决方案 解决方案二:仔细看代码解决方案三:没遇到过这样的问题,仔细看看自己的代码吧,或是把你的代码贴出来让大家看看解决方案四:是不是数据被回送了?解决方案五:功能很强大啊!解决方案六:肯定是代码出问题了程序不会欺骗你的程序也不会出错,出错的是你的逻辑解决方案七:up解决方案八:代码都是用来连接和绑定数据表的,没

javascript只能输入数字和小数点的文本框

只能输入数字和小数点的文本框 Html代码 <html>   <head>   <meta http-equiv="content-Type" content="text/html;charset=gb2312">   </head>   <body>   <!--把下面代码加到<body>与</body>之间-->   只能输入数字和小数点的文本框:<input

【Android】设置EditText为仅输入数字且最多只能有两位数字

需求很简单,就是要设置一个EditText仅能输入数字且输入的数字中小数部分最多可以有两位. 第一步,很简单,在XML文件中,将EditText的inputType设置成NumberDecimal,多余的属性我就不写出来,只写出主要的部分: <EditText ... android:inputType="numberDecimal" ... /> 第二部,代码中修改EditText 的addTextChangedListener 方法,同样的先上代码,再来解释: Edit

文本框只能输入数字网页代码

 方法一.四事件组合完合可以实现文本框只能输入数字 <input type="text" onkeypress = 'return /^d$/.test(String.fromCharCode(event.keyCode))' oninput= 'this.value = this.value.replace(/D+/g, "")' onpropertychange='if(!/D+/.test(this.value)){return;};this.value

输入数字立刻生成酷炫信息图的字体

  今天这款外挂级的字体必须颤抖着推荐给大家!安装字体后只要输入数字,就可以瞬间得到信息图 ,包括柱状图.饼状图.雷达图.玫瑰图等7类图表,完全不用多余的操作,而且作品也美观好看,绝对是业界良心!一起来看@凡屋SH 写的使用教程. 这是一套专门用来做数据可视化的字体:FF Chartwell Font Family. 这套字体包含七种字体,分别可以做柱状图.饼状图.雷达图.玫瑰图等7类图表(全部种类如下) 如黑科技一般,只要使用了这套字体,输入数字后就能马上得到漂亮的图表. 比如柱状图: 饼状图

『JavaScript』限制Input只能输入数字实现思路及代码_javascript技巧

这玩意很多人写过,但是今天临时要用的时候找不到符合需求的,所以立马来写一个,既然都写完了而且还满符合需求的就放上来让大家鞭一鞭. 需求很简单,一个文字方块必须限制只能输入数字(或是小数点)并且要支援 IE 和 Firefox. HTML的 Input 是这样下滴 复制代码 代码如下: <input type="text" style="ime-mode:disabled" onkeyup="return ValidateNumber($(this),

使用正则限制input框只能输入数字/英文/中文等等_正则表达式

常用HTML正则表达式 1.只能输入数字和英文的: 复制代码 代码如下: <input onkeyup="value=value.replace(/[/W]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))" ID="Text1" NAME="Text1">