Mysql遍历数据库所有表、表名、表列名

java获取数据库的列名、类型等信息 - 岁月淡忘了谁 - 博客园  http://www.cnblogs.com/henuyuxiang/p/6155935.html

    private List<String> getDBTableName() throws Exception {
        List<String> tables = new ArrayList<>();
        String sql = "show tables";
        PreparedStatement pstmt = new DbUtil().getConn().prepareStatement(sql);
        ResultSet rs = pstmt.executeQuery();
        while(rs.next()) {
            tables.add(rs.getString(1));
        }
        return tables;
    }

    private Map<String, Map<String, String>> getTableColumnName(String tableName) throws Exception {
        String sql = "select * from " + tableName;
        PreparedStatement pstmt = new DbUtil().getConn().prepareStatement(sql);
        ResultSet rs = pstmt.executeQuery();
        ResultSetMetaData rsmd = pstmt.getMetaData();
        Map<String, String> tableColumnName_ClassName = new HashMap<>();
        for (int i = 0; i < rsmd.getColumnCount(); i++) {
            tableColumnName_ClassName.put(rsmd.getColumnName(i+1), rsmd.getColumnClassName(i+1));
        }
        Map<String, Map<String, String>> tableColumnNames = new HashMap<>();
        tableColumnNames.put(tableName, tableColumnName_ClassName);
        return tableColumnNames;
    }

    private void getDBAllTablesName_TableColumnsName() throws Exception {
        List<Map> DBAllTablesName_TableColumnsName = new ArrayList<>();
        List<String> tables = this.getDBTableName();
        for (String table : tables) {
            DBAllTablesName_TableColumnsName.add(this.getTableColumnName(table));
        }
        System.out.println(DBAllTablesName_TableColumnsName.toString());
    }
时间: 2024-07-28 18:43:40

Mysql遍历数据库所有表、表名、表列名的相关文章

mysql查询数据库中包含某字段(列名)的所有表

SELECT TABLE_NAME '表名',TABLE_SCHEMA '数据库名',ORDINAL_POSITION '顺序',COLUMN_NAME '字段',DATA_TYPE '类型' ,CHARACTER_OCTET_LENGTH '字节长',if(COLUMN_KEY='PRI',"√","") '主键',if(EXTRA='auto_increment',"√","") '自增长' ,if(IS_NULLABLE

mysql数据库导入导出 查询 修改表记录

mysql数据导入导出: 导入: 把系统的文件的内容,保存到数据库的表里 导入数据的基本格式:mysql> load data infile "文件名" into table 表名 fields terminated by '分隔符' lines terminated by '\n'; 实例:把系统用户信息保存到hydra01库下的userinfo表里 mysql> create table userinfo(name char(20),password char(1),u

mysql之数据库备份与恢复

备份与恢复 系统运行中,增量备份与整体备份. 例如:每周日整体备份一次,周一到周六只备份当天. 如果周五的数据出了问题,可以用周日的整体+周一.周二.周三.周四来恢复. 备份的工具: 有第三方的收费备份工具,目前我们所学的是系统自带的备份功能,mysqldump. mysqldump 可以导出 库.表. 备份: 例1:导出muagua库下面的goods表 mysqldump -u用户名 -p密码 库名 表1 表2 表3 > 地址/备份文件名称 导出的是建表语句及insert语句. 例2:导出mu

MySQL实验1: 新建一个名为 library 的数据库,包含 book、reader 两张表,根据自己的理解安排表的内容并插入数据。

数据表(table)简称表,它是数据库最重要的组成部分之一.数据库只是一个框架,表才是实质内容. 实验: 新建一个名为 library的数据库,包含 book.reader两张表,根据自己的理解安排表的内容并插入数据. 参考答案: 总结:经过本次实验,我们已经有了一个名为 library的数据库,其中有 book和reader两张表,我们已经向其中插入了一些数据. 原文地址:https://www.cnblogs.com/HongjianChen/p/10692764.html

MySQL(三) 数据库表的查询操作【重要】

序言 1.MySQL表操作(创建表,查询表结构,更改表字段等), 2.MySQL的数据类型(CHAR.VARCHAR.BLOB,等), 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对于INNER JOIN(内连接).LEFT JOIN(左连接).RIGHT JOIN(右连接)等一些复杂查询. 通过本节的学习,可以让你知道这些基本的复杂查询是怎么实现的,但是建议还是需要多动手去敲,虽然理解了什么是内连接等,但是从理解到学会,是完全不一样的感觉. --WH 一.单表查询 1.1.查

Mysql创建数据库与表,并添加表的数据

首先,在成功安装Mysql的基础上,进入到cmd窗口,登录我们的mysql管理系统. 登录方式:mysql -u用户名 -p密码 如果出现Welcome to...等一大堆英文指示,则说明成功进入了mysql系统. 因为我们不知道系统中有哪些库,所以要使用show databases 命令行,展示有那些库: 1.创建数据库与删除 CREATE DATABASE 数据库名 DEFAULT CHARSET='utf8'; Create database shiyan defaultcharset='

MySQL表名、列名区分大小写详解

前言:出现的问题 在本地数据库上执行修改银行卡没有报错 但线上执行报错 发现是表找不到,发现表名不对应该是card_cardinfo,但本地上没有问题,能正常修改,然后在数据库里测试,发现本地库(win)下表名不区分大小写,线上(linux)区分 在刚开始使用mysql的时候,刚开始是想要区分列名大小写的问题,在网上看到很多办法,于是就 1. linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写:   2. 2.用root帐号登录后,在/etc/my.cnf中的[mysql

使用MySQL Workbench建立数据库,建立新的表,向表中添加数据

初学数据库,记录一下所学的知识.我用的MySQL数据库,使用MySQL Workbench管理.下面简单介绍一下如何使用MySQL Workbench建立数据库,建立新的表,为表添加数据. 点击上图中的“加号”图标,新建一个连接, 如上图,先输入数据库的账号密码,帐号默认为root,填好密码后 点击“OK”,连接就建立好了,建立完成后,会出现一个长方形的框框,双击它,出现下图所示页面 点击图中的红圈里的按钮,新建一个Schema,即数据库(个人理解..),修改一下Name 的值,如  mydat

MySQL处理数据库和表的命令

MySQL是一个跨平台的开源关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库.学习如何管理和导航MySQL数据库和表是要掌握的首要任务. 一.处理数据库 1.查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定.mysql> show databases; 2.创建数据库 mysql>