static void create() throws SQLException{
Connection conn = null;
Statement st = null;
ResultSet rs = null;
try {
conn = JdbcUtils.getConnection();
st = (Statement) conn.createStatement();
String sql = "insert into user(name, birthday, money) value('name1', '1978-02-01', 400)";
int i = st.executeUpdate(sql);
System.out.println("i = " + i);
} finally {
JdbcUtils.free(rs, st, conn);
}
}
提示错误是:
Exception in thread "main" java.sql.SQLException: Field 'id' doesn't have a default value
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3515)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3447)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1605)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1524)
at cn.itcast.jdbc.Crud.create(Crud.java:23)
at cn.itcast.jdbc.Crud.main(Crud.java:11)
明明我的id已经设置成主键了,为什么还让我自己复制