java - 如何在 Java 中列出 Sqlite3 数据库中的表名

标签 java php sqlite

我在 java 应用程序中使用 sqlite3 数据库。如何以编程方式获取数据库中所有表的名称?我也尝试过 google 和 stackoverflow,但目前还找不到简单的解决方案。这是我在 PHP 中使用的 MySqli 代码,我正在 Java-Sqlite3 中尝试类似的方法

mysqli_select_db($conn, $database);
$res = mysqli_query($conn, "SHOW TABLES FROM " . $database . "");
while($cRow = mysqli_fetch_array($res, MYSQL_NUM)) {

    $namm=$cRow[0];


    $query = "SELECT COUNT(*) FROM " . $namm . "";
    $result = mysqli_query($conn,$query);
    $rows = mysqli_fetch_row($result);
    $namk = $rows[0];

    echo "<li type='square' style='margin-bottom:3px;'>" . $cRow[0] . " (" . $namk . ")</li>";
}
mysqli_close($conn);

最佳答案

您可以使用 JDBC 的内置 API 来探索数据库元数据:

try (Connection conn = DriverManager.getConnection("jdbc:sqlite:sample.db")) {
    ResultSet rs = conn.getMetaData().getTables(null, null, null, null));
    while (rs.next()) {
        System.out.println(rs.getString("TABLE_NAME"));
    }
}

关于java - 如何在 Java 中列出 Sqlite3 数据库中的表名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50714123/

相关文章:

java - 如何在没有大量加载时间和大量内存使用的情况下滚动浏览大型数据库

java - 从 EditTexts 添加新项目到 SQLite 数据库时出错

java - 将excel文件复制到基于java中当前日期创建的文件夹中

java - 如何编写以下场景的正则表达式模式

java - 序列化兼容性 Java 7/8

java - FileWriter 使用什么异常

php - 将邮件正文转换为 UTF-8

php - MySQL/PHP/HTML 如何在分层下拉菜单中插入子项?

php - Chrome 中的 JavaScript 问题

python - 如何重新初始化sqlite3中SELECT查询结果集中的行索引计数?