如何在 DERBY DB 中描述和显示表格?

Posted

技术标签:

【中文标题】如何在 DERBY DB 中描述和显示表格?【英文标题】:how to describe and show table in DERBY DB? 【发布时间】:2013-12-07 04:49:50 【问题描述】:

我有这个 SQL 查询

1 : show tables
2 : desc tablename

但这似乎不是德比中的语法。

如何在 derby 中编写这些查询??

我想检查表的架构是否是主键。

如何在 websphere 中检查

【问题讨论】:

【参考方案1】:
    describe name_table;

它有效,它显示了您想知道的表格的所有描述、列和功能。

【讨论】:

【参考方案2】:

我知道没有JOINS 等的两种方法:

try 

    Connection databaseConnection;
    //Establish Connection Through Embedded Or Local Install
    DatabaseMetaData metaDataForDatabaseConnection = databaseConnection.getMetaData();
    ResultSet resultSetForTableNames = metaDataForDatabaseConnection.getTables(null, null, null, new String[]"TABLE");


    while (resultSetForTableNames.next()) 
        System.out.println(resultSetForTableNames.getString(3));
    

    //Close Resources As Necessary

catch (Exception e) 
    e.printStackTrace();

还有:

try    

    Connection databaseConnection;
    //Establish Connection Through Embedded Or Local Install
    Statement databaseStatement = databaseConnection.createStatement();
    ResultSet resultSet = databaseStatement.executeQuery("SELECT SYS.SYSTABLES.TABLENAME FROM SYS.SYSTABLES WHERE SYS.SYSTABLES.TABLETYPE = \'T\'");


    while (resultSet.next()) 

        System.out.println(resultSet.getString("TABLENAME"));
    

    //Close Resources As Necessary

catch (Exception e) 
    e.printStackTrace();

【讨论】:

【参考方案3】:

通过查询显示表格(no IJ):

select st.tablename  from sys.systables st LEFT OUTER join sys.sysschemas ss on (st.schemaid = ss.schemaid) where ss.schemaname ='APP'

通过查询显示列(no IJ):

select * from sys.syscolumns where referenceid = (select tableid from sys.systables where tablename = 'THE_TABLE') order by columnnumber**strong text**

【讨论】:

第一个命令允许获取表的全名,可以在 CLI 中修剪。这是一个强大的命令【参考方案4】:

严格来说,这不是 SQL。相反,这些是 IJ 命令,必须由 IJ 工具处理。

这是“描述”的文档:http://db.apache.org/derby/docs/10.10/tools/rtoolsijcomrefdescribe.html

这里是“显示表格”的文档:http://db.apache.org/derby/docs/10.10/tools/rtoolsijcomrefshow.html

您不在 Websphere 中运行这些命令,而是在 IJ 中运行它们。

【讨论】:

以上是关于如何在 DERBY DB 中描述和显示表格?的主要内容,如果未能解决你的问题,请参考以下文章

如果表不存在,如何使用 Derby Db 创建表

如何从 ksh 脚本执行 Derby DB 的 SQL 脚本

如何在可视化工具中配置 websphere portal 8 derby 数据库?

德比和日食。 “找不到主要”异常。如何将 Derby 添加到配置类路径?

删除 Derby DB 中的所有表

在 Eclipse 中开发 Apache Derby 应用程序