2009-02-26 199 views
32

我通常使用SQLDeveloper来浏览数据库,但我无法让它与hsqldb一起工作,我不知道哪些表已经创建好了......我想这是一个供应商特定的问题,而不是普通的sql,但是重点是:我怎样才能看到桌子,以便我可以放下/改变它们?如何查看HSQLDB数据库中的所有表?

+0

你正在使用什么数据库。答案很大。 – 2009-02-26 17:30:56

+1

对不起,我添加了一个标签,但我忘了提及我正在使用Hsqldb – nobody 2009-02-26 17:35:37

+1

老实说,标题告诉我什么是BDMS。 – will 2015-03-22 07:45:46

回答

40

查询数据库元数据的ANSI SQL92标准包含在INFORMATION_SCHEMA数据结构中。

我不知道你的数据库是否支持这个或没有,但请尝试以下

SELECT * 
FROM INFORMATION_SCHEMA.TABLES 

在进一步的研究似乎HSQLDB不支持INFORMATION_SCHEMA但略有非标准命名。

所有的桌子都SYSTEM_预先考虑到他们,所以上面的例子会读

SELECT * 
FROM INFORMATION_SCHEMA.SYSTEM_TABLES 

我有测试此现象绝不和答案上sourceforge

12

太棒了,谢谢!已经在网上搜索这些信息。 这将只取回你的表字段信息:

SELECT TABLE_NAME, COLUMN_NAME, TYPE_NAME, COLUMN_SIZE, DECIMAL_DIGITS, IS_NULLABLE FROM INFORMATION_SCHEMA.SYSTEM_COLUMNS WHERE TABLE_NAME NOT LIKE 'SYSTEM_%' 

可以检索索引,主键信息,从INFORMATION_SCHEMA.SYSTEM_TABLES所有kindza东西。 得爱oo文档:p

0

您运行查询使用hsql database manager,是吗? 如果你使用这个,下面可能会给出一些提示:

选择连接

  1. 类型:HSQL DATABASE ENGINE SERVER
  2. 司机:jdbc.hsqldb.jdbcDriver
  3. 网址:jdbc:hsqldb:hsql://localhost/

,那么你将浏览数据库。

3

如果你在命令行中,你可能会想尝试的HSQLDB虽然SqlTool,在http://hsqldb.org/doc/2.0/util-guide/sqltool-chapt.html

  • 记录把你的数据库连接信息中“〜/ sqltool.rc的”,然后选择你想要的任何DBNAME如果知道,请替换正确的用户名和密码。
    • URLID DBNAME
    • URL JDBC:HSQLDB:/路径/到/ HSQL /数据库
    • 用户名SA
    • 密码
  • 安装与工具:apt-get的安装HSQLDB-utils的( Ubuntu的)
  • 连接带:在Ubuntu
  • 提示其他系统的HSQLDB,虽然SqlTool DBNAME#:Java的罐子YourHsqlJar.jar DBNAME
  • 显示表格:\ dt
  • 显示列:\ d TABLENAME
  • 标准查询如:SELECT * FROM ...;
  • 编辑(追加),与去年命令:一
  • 退出有:\ q
  • 查看特殊命令为:\?要么 :?

祝你好运!

1

当您在HSQLDB的命令行中点击“> sql”提示时,使用“\ dt”命令。