我们将在这里看到如何使用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)

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