我用java做一个聊天室程序。环境是Eclipse,数据库时MySQL。但是在注册成会员的时候出现了异常,说是值的类型不匹配,具体情况如下:连接成功!
sql:select * from yonghu where custName='abc'
reg:false
c:insert into yonghu(custName,custPassword,age,sex,email) values('abc','321','22','女','[email protected]')
java.sql.SQLException: Column count doesn't match value count at row 1
java.sql.SQLException: Column count doesn't match value count at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3562)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3494)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1960)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2114)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2690)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1648)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1567)
at DB.executeUpdate(DB.java:77)
at Connection.serverRegisteDB(Connection.java:240)
at Connection.run(Connection.java:65)数据库这里,我的custName,custPassword,age,sex,email的类型全设成了VARCHAR(50),是不是类型不可以这样设置?那数据库应该怎样设置才正确?我以前试过在mysql里把这些类型设成别的比如性别是enum等,但总是出错。我想干脆就全都变成VARCHAR算了,但现在好像不行。请各位帮忙~~谢谢~!