查询数据库的所有列信息 sys.all_columns
一、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的更多相关文章
- 【mysql元数据库】使用information_schema.tables查询数据库和数据表信息
概述 对于mysql和Infobright等数据库,information_schema数据库中的表都是只读的,不能进行更新.删除和插入等操作,也不能加触发器,因为它们实际只是一个视图,不是基本表,没 ...
- (转)【mysql元数据库】使用information_schema.tables查询数据库和数据表信息 ---数据记录大小统计
转:https://www.cnblogs.com/ssslinppp/p/6178636.html https://segmentfault.com/q/1010000007268994?_ea=1 ...
- SQL Server中查询数据库及表的信息语句
/* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...
- oracle查询数据库最大连接数等信息
.当前的数据库连接数 select count(*) from v$process where program='ORACLE.EXE(SHAD)'; .数据库允许的最大连接数 select valu ...
- SQL Server 查询数据库表的列数
select count(*) from sysobjects a join syscolumns b on a.id=b.id where a.name='表名' go
- 查询数据库对象的DDL信息
表的DDL select dbms_metadata.get_ddl('HBBL','TABLE','AGREEMENT_MIRROR') from dual:
- MSSQL·查询数据库中所有索引的相关信息
阅文时长 | 0.45分钟 字数统计 | 784字符 主要内容 | 1.引言&背景 2.声明与参考资料 『MSSQL·查询数据库中所有索引的相关信息』 编写人 | SCscHero 编写时间 ...
- [置顶] oracle 快速查询数据库各种信息、及转换对应java代码
1 查询表中数据量 select 'select '||''''||t.TABLE_NAME||''''||' as table_name, count(*) from '|| t.TABLE_NAM ...
- SQL Server —— 查询数据库、表、列等
一.查询数据库(sys.databases —— select *from sys.databases where name='<数据库名>') select *from sys.data ...
随机推荐
- C# 读Autofac源码笔记(2)
刚看了下Autofac属性注入的源码 首先看看WithProperty方法 image.png Autofac将我们的属性值,存在了一个list集合中 image.png 然后将这个集合传递到 ...
- repo搭建
[root@op-yum01]# cat /home/work/yumdata/rsync-reposync.sh #!/bin/bash #Purpose: Sync centos7 repos v ...
- 小记 Linux 之 Vim
小记 Linux 之 Vim 使用vim用来进行文本流查询,是非常重要的部分. 技巧一:使用 '#' 系统将列出文档相同字符,在代码时很重要. 技巧二:使用 ']I' 具体操作是先使用 ? 或 \ 进 ...
- expect--脚本实现免交互命令
转自:http://blog.51cto.com/lizhenliang/1607723 注意:使用expect脚本时,需要把脚本添加执行权限,然后./test.sh直接执行,不能用sh或者sourc ...
- 现代 JavaScript 框架存在的主要原因
简评:现代 JavaScript 框架的出现最主要是解决哪个问题?这篇文章很好的解释了这个问题. 我见过许多人盲目地使用像 React,Angular 或 Vue.js 这样的现代框架.这些框架提供了 ...
- dbproxy-id生成器
id生成器使用的是snowflake, 需要执行 snowflake_init(region_id, worker_id); 而region_id和worker_id是在配置文件中配置的 networ ...
- Intellij IDEA 封装Jar包(提示错误: 找不到或无法加载主类)
封装的过程如下: 然后准备打包 选择Build或者ReBuild即可. 但这样就会引起开始第一个图的问题.提示无法加载主类,另外一个情况就是所有的外部第三方jar包都被封装到一个jar包里面了. 那么 ...
- 主流服务器虚拟化技术简单使用——Hyper-V(一)
Tips:因为博客园排版的原因,图片显示不清晰,可以放大网页查看清晰图片. 如果系统使用物理机,需要在BIOS里面开启Intel VT-x(或AMD-V),如果是VMware workstation, ...
- 高阶篇:4.2.4)DFMEA严重度S(+分类e)、频度O、探测度D、风险优先系数RPN
本章目的:填写严重度S(+分类).频度O.探测度D,判定风险优先系数RPN. 1.前言 实施阶段中, 要求.潜在失效模式.潜在失效后果.潜在失效原因和现有设计控制措施等 5 个为基础项, 它们的分析是 ...
- Oracle汉字用户名数据脱敏长度不变,rpad函数使用
信息安全考虑,有时需要对用户名称进行数据脱敏. 针对Oracle数据库,进行取数数据脱敏处理 脱敏规则: 长度小于9个字符,只保留前3个汉字与后3个汉字,中间全部由*填充. 长度9个字及以上及奇数,隐 ...