选择所有具有匹配列名的表
Posted
技术标签:
【中文标题】选择所有具有匹配列名的表【英文标题】:Select all tables that have matching column name 【发布时间】:2019-08-21 18:07:36 【问题描述】:是否有一种方法可以使用 UCANACES 对数据库中与特定名称匹配的所有列进行选择和执行查询
我已经尝试使用在Find all tables that have X column name 找到的 mysql 方法
String sql = "SELECT DISTINCT table_name FROM INFORMATION_SCHEMA.COLUMNS WHERE column_name= 'CID'";
ResultSet rs = readID.executeQuery(sql);
System.out.println("This plugin has successfully connected to the database...");
do
userInput2 = JOptionPane.showInputDialog(null,"HIPAA Main Menu \n1. Encrypt the database. \n2. Decrypt the database.\n3. Exit the program.\n(Make a selection by entering 1, 2, or 3)");
choice = Integer.parseInt(userInput2);
switch (choice)
case 1 :
while (rs.next())
ID = rs.getString("CID");
rs.updateString("CID", encodedID(ID,aesKey,cipher));
rs.updateRow();
x++;
dbConnection.commit();
ResultSet rs = readID.executeQuery(sql);
我希望代码连接到数据库中任何名为 CID 的列,然后获取列中的字符串,但我收到以下错误...
此插件已成功连接数据库... net.ucanaccess.jdbc.UcanaccessSQLException:UCAExc:::4.0.4 未找到列:CID 在 net.ucanaccess.jdbc.UcanaccessResultSet.getString(UcanaccessResultSet.java:782) 在 Hipaa.main(Hipaa.java:63) 引起:net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::4.0.4 Column not found: CID 在 net.ucanaccess.jdbc.UcanaccessResultSet.getObject(UcanaccessResultSet.java:649) 在 net.ucanaccess.jdbc.UcanaccessResultSet.getString(UcanaccessResultSet.java:776) ... 1 更多
【问题讨论】:
您确定可以使用 UCanAccess 连接到 MySQL 数据库!?! 【参考方案1】:尝试将此行更改为:
String sql = "SELECT DISTINCT table_name FROM INFORMATION_SCHEMA.COLUMNS WHERE column_name= 'CID'";
然后尝试再次运行它 希望这会奏效
【讨论】:
以上是关于选择所有具有匹配列名的表的主要内容,如果未能解决你的问题,请参考以下文章