列出syBase中数据库的所有表

时间:2015-10-16 09:49:29

标签: sybase sybase-ase sybase-iq

在sql server 2012中我使用

USE myDatabase;
GO
SELECT  *
FROM    sys.objects
WHERE   type = 'U';

是否可以在syBase中执行相同操作?

3 个答案:

答案 0 :(得分:4)

为了获得当前数据库中所有表的列表,您可以通过type ='U'过滤sysobjects表,例如:

select convert(varchar(30),o.name) AS table_name
from sysobjects o
where type = 'U'
order by table_name

进一步Reference

以下是在MSSQLSQL Server database中获取所有表名称的示例:

USE test; //SELECT DATABASE
SELECT table_name FROM information_schema.tables WHERE table_type = 'base table'

或者您可以使用sys.tables从所选数据库中获取所有表名,如下面的SQL查询

所示
USE test; //SELECT DATABASE
SELECT * FROM sys.tables

关于如何从SQL Server中的数据库中查找所有表名的全部内容。

答案 1 :(得分:1)

对于SQL Anywhere 16,此查询工作正常。

从sys.systable中选择*。

它给出了table_names的列表以及诸如表id,表页数等信息。

答案 2 :(得分:0)

为了列出所有表和行数,可以使用以下查询。

select convert(varchar(30),o.name) AS table_name,
row_count(db_id(), o.id) AS row_count
from sysobjects o
where type = 'U'
order by table_name

要获取具有类似表名的表的列表,请使用以下查询。

此处table_name必须替换为您想要的名称。

select convert(varchar(30),o.name) AS table_name,
row_count(db_id(), o.id) AS row_count
from sysobjects o
where type = 'U' and o.name like '%table_name%'
order by table_name