`
gongstring
  • 浏览: 589863 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

JDBC通过DatabaseMetaData对象了解数据库信息

    博客分类:
  • Java
阅读更多

JSP通过JDBC对数据库管理系统进行连接以后,得到一个Connection 对象,可以从这个对象获得有关数据库管理系统的各种信息,包括数据库中的各个表,表中的各个列,数据类型,触发器,存储过程等各方面的信息。根据这些信息,JDBC可以访问一个实现事先并不了解的数据库。获取这些信息的方法都是在DatabaseMetaData类的对象上实现的,而DataBaseMetaData对象是在Connection对象上获得的。

       
         来看看下面这个例子:

package com.rongji.demo;


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.Statement;

import java.sql.DatabaseMetaData;



public class DataConn {

  public DataConn() {

  }

  public static void main(String[] args) {

    try

{

//加载驱动程序

//下面的代码为加载JDBD-ODBC驱动程序

   Class.forName("oracle.jdbc.driver.OracleDriver");

//建立连接

//用适当的驱动程序连接到DBMS,看下面的代码[自行修改您所连接的数据库相关信息]:

   String url="jdbc:oracle:thin:@192.168.4.45:1521:oemrep";

   String user = "ums";

   String password = "rongji";

//用url创建连接

   Connection con=DriverManager.getConnection(url,user,password);


//获取数据库的信息

   DatabaseMetaData dbMetaData = con.getMetaData();

   //返回一个String类对象,代表数据库的URL

   System.out.println("URL:"+dbMetaData.getURL()+";");

   //返回连接当前数据库管理系统的用户名。

   System.out.println("UserName:"+dbMetaData.getUserName()+";");

   //返回一个boolean值,指示数据库是否只允许读操作。

   System.out.println("isReadOnly:"+dbMetaData.isReadOnly()+";");

   //返回数据库的产品名称。

System.out.println("DatabaseProductName:"+dbMetaData.getDatabaseProductName()+";");

   //返回数据库的版本号。

System.out.println("DatabaseProductVersion:"+dbMetaData.getDatabaseProductVersion()+";");

   //返回驱动驱动程序的名称。

   System.out.println("DriverName:"+dbMetaData.getDriverName()+";");

  //返回驱动程序的版本号。

   System.out.println("DriverVersion:"+dbMetaData.getDriverVersion());

   //关闭连接

   con.close();

}

catch (Exception e)

{

//输出异常信息

System.err.println("SQLException :"+e.getMessage());

e.printStackTrace();

}

}

}

 

通过上面的例子,我们可以看出,DatabaseMetaData类的对象的实现,如下语句

 

<%

DatabaseMetaData datameta=con.getMetaData();

%>

 

DatabaseMetaData类中提供了许多方法用于获得数据源的各种信息,通过这些方法可以非常详细的了解数据库的信息。就如我们上面例子中所显示的几个信息[其他的方法请读者参考JDK API中的DatabaseMetaData]

getURL()

返回一个String类对象,代表数据库的URL

getUserName()

返回连接当前数据库管理系统的用户名。

isReadOnly()

返回一个boolean值,指示数据库是否只允许读操作。

getDatabaseProductName()

返回数据库的产品名称。

getDatabaseProductVersion()

返回数据库的版本号。

getDriverName()

返回驱动驱动程序的名称。

getDriverVersion()

返回驱动程序的版本号。

分享到:
评论

相关推荐

    DatabaseMetaData生成数据库DLL

    通过调用`Connection`对象的`getMetaData()`方法,我们可以获取到`DatabaseMetaData`实例,从而获取到关于数据库的各种元数据,例如表、视图、列、索引等的详细信息。 2. **元数据的作用** 元数据是描述数据的数据...

    JDBC元数据操作--DatabaseMetaData接口Demo

    DatabaseMetaData和ResultSetMetaData就是两个常用的获取数据库元数据相关信息的接口,本文只讲解DatabaseMetaData接口获取元数据的方法。 文章地址:http://blog.csdn.net/chen_zw/article/details/18816599

    基于Java JDBC的数据库元数据查询设计源码

    项目分为核心查询模块“database-metadata-core”和数据展示模块“database-metadata-view”,其中核心模块采用纯JDBC方式,通过java.sql.DatabaseMetaData对象获取数据库元数据信息,不依赖任何外部jar包,适用于...

    怎样用JDBC查看数据库的详细信息

    总结来说,使用JDBC查看数据库的详细信息主要涉及加载驱动、建立连接、获取`DatabaseMetaData`对象并调用其方法,以及正确处理结果集和关闭资源。这对于任何需要与数据库交互的Java应用都是至关重要的。通过阅读博文...

    java 查询oracle数据库所有表DatabaseMetaData的用法(详解)

    在Java编程中,当我们需要与Oracle数据库交互时,`java.sql.DatabaseMetaData`接口提供了一种方式来获取关于数据库的各种元数据信息。这篇文章将详细介绍如何利用`DatabaseMetaData`查询Oracle数据库的所有表。 ...

    JDBC与Java数据库程序设计

    - `DatabaseMetaData`提供关于数据库的信息,如版本、表、列等。 10. **错误处理与异常** - JDBC的异常处理通常涉及`SQLException`及其子类,确保正确捕获并处理数据库操作中的错误。 以上内容构成了"JDBC与Java...

    利用JDBC实现对MS SQL Server数据库的访问 (1).pdf

    - 其他辅助接口如SQLException处理异常,DatabaseMetaData获取数据库元数据等。 【JDBC访问MS SQL Server步骤】 1. 加载驱动:使用DriverManager的registerDriver()方法加载对应MS SQL Server的JDBC驱动。 2. 建立...

    人大金仓的数据库驱动kingbase jdbc

    6. **数据库元数据**:`DatabaseMetaData`接口提供了关于数据库特性的信息,如数据库版本、支持的数据类型、表信息等。 7. **批处理**:允许一次性发送多个SQL命令,提高性能。 在实际开发中,将Kingbase JDBC驱动...

    JDBC 3.0 数据库编程

    8. **元数据增强**:提供更丰富的数据库元数据信息,如`DatabaseMetaData`接口,可用于获取表结构、列信息等。 9. **性能优化**:引入了Statement的`executeUpdate(String sql, int autoGeneratedKeys)`方法,可以...

    JDBC API数据库编程实作教材

    7. **DatabaseMetaData**: 提供关于数据库、驱动程序和连接的信息,如数据库版本、表信息、列信息等。 在实际应用中,使用JDBC API通常遵循以下步骤: 1. 加载驱动:通过`Class.forName()`加载对应的数据库驱动。 ...

    JAVA数据库编程JDBC 与 Java数据库接口JDBC入门基础讲座 与 JDBC API数据库编程实作教材-程序设计-JAVA JDBC全压缩包.rar

    7. **数据库元数据**:通过`DatabaseMetaData`获取数据库的结构和属性信息。 《Java数据库接口JDBC入门基础讲座》可能是针对初学者的教程,着重于介绍JDBC的基础概念和基本操作,包括如何设置数据库连接参数、执行...

    java判断数据库表是否存在

    `DatabaseMetaData`接口提供了关于数据库的元数据信息,包括表、列、索引等的信息。它可以通过`Connection`对象的`getMetaData()`方法获得。在本例中,我们主要关注`getTables`方法,它返回一个包含指定模式下的所有...

    java获取数据库主外键

    使用`Connection`对象的方法`getMetaData()`获取`DatabaseMetaData`对象,它是用于访问数据库元数据的对象。 ```java DatabaseMetaData dbmd = connection.getMetaData(); ``` 3. **获取表列表** 使用`...

    java各种JDBC数据库驱动文件

    包括CallableStatement用于调用存储过程,ResultSetMetaData获取列信息,DatabaseMetaData获取数据库元数据,以及RowSet接口的离线数据处理能力。 9. **JDBC与ORM框架的关系** ORM(Object-Relational Mapping)...

    JAVA与SQLServer数据库连接总结.doc

    1.8 获得元数据信息:使用DatabaseMetaData对象获取数据库的元数据信息,例如表的列定义信息。 1.9 关闭数据库各对象:关闭Connection、Statement和ResultSet对象,以释放系统资源。 二、使用JDBC直接连接SQL...

    JAVA数据库编程JDBC

    9. **JDBC的高级特性**:如CallableStatement用于调用数据库的存储过程,使用ResultSetMetaData获取列元数据,以及使用DatabaseMetaData获取数据库的信息。 10. **数据库连接池**:如C3P0、Apache DBCP、HikariCP等...

    JDBC开发过程与原理

    - **DatabaseMetaData接口**:提供有关数据库的信息,如支持的数据类型、系统函数等。 - **ResultSetMetaData接口**:提供关于结果集的元数据信息。 #### 四、JDBC应用步骤详解 1. **注册加载驱动**:使用`Class....

    java对数据库操作常用对象及方法整合[归类].pdf

    通过使用 DatabaseMetaData 对象,可以获取数据库中的表名、列名、索引信息等。 常用方法: * getCatalogs():返回该数据库中的信息目录列表。 * getTables(catalog, schema, tableNames, columnNames):返回表名...

    Java数据库接口JDBC入门基础讲座

    7. 数据库元数据(DatabaseMetaData):提供了关于数据库特性的信息。 三、JDBC操作步骤 1. 加载驱动:使用Class.forName()方法加载数据库驱动。 2. 建立连接:通过DriverManager.getConnection()创建与数据库的...

Global site tag (gtag.js) - Google Analytics