绑定变量上的 SQL 连接

我有一个用 Java 构建的动态生成的 SQL 查询。它的构建方式是绑定一个参数数组和一个动态创建的表示查询的字符串。像这样的东西:


List<String> bindVariables;

String query = "Select * from TABLE where id = ?";

查询创建完成后。变量根据它们在数组中的索引进行绑定。像这样:


query = selectPortion + fromPortion + wherePortion;

// Bind all parameters

for (int i = 0; i < bindVariables.size(); i++) {

    queryStatement.setNString(i + 1, bindVariables.get(i));

}

然后执行查询。


当我们只是将变量绑定到 WHERE 子句时,这很好用,因为它只是将条件和变量添加到数组的末尾。但是,问题是当我想在数组已经有一些值之后加入变量时。


wherePortion += "and table1.id = ? ";

bindVariables.add("15");

wherePortion += "and table2.color = ? ";

bindVariables.add("blue");


fromPortion += "INNER JOIN table3 on table3.size = ? ";

bindVariables.add(); //Here is the issue

有没有推荐的方法来处理这种情况?


芜湖不芜
浏览 132回答 1
1回答

慕神8447489

看来我正在寻找一个&nbsp;CROSS JOIN
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java