JDBC获取表的各列的基本信息

2024-01-26 06:48
文章标签 jdbc 基本 获取 信息 各列

本文主要是介绍JDBC获取表的各列的基本信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

很多时候,我们需要查看数据库中的数据表的每个列或部分列的属性,例如列名,数据类型,大小等,以下代码通过Java实现类获取指定表的各列信息,并将信息存储到ArrayList中。

public class MySQLHandle {//mysql驱动包名private static final String DRIVER_NAME = "com.mysql.jdbc.Driver";//数据库连接地址private static final String URL = "jdbc:mysql://localhost:3306/test";//用户名private static final String USER_NAME = "root";//密码private static final String PASSWORD = "rootroot";//数据库连接对象private static Connection connection;public static void main(String[] args) {}static {try {//加载mysql的驱动类Class.forName(DRIVER_NAME);} catch (Exception e) {e.printStackTrace();}}//构造函数,包括连接数据库等操作public MySQLHandle(){try {//加载mysql的驱动类Class.forName(DRIVER_NAME);//获取数据库连接connection = DriverManager.getConnection(URL, USER_NAME, PASSWORD);} catch (Exception e) {e.printStackTrace();connection = null;}}//带参数构造函数,用于指定参数连接数据库public MySQLHandle(String Database,String User,String Password){try {//加载mysql的驱动类Class.forName(DRIVER_NAME);//获取数据库连接connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/"+Database, User, Password);} catch (Exception e) {e.printStackTrace();connection = null;}}public Connection getConnection(){return connection;}public static void ReleaseConnect(){if (connection != null) {try {connection.close();} catch (SQLException e) {e.printStackTrace();}}}/*** @方法描述:执行Select查询语句* @param query 待执行的SQL查询语句* @return ResultSet 从数据库中查询的结果集*/public ResultSet ExecuteSQL(String query){ResultSet rs = null;try {if (query == null)return null;else {PreparedStatement prepareStatement = connection.prepareStatement(query);rs = prepareStatement.executeQuery();}}catch (Exception e) {e.printStackTrace();return null;}return rs;}/*** @方法描述:获取数据表的所有列属性* @param TableName 查找的数据表名* @return 返回列属性*/public ArrayList<ArrayList<String>> geyAttributesFromTable(String TableName){String sql="SELECT * FROM "+TableName+" limit 1";ArrayList<ArrayList<String>> list = new ArrayList();try{ResultSet rs=ExecuteSQL(sql);ResultSetMetaData rs_metaData = rs.getMetaData();while (rs.next()) {int count = rs_metaData.getColumnCount();for (int i=0; i<count; i++) {ArrayList<String> subList=new ArrayList<>(3);// 得到列的名称String columnName = rs_metaData.getColumnLabel(i + 1);//得到列的大小String columnSize =String.valueOf(rs_metaData.getColumnDisplaySize(i+1));//得到列的数据类型String columnType = rs_metaData.getColumnTypeName(i+1);subList.add(columnName);subList.add(columnType);subList.add(columnSize);list.add(subList);}}rs.close();return list;}catch (Exception e) {e.printStackTrace();return list;}}
}

 

这篇关于JDBC获取表的各列的基本信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/645962

相关文章

SpringMVC获取请求参数的方法

《SpringMVC获取请求参数的方法》:本文主要介绍SpringMVC获取请求参数的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下... 目录1、通过ServletAPI获取2、通过控制器方法的形参获取请求参数3、@RequestParam4、@

MySQL 中的 LIMIT 语句及基本用法

《MySQL中的LIMIT语句及基本用法》LIMIT语句用于限制查询返回的行数,常用于分页查询或取部分数据,提高查询效率,:本文主要介绍MySQL中的LIMIT语句,需要的朋友可以参考下... 目录mysql 中的 LIMIT 语句1. LIMIT 语法2. LIMIT 基本用法(1) 获取前 N 行数据(

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下:

Python Faker库基本用法详解

《PythonFaker库基本用法详解》Faker是一个非常强大的库,适用于生成各种类型的伪随机数据,可以帮助开发者在测试、数据生成、或其他需要随机数据的场景中提高效率,本文给大家介绍PythonF... 目录安装基本用法主要功能示例代码语言和地区生成多条假数据自定义字段小结Faker 是一个 python

golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法

《golang获取当前时间、时间戳和时间字符串及它们之间的相互转换方法》:本文主要介绍golang获取当前时间、时间戳和时间字符串及它们之间的相互转换,本文通过实例代码给大家介绍的非常详细,感兴趣... 目录1、获取当前时间2、获取当前时间戳3、获取当前时间的字符串格式4、它们之间的相互转化上篇文章给大家介

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa