【发布时间】:2020-05-02 19:19:34
【问题描述】:
我正在尝试通过从表名中搜索字母或单词来让我的程序检查表名是否存在...例如,我的表名是 (samAmerica) 和 (samGermany) 我希望程序检查如果有任何表名仅包含 (sam) 词.. 所以当我使用 sam 词搜索时,他会向我显示两个表...我知道如何让它检查所有内容,但这对我没有帮助,因为我会作为一个表有很多相同的名字但不同的昵称。
这是我的代码,用于检查所有表名。如果有人帮助我,我将不胜感激。
public boolean istableNameexist(String un){
boolean uexist = false;
Connection con = myConnection.getconnection();
PreparedStatement ps;
ResultSet rs;
try {
ps = con.prepareStatement("SELECT * FROM information_schema.tables WHERE TABLE_NAME = ?");
ps.setString(1,name.getText()+faturanumarasi.getText());
rs = ps.executeQuery();
if (rs.next()){
uexist = true;
}
} catch (Exception e) {
System.out.println("wrong");
}
return uexist;
}
【问题讨论】:
-
用like代替=。
-
执行查询 SELECT * FROM information_schema.tables WHERE TABLE_NAME = '
' 并查看是否有效。如果没有结果,请检查 Shadow(上图)的建议 - 即。使用喜欢 -
我按照你说的尝试过,但我得到了错误
-
@Srinika 我也试过这个,它向我展示了 information_schema.tables 中的很多表格,但不是地雷