从数据库中读出字符数据转换成整数数据,有问题题?急!!!给分!

废话很多 2001-06-29 12:00:49
<%@ page contentType="text/html;charset=Gb2312" import="java.sql.*"%>
<html>
<head>
<title>长庆油田公司——物资</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<%
Class.forName("oracle.jdbc.driver.OracleDriver");
//加载驱动程序类
String url="jdbc:oracle:thin:@demo:1521:ora8";
Connection con=DriverManager.getConnection(url,"demo_user","kingstone");
//建立数据库联机
Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
// 建立Statement对象
ResultSet rs;
//建立ResultSet(结果集)对象
rs=stmt.executeQuery("select max(max_type_id) as maxid from max_type");
//执行SQL语句
%>
<p> </p><table bg=dodgerBlue>
<tr bg=skyblue>
<td><b>物资大类编号</b></td>
<td><b>物资大类名称</b></td>
</tr>
<form name="form1" method="post" action="addmax_success.jsp">
<%
//利用while循环将数据表的记录输出
while(rs.next())
{
%>

<p>物资大类编号 <input type="text" name="id" value=" " disabled> *<%
int dd=Integer.parseInt(rs.getString("maxid"));
// int dd2=Integer.parseInt(dd);
%><%=dd%></p>
<p>物资大类名称
<input type="text" name="name">
*</p>
<%
}
rs.close();//关闭ResultSet对象
stmt.close();//关闭Statement
con.close();//关闭Connection对象
%>
</table>
<input type="submit" name="Submit" value="提交">
<input type="button" name="Submit2" value="取消">
</p>
</form>
</body>
</html>
出错为

异常:
java.lang.NumberFormatException: 07
...全文
100 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
susiewang 2001-06-29
转换前先调用String的trim()方法处理一下!
回复
http://www.csdn.net/expert/topic/166/166905.shtm
回复
chenhw 2001-06-29
在sql语句中可以用convert直接将max()转化为字符.
行不行?
回复
废话很多 2001-06-29
我的问题已得到解决,原因在于,数据的该字段类型为char,我把他改为varchar2就可以了。
谢谢大家
回复
westwood 2001-06-29
<%=dd2%>
这么写吧
回复
废话很多 2001-06-29
我这样写还是出错,一样的错
String dd=rs.getString("maxid");
int dd2=Integer.parseInt(dd);
<%dd2=%>
回复
废话很多 2001-06-29
错误依旧是这样。异常:java.lang.NumberFormatException: 07
回复
废话很多 2001-06-29
to xiaoyou
可是错误还是java.lang.NumberFormatException: 07
回复
int dd=Integer.valueOf(rs.getString("maxid")).intValue();
dd=dd+1;
String dd2=(new Integer(dd)).toString();
<%=dd2%>
回复
废话很多 2001-06-29
to xiaoyou,to楼上的哥哥
到底怎么样做啊。
我只是想把数据表里的最大字符,如08,读出后变为09,再插入数据库表里。

所以这里我采用的方法是把字符变为整数,加1后,再变为字符,再前加字符0。
你有好的方法也可以介绍一下啊
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2001-06-29 12:00
社区公告
暂无公告