一、Database.sys.tables

为每个表对象返回一行,当前仅用于 sys.objects.type = U 的表对象。

列名 数据类型 说明
<继承的列>   有关此视图所继承列的列表,请参阅sys.objects (Transact-SQL)。
lob_data_space_id int 一个非零值,是保存此表的 text、ntext 和 image 数据的磁盘空间(文件组或分区架构)的 ID。
0 = 表不包含 text、ntext 或 image 数据。
filestream_data_space_id int 是 FILESTREAM 文件组或包含 FILESTREAM 文件组的分区方案的数据空间 ID。
若要报告 FILESTREAM 文件组的名称,请执行查询 SELECT FILEGROUP_NAME (filestream_data_space_id) FROM sys.tables。
sys.tables 可以按 filestream_data_space_id = data_space_id 与下列视图联接。
 
sys.filegroups
sys.partition_schemes
sys.indexes
sys.allocation_units
sys.fulltext_catalogs
sys.data_spaces
sys.destination_data_spaces
sys.master_files
sys.database_files
backupfilegroup(按 filegroup_id 联接)
max_column_id_used int 此表曾使用的最大列 ID。
lock_on_bulk_load bit 表被锁定于大容量加载。有关详细信息,请参阅 sp_tableoption (Transact-SQL)。
uses_ansi_nulls bit 创建表时,SET ANSI_NULLS 数据库选项设置为 ON。
is_replicated bit 1 = 使用快照复制或事务复制发布表。
has_replication_filter bit 1 = 表具有复制筛选器。
is_merge_published bit 1 = 使用合并复制发布表。
is_sync_tran_subscribed bit 1 = 使用立即更新订阅来订阅表。
has_unchecked_assembly_data bit 1 = 表包含的持久化数据依赖于上次 ALTER ASSEMBLY 期间其定义发生更改的程序集。在下一次成功执行 DBCC CHECKDB 或 DBCC CHECKTABLE 后将重置为 0。
text_in_row_limit int Text in row 的最大允许字节数。
0 = 未设置 Text in row 选项。有关详细信息,请参阅 sp_tableoption (Transact-SQL)。
large_value_types_out_of_row bit 1 = 超行存储大值类型。有关详细信息,请参阅 sp_tableoption (Transact-SQL)。
is_tracked_by_cdc bit 1 = 为表启用变更数据捕获。有关详细信息,请参阅 sys.sp_cdc_enable_table (Transact-SQL)。
lock_escalation tinyint 表的 LOCK_ESCALATION 选项的值如下:
0 = TABLE
1 = DISABLE
2 = AUTO
lock_escalation_desc nvarchar(60) 表的 lock_escalation 选项的文本说明。可能的值有:TABLE、DISABLE 和 AUTO。

二、Database.sys.tables

显示属于用户定义对象和系统对象的所有列的联合。

列名 数据类型 说明
object_id int 此列所属对象的 ID。
name sysname 列的名称。  在对象中是唯一的。 
column_id int 列的 ID。  在对象中是唯一的。 
列 ID 可以不按顺序排列。
system_type_id tinyint 列的系统类型 ID。
user_type_id int 用户定义的列类型的 ID。
sys.types catalog view on this column.' data-guid="b0b47381e6de7b9b4c9a2d8419e6e4da">若要返回该类型的名称,请在该列中联接到 sys.types 目录视图。
max_length smallint 列的最大长度(字节)。
varchar(max), nvarchar(max), varbinary(max), or xml." data-guid="0c77804b7dd62539ef8a07509467c2a2">-1 = 列数据类型为varchar(max)nvarchar(max)varbinary(max)xml
text columns, the max_length value will be 16 or the value set by sp_tableoption 'text in row'." data-guid="98d994a86bf9798d86ac9709e4af7160">对于 text 列,max_length 值为 16 或 sp_tableoption 'text in row' 设置的值。
precision tinyint 如果列包含的是数值,则为该列的精度;否则为 0。
scale tinyint 如果列包含的是数值,则为列的小数位数;否则为 0。
collation_name sysname 如果列包含的是字符,则为该列排序规则的名称;否则为 NULL。
is_nullable bit 1 = 列可为空。
is_ansi_padded bit 1 = 如果列为字符、二进制或变量类型,则该列使用 ANSI_PADDING ON 行为。
0 = 列不是字符、二进制或变量类型。
is_rowguidcol bit 1 = 列为声明的 ROWGUIDCOL。
is_identity bit 1 = 列具有标识值
is_computed bit 1 = 列为计算列。
is_filestream bit 1 = 列声明使用 Filestream 存储。
is_replicated bit 1 = 列已复制。
is_non_sql_subscribed bit 1 = 列具有非 SQL Server 订阅服务器。
is_merge_published bit 1 = 列已合并发布。
is_dts_replicated bit 1 = 使用 SSIS 复制列。
is_xml_document bit 1 = 内容为完整的 XML 文档。
0 = 内容是文档片段,或列的数据类型不是 XML。
xml_collection_id int xml and the XML is typed." data-guid="311ce97a424bdda8c74254759fd38936">如果列是 xml 并且已键入 XML,则其值为非零值。  该值将是包含列的验证 XML 架构命名空间的集合的 ID。 
0 = 没有 XML 架构集合。
default_object_id int sys.sp_bindefault, or an in-line, column-level DEFAULT constraint.' data-guid="afbc8a31feda9962fdda53edf35a0b83">默认对象的 ID,无论该对象是独立的 sys.sp_bindefault 还是内联的列级 DEFAULT 约束。  内联列级默认对象的 parent_object_id 列是对该表本身的反引用。
0 = 无默认值。
rule_object_id int sys.sp_bindrule. ' data-guid="0bb3f24933b0f4c57475ea0934d6695c">使用 sys.sp_bindrule 绑定到列的独立规则的 ID。
0 = 无独立规则。
sys.check_constraints (Transact-SQL).' data-guid="e337ec327bbb0ba2240080ad6290d96d">有关列级 CHECK 约束,请参阅 sys.check_constraints (Transact-SQL)。
is_sparse bit 1 = 列为稀疏列。  有关详细信息,请参阅使用稀疏列。
is_column_set bit 1 = 列为列集。  有关详细信息,请参阅使用列集。

三、type_name

TYPE_NAME ( type_id )

返回指定类型 ID 的未限定的类型名称。

可以使用sys.types表达到同样效果:Select * From Sys.types

四、SQL 语句

Select 
  A.name As 'Table Name', B.name As 'Column Name',
  type_name(B.user_type_id) As 'Data Type', B.max_length,
  B.precision, scale, is_nullable, is_identity
From sys.tables A
Left Join sys.all_columns B On A.object_id = B.object_id
Order By A.object_id,B.column_id

查询数据库的所有列信息 sys.all_columns的更多相关文章

  1. 【mysql元数据库】使用information_schema.tables查询数据库和数据表信息

    概述 对于mysql和Infobright等数据库,information_schema数据库中的表都是只读的,不能进行更新.删除和插入等操作,也不能加触发器,因为它们实际只是一个视图,不是基本表,没 ...

  2. (转)【mysql元数据库】使用information_schema.tables查询数据库和数据表信息 ---数据记录大小统计

    转:https://www.cnblogs.com/ssslinppp/p/6178636.html https://segmentfault.com/q/1010000007268994?_ea=1 ...

  3. SQL Server中查询数据库及表的信息语句

    /* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...

  4. oracle查询数据库最大连接数等信息

    .当前的数据库连接数 select count(*) from v$process where program='ORACLE.EXE(SHAD)'; .数据库允许的最大连接数 select valu ...

  5. SQL Server 查询数据库表的列数

    select count(*) from sysobjects a join syscolumns b on a.id=b.id where a.name='表名' go

  6. 查询数据库对象的DDL信息

    表的DDL select dbms_metadata.get_ddl('HBBL','TABLE','AGREEMENT_MIRROR') from dual:

  7. MSSQL·查询数据库中所有索引的相关信息

    阅文时长 | 0.45分钟 字数统计 | 784字符 主要内容 | 1.引言&背景 2.声明与参考资料 『MSSQL·查询数据库中所有索引的相关信息』 编写人 | SCscHero 编写时间 ...

  8. [置顶] oracle 快速查询数据库各种信息、及转换对应java代码

    1 查询表中数据量 select 'select '||''''||t.TABLE_NAME||''''||' as table_name, count(*) from '|| t.TABLE_NAM ...

  9. SQL Server —— 查询数据库、表、列等

    一.查询数据库(sys.databases —— select *from sys.databases where name='<数据库名>') select *from sys.data ...

随机推荐

  1. Nagios+InfluxDB+Grafana

    1. 概述 Nagios负责收集数据,是一款开源的免费网络监视工具. influxDB负责存储数据,是一个开源的时间序列数据库.比较适合存储监控或者部署记录这些时序数据. Grafana负责数据的图形 ...

  2. [转载] Linux 下产生和调试core文件

    原地址:http://blog.csdn.net/shaovey/article/details/2744487 linux下如何产生core,调试core 在程序不寻常退出时,内核会在当前工作目录下 ...

  3. react-dnd使用介绍

    核心API 想要灵活使用,就先知道几个核心API DragSource 用于包装你需要拖动的组件,使组件能够被拖拽(make it draggable) DropTarget 用于包装接收拖拽元素的组 ...

  4. HTML中DOM元素的子节点为空?!firstChild, lastChild, childeNodes[]为空

  5. 洛谷P5158 【模板】多项式快速插值

    题面 传送门 前置芝士 拉格朗日插值,多项式多点求值 题解 首先根据拉格朗日插值公式我们可以暴力\(O(n^2)\)插出这个多项式,然而这显然是\(gg\)的 那么看看怎么优化,先来看一看拉格朗日插值 ...

  6. BZOJ3510 首都

    题目描述 在X星球上有N个国家,每个国家占据着X星球的一座城市.由于国家之间是敌对关系,所以不同国家的两个城市是不会有公路相连的. X星球上战乱频发,如果A国打败了B国,那么B国将永远从这个星球消失, ...

  7. ArchLinux 下 OpenSSH 高级运用

    00x0.相关介绍 OpenSSH(OpenBSD Secure Shell)使用 SSH 通过计算机网络加密通信的实现. 它是替换由 SSH Communications Security 所提供的 ...

  8. 解决wordcloud的一个error:Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27

    环境: 操作系统:Windows 7 64位 语言:Python 2.7.13 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:17:26) w ...

  9. python 学习(pip工具的安装)

    mac 电脑上使用终端命令 curl https://bootstrap.pypa.io/get-pip.py | python3 基于Python 3 pip --version pip3 list ...

  10. P1975 [国家集训队]排队 线段树套平衡树维护动态逆序对查询

    $ \color{#0066ff}{ 题目描述 }$ 排排坐,吃果果,生果甜嗦嗦,大家笑呵呵.你一个,我一个,大的分给你,小的留给我,吃完果果唱支歌,大家乐和和. 红星幼儿园的小朋友们排起了长长地队伍 ...