Sybase ASA 12中使用SQL查询表信息

本文介绍如何使用SQL语句从Sybase ASA 12数据库的系统表中查询表的元数据信息,包括表名、所有者、类型及注释等。

在Sybase central工具中,我们经常能看到如下页面:

wKiom1gRyE_zM-JyAABH3iPUDEM213.png

昨天正巧有个客户需要导出这么一份table的数据,于是我写了如下SQL语句来查询table信息:

1
2
3
4
5
6
7
8
9
10
SELECT 
     tbl.table_name  AS  "Name"
     usr.user_name  AS  "Owner"
     'Table'  AS  Type,  --因为查询的是Table的信息,而非View的,所以Type列中的数据一直都是'Table',这里就hard code了
     remarks  AS  "Comment"
FROM  sys.SYSTABLE  AS  tbl
LEFT  JOIN  sys.SYSUSER  AS  usr  ON  usr.user_id = tbl.creator
WHERE  creator  IN  (
     SELECT  creator  FROM  sys.SYSTABLE  WHERE  table_name= 'zip2kv'  --我们知道其中一个表的表名,所以直接查询systable就好了,否则还得去查db表
);


上面这一堆写的啥东东??配图被51CTO弄丢了,时隔这么久,连我自己都不知道写的啥了。下面整理一下,也许还有点参考价值。


Sybase ASA 12数据库中存有系统表,这些系统表中记录了业务数据库(用户因为业务需要自行创建的数据库)中的Meta信息。比如,系统的db表中会记录当前Sybase ASA上存在的所有数据库名称。而,sys.SYSTABLE顾名思义,就是SYSTABLE系统表中保存有Sybase ASA数据库管理系统中所有的表的相关定义信息。几乎所有你可以使用的Meta信息都记录在以sys为schema的系统表中,只要对应Sybase ASA的文档自己翻找一下,应该就能找到你想要的信息。


本文转自 rickqin 51CTO博客,原文链接:http://blog.51cto.com/rickqin/1866418

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值