我通常使用SQLDeveloper浏览数据库,但我无法使用hsqldb,我不知道哪些表已经创建... 我想这是一个供应商特定的问题,而不是普通的sql,但关键是:我怎样才能看到表格,以便我可以删除/改变它们?
答案 0 :(得分:40)
用于查询数据库元数据的ANSI SQL92标准包含在INFORMATION_SCHEMA数据结构中。
我不知道您的数据库是否支持此功能,但请尝试以下
SELECT *
FROM INFORMATION_SCHEMA.TABLES
在进一步研究中,似乎hsqldb确实支持INFORMATION_SCHEMA,但略有非标准命名。
所有表都有SYSTEM_前置,所以上面的例子会读取
SELECT *
FROM INFORMATION_SCHEMA.SYSTEM_TABLES
我无法对此进行测试,答案在sourceforge
上找到答案 1 :(得分:13)
太棒了,谢谢!正在网上搜索该信息。 这将仅获取表格的字段信息:
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
检索索引,主键信息和所有类似的东西。
得爱oo文件:p
答案 2 :(得分:4)
如果您在命令行中,可能需要尝试Hsqldb SqlTool,记录在http://hsqldb.org/doc/2.0/util-guide/sqltool-chapt.html
答案 3 :(得分:2)
当您在HSQLDB的命令行中点击“> sql”提示时,请使用“\ dt”命令。
答案 4 :(得分:1)
结帐DBVisualiser和SQuirreL SQL Client。这两个都支持hsqldb,以及用于编辑/查看/修改表的GUI。
答案 5 :(得分:0)
您使用hsql database manager
运行查询,是吗?
如果你使用它,下面可能会给出一些提示:
选择您的连接
HSQL DATABASE ENGINE SERVER
jdbc.hsqldb.jdbcDriver
jdbc:hsqldb:hsql://localhost/
然后你将浏览数据库。