java 显示数据库表_使用Java显示MySQL数据库中的所有表?

我们将在这里看到如何使用Java显示MySQL数据库中的所有表。您可以从MySQL使用show命令来获取MySQL数据库中的所有表。

假设我们的数据库为“测试”。Java代码如下所示,以显示数据库“ test”中的所有表名。

Java代码如下。在这里,MySQL和Java之间建立了连接-import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.DatabaseMetaData;

public class GetAllTables {

public static void main(String[] args) throws SQLException {

Connection conn = null;

try {

try {

Class.forName("com.mysql.jdbc.Driver");

} catch (Exception e) {

System.out.println(e);

}

conn = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/test", "Manish", "123456");

System.out.println("成功创建连接:");

} catch (Exception e) {

System.out.println(e);

}

ResultSet rs = null;

DatabaseMetaData meta = (DatabaseMetaData) conn.getMetaData();

rs = meta.getTables(null, null, null, new String[] {

"TABLE"

});

int count = 0;

System.out.println("所有表名都在测试数据库中:");

while (rs.next()) {

String tblName = rs.getString("TABLE_NAME");

System.out.println(tblName);

count++;

}

System.out.println(count + " Rows in set ");

}

}

以下是显示数据库测试中所有表的输出-Wed Dec 12 14:55:28 IST 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL = false, or set useSSL = true and provide truststore for server certificate verification.

成功创建连接:

所有表名都在测试数据库中:

add30minutesdemo

addcolumn

addoneday

agecalculatesdemo

aliasdemo

allcharacterbeforespace

allownulldemo

appendingdatademo

autoincrementdemo

betweendatedemo

bigintandintdemo

bigintdemo

bookdatedemo

changecolumnpositiondemo

changeenginetabledemo

charsetdemo

concatenatetwocolumnsdemo

constraintdemo

cumulativesumdemo

currentdatetimedemo

customers

dateasstringdemo

dateformatdemo

dateinsertdemo

datesofoneweek

datetimedemo

dayofweekdemo

decimaltointdemo

decrementdemo

defaultdemo

deleteallfromtable

deletemanyrows

destination

differencetimestamp

distinctdemo

employee

employeedesignation

findlowercasevalue

generatingnumbersdemo

gmailsignin

groupbytwofieldsdemo

groupmonthandyeardemo

highestidorderby

highestnumberdemo

ifnulldemo

increasevarchardemo

insert

insertignoredemo

insertwithmultipleandsigle

int11demo

intvsintanythingdemo

lasttwocharacters

likebinarydemo

likedemo

maxlengthfunctiondemo

moviecollectiondemo

myisamtoinnodbdemo

newtableduplicate

notequalsdemo

nowandcurdatedemo

nthrecorddemo

nullandemptydemo

orderbycharacterlength

orderbynullfirstdemo

orderindemo

originaltable

parsedatedemo

passinganarraydemo

persons

prependstringoncolumnname

pricedemo

queryresultdemo

replacedemo

rowexistdemo

rowpositiondemo

rowwithsamevalue

safedeletedemo

searchtextdemo

selectdataonyearandmonthdemo

selectdistincttwocolumns

selectdomainnameonly

sha256demo

skiplasttenrecords

sortcolumnzeroatlastdemo

storedproctable

stringreplacedemo

stringtodate

student

studentdemo

studentmodifytabledemo

studenttable

subtract3hours

temporarycolumnwithvaluedemo

timetosecond

timetoseconddemo

toggledemo

toogledemo

truncatetabledemo

updatealldemo

updatevalueincrementally

wheredemo

wholewordmatchdemo

zipcodepadwithzerodemo

103 Rows in set

要进行交叉检查,请使用MySQL show命令显示数据库“ test”中的所有表。查询如下-mysql> use test;

Database changed

mysql> show tables;

以下是输出-+------------------------------+

| Tables_in_test               |

+------------------------------+

| add30minutesdemo             |

| addcolumn                    |

| addoneday                    |

| agecalculatesdemo            |

| aliasdemo                    |

| allcharacterbeforespace      |

| allownulldemo                |

| appendingdatademo            |

| autoincrementdemo            |

| betweendatedemo              |

| bigintandintdemo             |

| bigintdemo                   |

| bookdatedemo                 |

| changecolumnpositiondemo     |

| changeenginetabledemo        |

| charsetdemo                  |

| concatenatetwocolumnsdemo    |

| constraintdemo               |

| cumulativesumdemo            |

| currentdatetimedemo          |

| customers                    |

| dateasstringdemo             |

| dateformatdemo               |

| dateinsertdemo               |

| datesofoneweek               |

| datetimedemo                 |

| dayofweekdemo                |

| decimaltointdemo             |

| decrementdemo                |

| defaultdemo                  |

| deleteallfromtable           |

| deletemanyrows               |

| destination                  |

| differencetimestamp          |

| distinctdemo                 |

| employee                     |

| employeedesignation          |

| findlowercasevalue           |

| generatingnumbersdemo        |

| gmailsignin                  |

| groupbytwofieldsdemo         |

| groupmonthandyeardemo        |

| highestidorderby             |

| highestnumberdemo            |

| ifnulldemo                   |

| increasevarchardemo          |

| insert                       |

| insertignoredemo             |

| insertwithmultipleandsigle   |

| int11demo                    |

| intvsintanythingdemo         |

| lasttwocharacters            |

| likebinarydemo               |

| likedemo                     |

| maxlengthfunctiondemo        |

| moviecollectiondemo          |

| myisamtoinnodbdemo           |

| newtableduplicate            |

| notequalsdemo                |

| nowandcurdatedemo            |

| nthrecorddemo                |

| nullandemptydemo             |

| orderbycharacterlength       |

| orderbynullfirstdemo         |

| orderindemo                  |

| originaltable                |

| parsedatedemo                |

| passinganarraydemo           |

| persons                      |

| prependstringoncolumnname    |

| pricedemo                    |

| queryresultdemo              |

| replacedemo                  |

| rowexistdemo                 |

| rowpositiondemo              |

| rowwithsamevalue             |

| safedeletedemo               |

| searchtextdemo               |

| selectdataonyearandmonthdemo |

| selectdistincttwocolumns     |

| selectdomainnameonly         |

| sha256demo                   |

| skiplasttenrecords           |

| sortcolumnzeroatlastdemo     |

| storedproctable              |

| stringreplacedemo            |

| stringtodate                 |

| student                      |

| studentdemo                  |

| studentmodifytabledemo       |

| studenttable                 |

| subtract3hours               |

| temporarycolumnwithvaluedemo |

| timetosecond                 |

| timetoseconddemo             |

| toggledemo                   |

| toogledemo                   |

| truncatetabledemo            |

| updatealldemo                |

| updatevalueincrementally     |

| wheredemo                    |

| wholewordmatchdemo           |

| zipcodepadwithzerodemo       |

+------------------------------+

103 rows in set (0.01 sec)

如您在上面所看到的,它们两者都给出相同的结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 访问 MySQL 数据库结构信息,可以通过以下步骤实现: 1. 加载 MySQL 驱动程序 在使用 Java 访问 MySQL 数据库之前,需要先加载 MySQL 驱动程序。可以使用 Class.forName() 方法加载 MySQL 驱动程序,示例代码如下: ``` Class.forName("com.mysql.jdbc.Driver"); ``` 2. 获取数据库连接 在加载 MySQL 驱动程序之后,需要获取数据库连接。可以使用 DriverManager.getConnection() 方法获取 MySQL 数据库连接,示例代码如下: ``` Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password"); ``` 其,jdbc:mysql://localhost:3306/test 是连接 MySQL 数据库的 URL,root 是用户名,password 是密码。 3. 获取数据库元数据 获取数据库连接之后,可以通过 Connection.getMetaData() 方法获取数据库元数据。数据库元数据包含了数据库所有的信息,示例代码如下: ``` DatabaseMetaData metaData = conn.getMetaData(); ``` 4. 获取结构信息 通过 DatabaseMetaData 对象,可以获取数据库所有的信息。示例代码如下: ``` ResultSet rs = metaData.getTables(null, null, null, new String[]{"TABLE"}); while (rs.next()) { String tableName = rs.getString("TABLE_NAME"); System.out.println("Table name: " + tableName); ResultSet columns = metaData.getColumns(null, null, tableName, null); while (columns.next()) { String columnName = columns.getString("COLUMN_NAME"); String dataType = columns.getString("TYPE_NAME"); int columnSize = columns.getInt("COLUMN_SIZE"); System.out.println("Column name: " + columnName + ", data type: " + dataType + ", column size: " + columnSize); } } ``` 在上述代码,首先通过 metaData.getTables() 方法获取所有的 ResultSet 对象,然后遍历 ResultSet 对象,获取每个名。接着,通过 metaData.getColumns() 方法获取每个的列信息,遍历 ResultSet 对象,获取每个列的列名、数据类型和列大小。 以上就是在 Java 访问 MySQL 数据库结构信息的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值