问题在于我无法弄清楚如何插入空值。该列是日期,如果它是空的,它只是默认情况下将当前日期添加到数据库,但如果用户没有指定自定义,我不知道如何将其保留为空或null日期。
statement.executeUpdate("insert into table values(null, 100, 'text')");
这是查询。我试图跳过第一个值,插入一个空值,插入一个空字符串,一个0值。似乎没什么可做的。
答案 0 :(得分:0)
尝试以下代码
String sql = "INSERT INTO temp(val) VALUES (?)";
PreparedStatement st = con.prepareStatement(sql);
if (/* int value is not null */) {
st.setInt(1, value);
} else {
set.setNull(1, Types.INTEGER);
}
count = st.executeUpdate();
答案 1 :(得分:0)
使用此表单,您可以在其中指定要设置的列:
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
在你的情况下:
insert into table (col2, col3) values (100, 'text')
(当然col2和col3是表格的列名)
编辑: 日期列(col1)可能需要约束“Default null”才能使其按预期工作。
答案 2 :(得分:0)
取消选中NOT NULL然后你可以插入NULL VALUES
简单代码" INSERT INTO table_name
(field_name
)VALUES(NULL)