我正在尝试在MySQL数据库中插入一列。尝试执行此操作时,在数据库中完全不同的列上出现“无默认值”错误。如果我不尝试在出现错误的列中插入任何内容,为什么会这样?
与Spring框架中的JdbcTemplate一起使用的查询:
String sql = "INSERT INTO database_1(col1) VALUES(?)";
jdbc.batchUpdate(sql, params);
参数也填充了合法参数
控制台输出:INSERT INTO database_1(col_1) VALUES(?)]; Field 'col_2' doesn't have a default value; nested exception is java.sql.BatchUpdateException
答案 0 :(得分:0)
表中的某些列可能需要一个值,即不允许使用null
值。如果是这样,则在创建表时可以为该列指定默认值。如果您在表中插入新行而未为该列指定值,则将使用默认值。如果在创建表时未指定此类值,则会收到错误消息。创建表时,您需要为该列指定默认值,或者或在插入新行时提供一个默认值。