SQLServer如何用T—SQL命令查询一个数据库中有哪些表

如题所述

所有用户表都存放在数据库中的系统对象表sysobjects中。

笔者以个人专用数据库为例:

select * 

from sysobjects      --系统对象表

where xtype = 'U'    --U表示所有用户表

执行后影响的行数为180(rows),如下图:

补充说明:另两个与之相关的系统对象表为(附下图)

1)syscolumns :数据表列名清单表;

2)systypes:各列数据类型表。

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-09-27

可用如下方法:

以sqlserver2008r2为例,可以从系统表中sys.objects来取字段。

1、打开SQL Server Managment Studio,并登陆到指定数据库。

2、新建一个查询窗口。

3、使用如下语句:

select name from sys.objects where type='U';

查询结果:

其中name列的内容就是当前登陆用户下的所有表名。

第2个回答  2013-08-25
1、查询SQL中的所有表: Select TABLE_NAME FROM 数据库名称.INFORMATION_SCHEMA.TABLES Where TABLE_TYPE='BASE TABLE' 执行之后,就可以看到数据库中所有属于自己建的表的名称 2、查询SQL中所有表及列: Select dbo.sysobjects.name as Table_name, dbo.syscolumns.name AS Column_name FROM dbo.syscolumns INNER JOIN dbo.sysobjects ON dbo.syscolumns.id = dbo.sysobjects.id Where (dbo.sysobjects.xtype = 'u') AND (NOT (dbo.sysobjects.name LIKE 'dtproperties')) 3、在Sql查询分析器,还有一个简单的查询方法: EXEC sp_MSforeachtable @command1="sp_spaceused '?'" 执行完之后,就可以看到数据库中所有用户表的信息 4、查询总存储过程数:select count(*) 总存储过程数 from sysobjects where xtype='p' 附:xtype类型D = 默认值或 DEFAULT 约束F = FOREIGN KEY 约束L = 日志FN = 标量函数IF = 内嵌表函数P = 存储过程PK = PRIMARY KEY 约束(类型是 K)RF = 复制筛选存储过程S = 系统表TF = 表函数TR = 触发器U = 用户表UQ = UNIQUE 约束(类型是 K)V = 视图X = 扩展存储过程 另:在sqlserver中取得某个数据库中所有表名的sql语句 select sysobjects.name from sysobjects.xtype ='U';SELECT nameWHERE (xtype = 'U') 在数据库的sysobjects表里有这个数据库全部表的信息, xtype值为'U'的就是表名 注意:一般通过上述方法获得全部用户表示都会有一个dtproperties表,SQLSERVER 默认它也是用户表,想要从用户表中排出,需要加上限定条件 status>0,即:select * from sysobjects where xtype='U' and status>0本回答被提问者采纳

SQLServer如何用T—SQL命令查询一个数据库中有哪些表
1、查询SQL中的所有表: Select TABLE_NAME FROM 数据库名称.INFORMATION_SCHEMA.TABLES Where TABLE_TYPE='BASE TABLE' 执行之后,就可以看到数据库中所有属于自己建的表的名称 2、查询SQL中所有表及列: Select dbo.sysobjects.name as Table_name, dbo.syscolumns.name AS Column_name FROM dbo.sys...

SQLServer如何用T-SQL命令查询一个数据库中有哪些表
1)syscolumns :数据表列名清单表;2)systypes:各列数据类型表。

查看sqlserver数据库有哪些表
1、首先我们打开数据库进入数据库。2、然后我们输入账号和密码,点击链接即可进入数据库中。3、然后我们在左侧树里找到要改的数据库。4、然后我们即可找到我们要查看的所有的表。5、然后我们右键点击设计。6、然后我们可以查看到数据库表单。

怎样用SQL语句查询一个数据库中的所有表?
1、打开Microsoft SQL Server 2012,选中需要查询所有表的数据库。2、选中需要查询的表后,点击左上角的“新建查询”,如图。3、点击“新建查询”后,会在右边弹出一个编辑框,我们需要在这里编写sql语句,来查询该数据库下的所有表结构。4、编写sql语句,点击“执行”,当然,这表语句我们可以根据实际...

sqlserver查询数据库中有多少个表
sqlserver查询数据库中有多少个表 sql server 数表:select count(1) from sysobjects where xtype='U'数视图:select count(1) from sysobjects where xtype='V'数存储过程 select count(1) from sysobjects where xtype='P'SELECT * FROM sysobjects WHERE (xtype = 'U')C = CHECK 约束 D =...

如何使用SqlServer查询数据库表所有或指定记录
首先,你需要登录SqlServer。登录完成后,打开SqlServer软件,接着展开需要查询的表,熟悉表中的字段名。之后,点击新建查询按钮。在查询窗口中输入SQL语句,系统会提供实时提示,帮助你更准确地编写代码。编写完成后,点击执行按钮,查询结果将显示在查询窗口中。SQL是Structured Query Language的缩写,意为结构...

怎样用SQL语句查询一个数据库中的所有表?
SQL : select * from information_schema.tables ORACLE: select table_name from user_tables ACCESS: select name from MSysObjects where type=1 and flags=0希望采纳谢谢~!

怎样用SQL语句查询一个数据库中的所有表
具体语法:TABLE table_name [ORDER BY column_name] [LIMIT number [OFFSET number]]其实从语法上看,可以排序,也可以过滤记录集,不过比较简单,没有 SELECT 那么强大。示例 1 简单的建一张很小的表 y1,记录数为 10 条。表 t1,插入 10 条记录 mysql-(ytt\/3305)->create table t1 (r1 ...

sqlserver 中找出某个数据库中非空表的名称,数据表有几百个,请用T-sq...
--这个根据存储区来判断select B.name from sys.partitions A inner join sys.objects Bon A.object_id=B.object_id where B.type='U' and A.rows>0--这个根据索引表来判断select B.name from sysindexes A inner join sys.objects Bon A.id=B.object_id where B.type='U' And...

在SQL SERVER查看数据库中有哪些数据表
扩展存储过程及相关的对象信息。PS:打开数据库use SALESgo在sql server 2000 中加载驱动和URL路径的语句是String driverName = com.microsoft.jdbc.sqlserver.SQLServerDriver;String url = jdbc:microsoft:sqlserver:\/\/localhost:1433; databasename=test;而sql server 2005 中加载驱动和url的语句则为 ...

相似回答