通过JDBC检测远端数据库类型(源码)

简介:

 工作中经常有告诉了一个数据库服务器JDBC连接信息,而不说数据库版本的,以致开发时不敢用该种数据库最新的特性。我写了一段小程序,用于探测远端数据库服务器类型:

 

import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.SQLException; public class DBVersionDetector { public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException { //Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance(); //Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:test", "oral", "oral"); Connection conn = DriverManager.getConnection("jdbc:db2://localhost:50000/sample", "db2admin", "db2admin"); DatabaseMetaData meta = conn.getMetaData(); System.out.println("URL:/t" + meta.getURL()); System.out.println("UserName:/t" + meta.getUserName()); System.out.println("DatabaseProductName:/t" + meta.getDatabaseProductName()); System.out.println("DatabaseMajorVersion:/t" + meta.getDatabaseMajorVersion()); System.out.println("DatabaseMinorVersion:/t" + meta.getDatabaseMinorVersion()); System.out.println("DatabaseProductVersion:/t" + meta.getDatabaseProductVersion()); System.out.println("DriverName:/t" + meta.getDriverName()); System.out.println("DriverMajorVersion:/t" + meta.getDriverMajorVersion()); System.out.println("DriverMinorVersion:/t" + meta.getDriverMinorVersion()); System.out.println("DriverVersion:/t" + meta.getDriverVersion()); System.out.println("JDBCMajorVersion:/t" + meta.getJDBCMajorVersion()); System.out.println("JDBCMinorVersion:/t" + meta.getJDBCMinorVersion()); conn.close(); } }

 

运行结果如下(示例):

 

URL: jdbc:db2://localhost:50000/sample UserName: db2admin DatabaseProductName: DB2/NT DatabaseMajorVersion: 9 DatabaseMinorVersion: 7 DatabaseProductVersion: SQL09070 DriverName: IBM DB2 JDBC Universal Driver Architecture DriverMajorVersion: 3 DriverMinorVersion: 57 DriverVersion: 3.57.82 JDBCMajorVersion: 3 JDBCMinorVersion: 0

从这里能看出这是一个DB2 v9.7 for Windows的服务器,支持JDBC3.0。

目录
相关文章
|
4月前
|
SQL Java 数据库连接
除了JDBC,还有哪些常见的数据库访问技术?
除了JDBC,还有哪些常见的数据库访问技术?
403 2
|
5月前
|
JavaScript API PHP
WordPress/Laravel企业官网源码-自适应多端SEO-前后端分离源码含数据库与部署文档​
本文详解如何结合WordPress与Laravel构建现代化企业官网,涵盖响应式设计、SEO优化、前后端分离、数据库安全及自动化部署。通过实战案例展示性能提升成果,并展望AI、云原生与区块链的未来融合方向,助力企业实现数字化增长。
|
11月前
|
Java 数据库连接 数据库
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
|
11月前
|
Java 数据库连接
【YashanDB知识库】JDBC驱动的date类型字段结果集调用getString方法只返回日期,不返回时分秒
【YashanDB知识库】JDBC驱动的date类型字段结果集调用getString方法只返回日期,不返回时分秒
|
10月前
|
前端开发 数据库
会议室管理系统源码(含数据库脚本)
会议室管理系统源码(含数据库脚本)
190 0
|
11月前
|
前端开发 Java 关系型数据库
基于ssm的考研图书电子商务平台,附源码+数据库+论文
考研图书电子商务平台是一个基于Java的B/S架构系统,适用于Windows环境。该平台设有管理员和用户权限,管理员可管理商品、用户、留言板及订单,用户可管理收货地址、订单、收藏及购买商品。技术框架包括前端Vue+HTML+JavaScript+CSS+LayUI,后端SSM,数据库为MySQL。项目包含17个数据库表,支持Maven构建。提供演示视频和详细文档,支持免费远程调试安装,确保顺利运行。
200 13
基于ssm的考研图书电子商务平台,附源码+数据库+论文
|
10月前
|
Java 关系型数据库 MySQL
Java汽车租赁系统源码(含数据库脚本)
Java汽车租赁系统源码(含数据库脚本)
282 4
|
11月前
|
前端开发 Java 关系型数据库
基于ssm的社区物业管理系统,附源码+数据库+论文+任务书
社区物业管理系统采用B/S架构,基于Java语言开发,使用MySQL数据库。系统涵盖个人中心、用户管理、楼盘管理、收费管理、停车登记、报修与投诉管理等功能模块,方便管理员及用户操作。前端采用Vue、HTML、JavaScript等技术,后端使用SSM框架。系统支持远程安装调试,确保顺利运行。提供演示视频和详细文档截图,帮助用户快速上手。
471 17
|
11月前
|
前端开发 Java 关系型数据库
基于ssm的超市会员(积分)管理系统,附源码+数据库+论文,包安装调试
本项目为简单内容浏览和信息处理系统,具备管理员和员工权限。管理员可管理会员、员工、商品及积分记录,员工则负责积分、商品信息和兑换管理。技术框架采用Java编程语言,B/S架构,前端使用Vue+JSP+JavaScript+Css+LayUI,后端为SSM框架,数据库为MySQL。运行环境为Windows,JDK8+Tomcat8.5,非前后端分离的Maven项目。提供演示视频和详细文档,购买后支持免费远程安装调试。
512 19
|
11月前
|
前端开发 JavaScript Java
[Java计算机毕设]基于ssm的OA办公管理系统的设计与实现,附源码+数据库+论文+开题,包安装调试
OA办公管理系统是一款基于Java和SSM框架开发的B/S架构应用,适用于Windows系统。项目包含管理员、项目管理人员和普通用户三种角色,分别负责系统管理、请假审批、图书借阅等日常办公事务。系统使用Vue、HTML、JavaScript、CSS和LayUI构建前端,后端采用SSM框架,数据库为MySQL,共24张表。提供完整演示视频和详细文档截图,支持远程安装调试,确保顺利运行。
455 17

热门文章

最新文章