在sql server 2012中我使用
USE myDatabase;
GO
SELECT *
FROM sys.objects
WHERE type = 'U';
是否可以在syBase中执行相同操作?
答案 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
以下是在MSSQL
或SQL 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