Java连接Mysql数据库,如何获取所有的数据库名

2025-03-04 19:20:02
推荐回答(3个)
回答1:

查询mysql中所有数据库名称
一,这种方法像执行普通的SQL语句一下,sql如下:
SELECT `SCHEMA_NAME`
FROM `information_schema`.`SCHEMATA`
二,
List list=new ArrayList();
//String sql="SELECT SCHEMA_NAME FROM information_schema.SCHEMATA";
try{
//Statement st=(Statement) conn.createStatement();
DatabaseMetaData dmd=(DatabaseMetaData) conn.getMetaData();
ResultSet rs=dmd.getCatalogs();
while(rs.next()){
list.add(rs.getString("TABLE_CAT"));
}
}catch(SQLException e){
e.printStackTrace();
}

回答2:

select SCHEMA_NAME from information_schema.schemata

这样就能取到所有的数据库名

回答3:

pstm = conn.prepareStatement(sql);
ResultSet rs = pstm.executeQuery();
arr = new ArrayList();
while(rs.next()){
    arr.add(rs.getString(0));
}
rs.close();
pstm.close();

另外需要有足够的权限