【发布时间】:2017-07-31 12:36:29
【问题描述】:
我有一个名为stars 的MySQL 表,其中一个字段是id_num,默认值为NULL。我想通过java 中的PreparedStatement 选择id_num 不是 NULL 的所有记录。
现在我正在尝试这个:
private final String idStarsSQL = "select * from `stars` where id_num is not ?";
...
preparedStatement = (PreparedStatement) connection.prepareStatement(idStarsSQL);
preparedStatement.setString(1, NULL);
set = preparedStatement.executeQuery();
但它不起作用。
【问题讨论】:
-
这里不需要准备好的声明。只需使用
select * from stars where id_num is not null -
@Jens 我将如何将此字符串与数据库连接?我的意思是,现在我有
.executeQuery();。声明这个字符串后我会做什么? -
.executeQuery(idStarsSQL);。您也可以将其与准备好的语句一起使用,但不带参数 -
@Jens aah 所以你的意思是我应该删除声明
preparedStatement.setString(1, NULL);,对吗?只需在我的字符串中写入NULL。 -
是的,我就是这个意思
标签: java java mysql select prepared-statement notnull