小编kel*_*och的帖子

如何创建所有参数都是可选的多重搜索 SQL 语句?

我想知道是否有任何聪明的方法可以为有 5 个可选参数的搜索引擎创建 SQL 语句。可以使用所有参数,也可以仅使用其中一个参数,也可以混合使用其中任何参数。这构成了多达 3000 多种不同的组合。

需要准备该语句以避免 SQL 注入。

我看过这篇文章,但它并没有被削减。

我正在寻找的是这样的东西,

字符串 sql =SELECT * FROM 表 WHERE(可选1)=?和(可选2)=?和(可选3)=?和(可选4)=?和(可选5)=?

prepared.setString(1, 可选1) 等等...

java sql jdbc

5
推荐指数
1
解决办法
1537
查看次数

有谁能在这份准备好的声明中找出我做错了什么?

我为数据库访问做了一个准备好的声明,虽然它很有用但我不确定是什么问题.

它应该做的是取一个整数和一个字符串并根据这个更新数据库.

这是代码.与DB本身的连接有效,我知道这可以执行"正常"语句.

public void updateShipment(int shipmentNumber, String currentLocation)
        throws SQLException {

    String sql = "UPDATE shipments SET current_node=? WHERE shipment_id=?";
    con.setAutoCommit(false);
    pre = con.prepareStatement(sql);
    pre.setInt(1, shipmentNumber);
    pre.setString(2, currentLocation);
    pre.executeUpdate();
    con.commit();
    pre.close();
    con.setAutoCommit(true);
}
Run Code Online (Sandbox Code Playgroud)

java sql jdbc

3
推荐指数
2
解决办法
90
查看次数

标签 统计

java ×2

jdbc ×2

sql ×2