JAVA 获得 MySQL 数据库 中的 库名 列表 表名 列表 字段 列表

1,建立Connection Connection conn = ...//2,获得DatabaseMetaData的实例 DatabaseMetaData metaData = conn.getMetaData();//3,获取库名列表 ResultSet rs = metaData.getCatalogs(); while (rs.next()) ...{ System.out.println(rs.getString("TABLE_CAT"));}//4,获取表名列表ResultSet rs = metaData.getTables(conN.getCatalog(), null, null, new String[]...{"TABLE"});while (rs.next()) ...{ System.out.println(rs.getString("TABLE_NAME"));}

实例:获取表名

import java.sql.*;

public class Tables{
public static void main(String[] args)
{
   String dbDrive="com.mysql.jdbc.Driver";
   String url="jdbc:mysql://localhost:3306/test";
   String name="root";
   String password="123456";
   Connection conn=null;
   DatabaseMetaData md=null;
   ResultSet rs=null;
   int i=1;
   try
   {
    Class.forName(dbDrive);
    conn=DriverManager.getConnection(url,name,password);
    md=conn.getMetaData();
    rs=md.getTables(null,null,null,null);
    System.out.println("+----------------+");
    while(rs.next())
    {
     if(i==1)
     {
      System.out.println("|库名:"+rs.getString(1));
      System.out.println("+----------------+");
     }
     System.out.println("|表"+(i++)+":"+rs.getString("TABLE_NAME"));
    }
    System.out.println("+----------------+");
    rs.close();
    conn.close();
   }catch(Exception e)
   {
    e.printStackTrace();
   }
}
}

实例:获取字段名

import java.sql.*; 
import java.util.*; 
import com.microsoft.*; 

public class SQLServerTest { 

private static ArrayList al= new ArrayList(); 

public static void main(String[] args) { 

try{ 
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
String url="jdbc:microsoft:sqlserver://SaisanSvr:1433;DatabaseName=GenKa"; 
String user="sa"; 
String password="111"; 

Connection conn= DriverManager.getConnection(url,user,password); 
Statement stmt=conn.createStatement(); 
String sql="select * from test1"; 
ResultSet rs=stmt.executeQuery(sql); 
ResultSetMetaData rsmd = rs.getMetaData(); 
//获取字段名 
String sName = rsmd.getColumnName(1); 
while(rs.next()) { 
System.out.println(rs.getString("test")); 

}catch(Exception e){ 
e.printStackTrace(); 




}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值