【发布时间】:2015-01-30 12:28:30
【问题描述】:
我需要从 sybase ase 数据库中的所有用户表创建数据字典。我无法安装像 Sybase PowerDesigner 这样的工具,所以我必须使用 SQL 查询来实现。
我在论坛的帮助下编写了这个查询,以显示表名、列名、数据类型、大小和非空约束。但我无法找到该列是主键还是集群主键的一部分。
SELECT O.name as "Table",
C.name as "Column",
C.length as "Length",
T.name as "Datatype",
C.status as "Allow Null",
CASE C.status
WHEN 8 THEN 'NULL'
WHEN 0 THEN 'NOT NULL'
END as "NULLS"
FROM sysobjects O,
syscolumns C,
systypes T
WHERE O.id = C.id
AND O.type = "U" -- user tables only
AND C.usertype = T.usertype
ORDER BY O.name, C.colid
这里的任何人都可以帮我对所需的表进行必要的连接,以获得指示其主键状态的所需标志。我已经浏览了 syskeys 和 sysindexes 表格文档,但无法找到对我的目的有益的状态。
【问题讨论】:
-
有什么原因不能使用
ddlgen?
标签: sql sybase sap-ase data-dictionary