db2中用SQL能得到这样的信息吗?

huang_brid 2003-07-16 11:35:01
1)查询一个数据库中所有的表?
2)查询一个表的相关信息(列名、列长度、列数据类型等)?
3)查询一个表的关系(包刮表的相关约束名称、约束类型等)?
...全文
61 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ddvboy 2003-07-17
  • 打赏
  • 举报
回复
嘿嘿

DB2的系统表里这些都有的
自己看看可能还有别的收获
!
huang_brid 2003-07-17
  • 打赏
  • 举报
回复
有问题在来请教
huang_brid 2003-07-17
  • 打赏
  • 举报
回复
谢谢以上两位的回答,
db2boy 2003-07-17
  • 打赏
  • 举报
回复
不好意思写错了,第二条语句应该用单引号
2)select * from syscat.columns where tabschema='表的模式' and tabname='表的名称'

3)select * from SYSCAT.TABCONST where tabschema='表的模式' and tabname='表的名称'
CONSTNAME的值和对应的约束看下面
F = FOREIGN KEY K = CHECK P = PRIMARY KEY U = UNIQUE
db2boy 2003-07-17
  • 打赏
  • 举报
回复
2)select * from syscat.columns where tabschema="表的模式" and tabname="表的名称"
如果在java中,可以有专门的类来访问metadata
Mr_Bean 2003-07-17
  • 打赏
  • 举报
回复
1) select name from sysibm.systables;
2) describe select * from *** 或者查syscat.columns
3) syscat.checks 约束 syscat.references 引用
joneyzhou 2003-07-17
  • 打赏
  • 举报
回复
查询一个表的相关信息 DESCRIBE TABLE table_name
db2boy 2003-07-17
  • 打赏
  • 举报
回复
1)select * from syscat.tables where type='T'(注这样的结果包含系统表,如果不需要还要加谓词筛选)

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧