2014-02-13 47 views

回答

5

获取表的列表是:

  1. 在isql:show tables;
  2. 作为一个正常的查询:

    SELECT a.RDB$RELATION_NAME 
    FROM RDB$RELATIONS a 
    WHERE RDB$SYSTEM_FLAG = 0 AND RDB$RELATION_TYPE = 0 
    
+0

的第二方法工作,虽然我不得不从方程 – Beacon80

+1

@ Beacon80中删除关系类型我使用的是Firebird 2.5,但这个列在旧版本(数据库结构版本)中不可用;如果您使用Firebird 2.5并且没有此列,则需要备份和恢复数据库。 –

+1

Brent Rowland的查询适用于旧版本(我的查询没有'RDB $ RELATION_TYPE = 0'也包含视图)。 –

4

我用:

SELECT RDB$RELATION_NAME FROM RDB$RELATIONS 
WHERE (RDB$SYSTEM_FLAG <> 1 OR RDB$SYSTEM_FLAG IS NULL) AND RDB$VIEW_BLR IS NULL 
ORDER BY RDB$RELATION_NAME;