免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1644 | 回复: 3
打印 上一主题 下一主题

问一个java插Mysql数据库的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-10 15:53 |只看该作者 |倒序浏览
现在有一个表:
create table role
(
role_no int(5) NOT NULL auto_increment,
role_id varchar(32),
role_name varchar(64),
valid ENUM('Y','N') NOT NULL ,
PRIMARY KEY (role_no)
)ENGINE=InnoDB DEFAULT CHARSET=latin1;

写了一下的一个简单的jsp:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<head>
<title>
testmysql.jsp
</title>
</head>

<body>
<H1>Mysql</H1>
<%
Class.forName("com.mysql.jdbc.Driver");
String mysql_url="jdbc:mysql://localhost/img_db";
Connection conn= DriverManager.getConnection(mysql_url,"img","123");
Statement stmt=conn.createStatement();
String query="insert into role values('','xxx','xxx','Y')";
stmt.executeUpdate(query);
if(stmt != null)
        stmt.close();
if(conn != null)
        conn.close();
%>
</body>
</html>

但是就是抱错:
javax.servlet.ServletException: Data truncation: Out of range value for column 'role_no' at row 1
不知道怎么做,请教各位大哥!

[ 本帖最后由 jjcowboy 于 2006-5-10 15:55 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-05-10 16:09 |只看该作者
就是说像这样role_no是自增长的字段,在java里面怎么处理呢?

论坛徽章:
0
3 [报告]
发表于 2006-05-10 21:44 |只看该作者
首先  role_no是int型的,你给了字符型的
第二,auto_increment不需处理
insert into role values('','xxx','xxx','Y')这个sql在数据库中也是不能执行的
是sql错误,和java不相干

论坛徽章:
0
4 [报告]
发表于 2006-05-12 13:56 |只看该作者
在sql语句里加上字段名字吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP