我正在尝试建立条件条件包含字符串的Mysql查询。我无法建立查询。
我已经尝试过此代码。
package doubts;
public class Doubts {
public static void main(String[] args) {
String sb = "select * from a where b = ";
String a = "abc";
System.out.println(sb+a);
}
}
我可以使用以上代码构建的查询是:
select * from a where b = abc
我想要:
select * from a where b = "abc"
我想解决这个问题。
答案 0 :(得分:0)
像deHaar和Arnaud一样已经写道:
将a
放在双引号中。
例如:
public static void main(String[] args) {
String sb = "select * from a where b = ";
String a = "\"abc\"";
System.out.println(sb+a);
}
更好:在数据库上执行此查询时,请使用PreparedStatement
public static void main(String[] args) {
try (Connection conn = DriverManager.getConnection(...);) {
try (PreparedStatement pstmt = conn.prepareStatement("select * from a where b = ?");) {
pstmt.setString(1, "abc");
try (ResultSet rs = pstmt.executeQuery();) {
...
}
}
}
}