gpt4 book ai didi

java - 获取 ORA-01722 : invalid number error while inserting form data from webpage

转载 作者:行者123 更新时间:2023-11-30 01:43:31 25 4
gpt4 key购买 nike

将 jsp 表单中的数据插入到 oracle 数据库时出现 ORA-01722 错误。我知道这个错误向我指出我正在尝试在数字数据类型中插入字符串,但问题是一切看起来都很好,但我仍然收到错误

这是我使用的代码。

roomregister.jsp

<%
String roomcategory=request.getParameter("category");
if(roomcategory==null)
{
response.sendRedirect("categoryrooms.jsp");
return;
}
//out.println(roomcategory);
%>
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(document).ready(
function ()
{
//getRoomsByCategory();
}
);
var roomcategory="<%=roomcategory%>";

/* function f1()
//{
// var nrooms=$("#hdmaxrooms").val()-1;
//alert(nrooms);
}*/
function chooseRoom(roomno)
{
$("#txtroomno").val(roomno);
}

function roombook()
{
var gender="";
if(document.getElementById("txtmale").checked)
gender="Male";
if(document.getElementById("txtfemale").checked)
gender="Female";
if(gender=="")
{
alert("Please select a gender");
return ;
}
var receiptno=$("#txtreceiptno").val();
var name=$("#txtname").val();
var address=$("#txtaddress").val();
var idproof=$("#txtidproof").val();
var dob=$("#txtdob").val();
var contact=$("#txtcontact").val();
var roomno=$("#txtroomno").val();
var fromdate=$("#txtfromdate").val();
var todate=$("#txttodate").val();
var roomcategory=$("#txtroomcategory").val();
var noofguestname=$("#txtnoofguestname").val();
var charge=$("#txtcharge").val();
var purpose=$("#txtpurpose").val();

var bookingamount=$("#txtbookingamount").val();


var url="bookrooms.jsp?receiptno="+ receiptno + "&name=" + name + "&address=" + address + "&idproof=" + idproof + "&dob=" + dob + "&gender="+ gender + "&contact=" + contact + "&roomno="
+ roomno + "&fromdate=" + fromdate +"&todate="+ todate + "&roomcategory=" + roomcategory + "&noofguestname=" + noofguestname +
"&charge=" + charge + "&purpose=" + purpose + "&bookingamount=" + bookingamount;

var xhr=new XMLHttpRequest();
xhr.open("GET",url,true);
xhr.onreadystatechange=function (){roomBookResponse(xhr);};
xhr.send();
//alert(url);

}

function roomBookResponse(xhr)
{
if(xhr.readyState!=4)
return ;
//getRoomsByCategory();
$("#diverrors").html(xhr.responseText);
// alert("xZXZX" + xhr.responseText);
}

function getroom()
{
var fromdate =$("#txtfromdate").val();
var todate =$("#txttodate").val();


var url="roomsforbooking.jsp?fromdate="+ fromdate + "&todate=" + todate + "&category=" + roomcategory ;
//alert(url);

var xhr=new XMLHttpRequest();
xhr.open("GET",url,true);
xhr.onreadystatechange=function (){getRoomResponse(xhr);};
xhr.send();
//alert(url);

}
function getRoomResponse(xhr)
{
if(xhr.readyState!=4)
return ;
// getRoomsByCategory();
$("#diverrors").html(xhr.responseText);
// alert("xZXZX" + xhr.responseText);
}
</script>

<font color="white">

<div id="divroomsbycategory"></div>




<div id="image" class="image">

<center>
<table class="divcenter" width="60%" border="0">
<tr><td colspan="2" align="center">ROOM BOOKING</td></tr>

<tr><td colspan="2" align="center"> <div id="diverrors"></div> </td></tr>
<tr><td><BR>Receipt_No</td><td><BR><input type="text" id="txtreceiptno"/></td></tr>
<tr><td>Name</td><td><input type="text" id="txtname"/></td></tr>
<tr><td>Address</td><td><input type="text" id="txtaddress"/></td></tr>
<tr><td>Id_Proof</td><td><input type="text" id="txtidproof"/></td></tr>
<tr><td>Date_of_Birth</td><td><input type="text" id="txtdob"/></td></tr>

<tr><td>Gender</td><td>Male<input type="radio" id="txtmale" value="male" name="gender"/>
Female<input type="radio" id="txtfemale" value="female" name="gender"/></td></tr>


<tr><td>Contact</td><td><input type="text" id="txtcontact"/></td></tr>
<tr><td> Room_No</td><td>
<input type="text" id="txtroomno" readonly="readonly"/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp&nbsp;&nbsp;&nbsp;
<input type="button" value="GET" onclick="getroom();" class="divbutton"/></td></tr>


<tr><td>From_Date</td><td><input type="text" id="txtfromdate"/></td></tr>
<tr><td>TO-date</td><td><input type="text" id="txttodate"/></td></tr>
<tr><td>Room_Category</td><td><input type="text" id="txtroomcategory" readonly="readonly" value="<%=roomcategory%>"/></td></tr>
<tr><td>No_Of_Guest</td><td><input type="text" id="txtnoofguestname"/></td></tr>
<tr><td>Charge</td><td><input type="text" id="txtcharge"/></td></tr>
<tr><td>Purpose</td><td><input type="text" id="txtpurpose"/></td></tr>



<tr><td>Booking-Amount</td><td><input type="text" id="txtbookingamount"/></td></tr>



<tr><td colspan="2" align="center"><BR><input type="button" value="SUBMIT" onclick="roombook();" class="divbutton"/></td></tr>
<tr><td colspan="2" align="center"><div id="divroomsbycategory"></div></td></tr>
</table>
</center>

</div>
</font>
<style>
.divbutton:hover
{
border: solid white;
background-color: seagreen;
}
.divcenter:hover


{
border: solid;
border-top-color: white;
border-bottom-color: white;
border-left-color: white;
border-right-color: white;


}
.image
{
width: 100%;
height: 600px;
background-image: url("images/332.jpg");
}
</style>

bookrooms.jsp

<%@page import="utilitiespackage.Date"%>
<%@page import="java.sql.Connection"%>
<%@page import="dbpackage.DBConnector"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="validationspackage.Validations"%>

<%
try
{
String receiptno=request.getParameter("receiptno");
String name=request.getParameter("name");
String address=request.getParameter("address");
String idproof=request.getParameter("idproof");
String dob=request.getParameter("dob");
String gender=request.getParameter("gender");
String contact=request.getParameter("contact");
String roomno=request.getParameter("roomno");
String fromdate=request.getParameter("fromdate");
String todate=request.getParameter("todate");
String roomcategory=request.getParameter("roomcategory");
String noofguestname=request.getParameter("noofguestname");
String charge=request.getParameter("charge");
String purpose=request.getParameter("purpose");

String bookingamount=request.getParameter("bookingamount");

//Connection con=DBConnector.getConnection(session);

PreparedStatement ps=DBConnector.getPreparedStatement(session, "insert into roomregister values ( ?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
ps.setString(1,receiptno);
ps.setString(2,name);
ps.setString(3,address);
ps.setString(4,idproof);
ps.setString(5,contact);
ps.setString(6,roomno);
ps.setString(7,fromdate);
ps.setString(8,roomcategory);
ps.setString(9,noofguestname);
ps.setString(10,charge);
ps.setString(11,purpose);
ps.setString(12,gender);
ps.setString(13,dob);
ps.setString(14,bookingamount);

Date d1=new Date(fromdate);
Date d2=new Date(todate);
for(;Date.compare(d1, d2)<0;d1.advance())
{
ps.setString(6, "" + d1);
ps.executeUpdate();
}




out.println(Validations.setSuccess("Booked"));

//String message=Validations.setSuccess("deleted");
//out.println(message);
}
catch(Exception ex)
{
System.out.println(ex);
out.println(Validations.setError(ex));

}
%>

我的数据库表:

enter image description here

我收到的错误: enter image description here

最佳答案

ps.setString(1,收据号);

这不是一个“数字”字段并且您正在调用 setString 吗?

The documentation对于java.sql.PreparedStatement有这样的说法:

Note: The setter methods (setShort, setString, and so on) for setting IN parameter values must specify types that are compatible with the defined SQL type of the input parameter. For instance, if the IN parameter has SQL type INTEGER, then the method setInt should be used.

关于java - 获取 ORA-01722 : invalid number error while inserting form data from webpage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59063951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com