我正在尝试从现有的 derby 模式中提取 create table 语句。我可以通过这个获取所有的列和数据类型。
select * from SYS.SYSTABLES a inner join sys.SYSCOLUMNS b on a.TABLEID= b.REFERENCEID
这给了我表名、列名、数据类型、默认值、自动增量等。对于基本的表构建非常有用。它缺少约束和索引。
我可以通过以下方式获得有关约束的一些信息:
select a.*, b.TABLENAME from SYS.SYSCONSTRAINTS a inner join sys.SYSTABLES b on a.TABLEID = b.TABLEID
这将为我提供约束名称、它所在的表和类型。我不知道类型字母是什么意思。我也不确定这里有索引信息。
我想要的是与我可以从视图中得到的非常相似的东西。
select * from sys.SYSVIEWS
有一个名为 VIEWDEFINITION 的列将为我提供每个视图的创建语句。这对表格非常有用。
谢谢,