gpt4 book ai didi

java - 我想在JDBC中插入一个SQL的特殊字符

转载 作者:行者123 更新时间:2023-11-30 07:01:57 25 4
gpt4 key购买 nike

我想将此 Access sql 查询转换为 Java JDBC

选择 *
来自书籍
其中 Lcase(title) LIKE Lcase('*jdbc*') AND Lcase(title) LIKE Lcase('*programming*')

我使用这样的 preparedStatement

String sql1="Select * From books Where Lcase(title) LIKE Lcase(%?%) AND Lcase(title) LIKE Lcase(%?%)";
PreparedStatement ps1=con.prepareStatement(sql1);
ps1.setString(1, "jdbc");
ps1.setString(2, "programming");
ResultSet rs1=ps1.executeQuery();

但是我得到一个语法错误

最佳答案

如果你想将 % 插入到 Lcase 使用的值中,你有两种选择:

  • 在代码中添加%,或者
  • 在查询中使用串联。

第一种方法是这样的:

String sql1="Select * From books Where Lcase(title) LIKE Lcase(?) AND Lcase(title) LIKE Lcase(?)";
PreparedStatement ps1=con.prepareStatement(sql1);
ps1.setString(1, "%jdbc%");
ps1.setString(2, "%programming%");

第二种方法是这样的:

String sql1="Select * From books Where Lcase(title) LIKE Lcase('%' & ? & '%') AND Lcase(title) LIKE Lcase('%' & ? & '%')";

关于java - 我想在JDBC中插入一个SQL的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29391612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com