繁体   English   中英

如何在Java中的db表中插入NULL值?

[英]How do I insert a NULL value into a db table in java?

问题是我不知道如何插入空值。 该列是日期,如果为空,则默认情况下会仅将当前日期添加到数据库中,但是如果用户未指定自定义日期,我不知道如何将其保留为空或为null。

statement.executeUpdate("insert into table values(null, 100, 'text')");

这是查询。 我试图跳过第一个值,插入一个空值,插入一个空字符串,一个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();

使用此表单,在其中指定要设置的列:

INSERT INTO table_name (column1,column2,column3,...) 
VALUES (value1,value2,value3,...);

在您的情况下:

insert into table (col2, col3) values (100, 'text')

(当然,col2和col3是表的列名)

编辑:日期列(col1)可能需要约束“ Default null”才能按预期工作。

在column_date中取消选中NOT NULL,然后可以插入NULL值

简单代码“ INSERT INTO table_namefield_name )VALUES(NULL)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM