原文:SQL Server系统函数:元数据函数


1、列的长度、列名


  1. --列的长度
  2. select COL_LENGTH('dbo.wct', --表名
  3. 'wcid') --列名
  4. --列名
  5. select COL_NAME(object_id('dbo.wct'), --表ID
  6. 1) --列ID

columnProperty函数返回有关列过程参数的信息:


  1. select ColumnProperty(object_id('dbo.wct'), --表ID
  2. 'wcid', --列名
  3. 'precision') --属性名

列属性:

ColumnId

AllowsNull 

Precision

Scale

IsComputed

IsSparse

IsCursorType 

IsColumnSet

IsIdentity

IsRowGuidCol

FullTextTypeColumn 

IsFulltextIndexed

IsIdNotForRepl 

IsIndexable

IsOutParam

IsXmlIndexable

IsDeterministic

IsPrecise

IsSystemVerified

SystemDataAccess 

UserDataAccess 

UsesAnsiTrim

2、数据库


  1. --DatabasePropertyEx函数返回指定数据库中指定选项的属性,要返回更多可以用sys.databases目录视图
  2. select DatabasePropertyEx('master', --数据库名
  3. 'IsAutoClose') --属性名
  4. --db_id函数返回指定数据库名称对应的id
  5. select db_id('master')
  6. --db_name函数返回指定数据库id号的数据库名称
  7. select db_name(1)

3、文件与文件组


  1. --file_id函数返回指定逻辑文件名对应的id,以后版本将删除此函数
  2. select file_id('wc_fg5_1') --文件逻辑名
  3. --建议采用此函数
  4. select FILE_IDEX('wc_fg5_1')
  5. --filegroup_id函数返回指定文件组名称对应的id
  6. select filegroup_id('wc_fg5')
  7. --filegroup_name函数返回指定文件组id对应的文件组名称
  8. select filegroup_name(6)
  9. --FilegroupProperty函数返回指定文件组中相应选项的属性,
  10. --要返回更多可以用sys.filegroups目录视图
  11. select FilegroupProperty('wc_fg5',
  12. 'IsUserDefinedFG') --是否是用户定义的文件组
  13. select FilegroupProperty('wc_fg5',
  14. 'IsDefault') --是否是默认文件组
  15. select FilegroupProperty('wc_fg5',
  16. 'IsReadOnly') --是否只读
  17. --file_name函数返回指定逻辑文件对应的逻辑文件名称
  18. select file_name(8)
  19. --FileProperty函数返回指定逻辑文件相应选项的属性
  20. select fileproperty('wc_data',
  21. 'IsPrimaryFile')
  22. select fileproperty('wc_fg5_1',
  23. 'IsReadOnly')
  24. select fileproperty('wc_fg5_1',
  25. 'SpaceUsed') --返回在文件中分配的页数
  26. select fileproperty('wc_log1',
  27. 'IsLogFile') --是否日志文件

4、对象


  1. --object_id函数返回架构范围内对象的数据库对象id
  2. select object_id('master.dbo.spt_values')
  3. select object_id('master.dbo.spt_values','U')
  4. --object_name函数返回架构范围内对象id对应的数据库对象名称
  5. select object_name(1115151018)
  6. --objectPropertyEx函数返回架构范围内对象相应选项的属性,返回更多可以用sys.objects系统目录
  7. select ObjectPropertyex(object_id('spt_values'),
  8. 'IsTable')
  9. select ObjectPropertyex(object_id('wct'),
  10. 'TableHasForeignKey')--有FOREIGN KEY约束的表
  11. select ObjectPropertyex(object_id('wct'),
  12. 'TableUpdateTriggerCount')--update触发器的个数
  13. select ObjectPropertyex(object_id('wct'),
  14. 'IsTrigger') --是否是触发器
  15. select ObjectPropertyex(object_id('wct'),
  16. 'TableHasPrimaryKey') --对象是否有主键

5、索引


  1. --索引中指定键id对应的列名
  2. select INDEX_COL('wc.dbo.wcT', --数据库.架构.表
  3. 1, --索引id
  4. 1) --索引中键的id
  5. --索引键的属性
  6. select INDEXKEY_PROPERTY(OBJECT_ID('wc.dbo.wcT'), --对象id
  7. 1, --索引id
  8. 2, --键id
  9. 'ColumnId') --对应到表中的列id
  10. select INDEXKEY_PROPERTY(OBJECT_ID('wc.dbo.wcT'), --对象id
  11. 1, --索引id
  12. 2, --键id
  13. 'IsDescending') --是否降序
  14. --索引属性
  15. select INDEXPROPERTY(object_id('wc.dbo.wcT'),
  16. 'pk_wcid_date',
  17. 'IndexID') --索引id
  18. select INDEXPROPERTY(object_id('wc.dbo.wcT'),
  19. 'pk_wcid_date',
  20. 'IsClustered') --是否聚集
  21. select INDEXPROPERTY(object_id('wc.dbo.wcT'),
  22. 'pk_wcid_date',
  23. 'IsDisabled') --是否禁用
  24. select INDEXPROPERTY(object_id('wc.dbo.wcT'),
  25. 'pk_wcid_date',
  26. 'IsRowLockDisallowed') --是否允许行级锁
  27. select INDEXPROPERTY(object_id('wc.dbo.wcT'),
  28. 'pk_wcid_date',
  29. 'IsStatistics') --是否自动创建统计信息
  30. select INDEXPROPERTY(object_id('perfetti.dbo.wcT'),
  31. 'idx_wc',
  32. 'IndexDepth') --索引深度

6、类型AllowsNull


  1. select TYPEPROPERTY('int', --类型名
  2. 'Precision') --类型属性
  3. select TYPEPROPERTY('int', --类型名
  4. 'AllowsNull') --类型属性

7、当前模块的对象ID,可以是存储过程,用户定义函数,触发器

select @@PROCID

8、扩展属性


  1. select * from ::fn_listextendedproperty(default,
  2. 'schema', --架构
  3. 'dbo', --架构名
  4. 'table', --表
  5. 'wcT', --表名
  6. default, --列
  7. default --列名
  8. )
  9. DECLARE @V SQL_VARIANT
  10. SET @V = 'ABCEFG'
  11. select SQL_VARIANT_PROPERTY(@V,
  12. 'BaseType')
  13. select SQL_VARIANT_PROPERTY(@V,
  14. 'TotalBytes')
  15. select SQL_VARIANT_PROPERTY(@V,
  16. 'MaxLength')

9、服务器属性


  1. select SERVERPROPERTY('Collation'),
  2. SERVERPROPERTY('IsClustered'),
  3. SERVERPROPERTY('IsSingleUser'),
  4. SERVERPROPERTY('MachineName'),
  5. SERVERPROPERTY('ProcessID'),
  6. SERVERPROPERTY('NumLicenses'),
  7. SERVERPROPERTY('SqlSortOrder')

10、会话属性


  1. select SESSIONPROPERTY('ANSI_NULLS'),
  2. SESSIONPROPERTY('ANSI_WARNINGS'),
  3. SESSIONPROPERTY('ANSI_PADDING'),
  4. SESSIONPROPERTY('ARITHABORT'),
  5. SESSIONPROPERTY('NUMERIC_ROUNDABORT'),
  6. SESSIONPROPERTY('CONCAT_NULL_YIELDS_NULL'),
  7. SESSIONPROPERTY('QUOTED_IDENTIFIER')
发布了416 篇原创文章 · 获赞 135 · 访问量 94万+

SQL Server系统函数:元数据函数的更多相关文章

  1. SQL Server系统函数简介[转]

    一.字符转换函数1.ASCII()返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错.2.CHAR ...

  2. sql server 系统常用函数:聚合函数 数学函数 字符串函数 日期和时间函数和自定义函数

    一.系统函数 1.聚合函数 聚合函数常用于GROUP BY子句,在SQL Server 2008提供的所有聚合函数中,除了COUNT函数以外,聚合函数都会忽略空值AVG.COUNT.COUNT_BIG ...

  3. SQL Server系统函数:系统信息函数

    原文:SQL Server系统函数:系统信息函数 1.会话id,服务器信息.用户信息 select @@SPID, --返回当前连接的会话ID:SPID @@servername, --SQL Ser ...

  4. SQL Server系统函数:字符串函数

    原文:SQL Server系统函数:字符串函数 1.字符转化为ASCII,把ASCII转化为字符,注意返回的值是十进制数 select ASCII('A'),ASCII('B'),ASCII('a') ...

  5. SQL Server系统函数:日期函数

    原文:SQL Server系统函数:日期函数 1.返回当前日期和时间 select GETDATE() '当前日期-精确到33毫秒' select GETUTCDATE() 'UTC日期和时间-精确到 ...

  6. SQL Server系统函数:类型转换函数

    原文:SQL Server系统函数:类型转换函数 1.基本的转化 SELECT CAST(2008 as varchar(4)) + ' year!' SELECT CONVERT(varchar(4 ...

  7. sql server 2012 自定义聚合函数(MAX_O3_8HOUR_ND) 计算最大的臭氧8小时滑动平均值

    采用c#开发dll,并添加到sql server 中. 具体代码,可以用visual studio的向导生成模板. using System; using System.Collections; us ...

  8. ylb:SQL Server中的时间函数

    ylbtech-SQL Server:SQL Server-SQL Server中的时间函数 SQL Server中的时间函数. 1,SQL Server中的时间函数 返回顶部 1.   当前系统日期 ...

  9. SQL Server中的CLR编程——用.NET为SQL Server编写存储过程和函数

    原文:SQL Server中的CLR编程--用.NET为SQL Server编写存储过程和函数 很早就知道可以用.NET为SQL Server2005及以上版本编写存储过程.触发器和存储过程的,不过之 ...

随机推荐

  1. what should I use .post vs .ajax?

    what should I use .post vs .ajax? 问题: I've always had this dilemma困境 whether to use .post or .ajax f ...

  2. MySQL数据库之主从复制

    一)MySQL主从复制的原理 MySQL主从复制是一个异步的复制过程,数据从一个MySQL数据库(master)复制到另一个MySQL数据库(slave),master和slave之间实现主从复制,主 ...

  3. 阶段5 3.微服务项目【学成在线】_day16 Spring Security Oauth2_12-SpringSecurityOauth2研究-JWT研究-生成私钥和公钥

    3.6.3 JWT入门 Spring Security 提供对JWT的支持,本节我们使用Spring Security 提供的JwtHelper来创建JWT令牌,校验JWT令牌 等操作. 3.6.3. ...

  4. Qt编写自定义控件45-柱状标尺控件

    一.前言 这个控件写了很久了,是最早期的一批控件中的一个,和温度计控件类似,都是垂直的进度条,可以设置不同的背景颜色,左侧的刻度也可以自由设定,还提供了动画效果,其实就是开启定时器慢慢的进度到设定的目 ...

  5. Zabbix4.x 历史数据存储到Elasticsearch7.x

    一.简介 Zabbix 3.4.6 版本开始支持历史数据存储到 Elasticsearch, 早就想测试这个功能,最近有个需求需保存 zabbix 的历史数据上达十亿条,因此决定测试这功能的实用性,事 ...

  6. Python中列表,元组,字典,集合的区别

    参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...

  7. javascript——URI的编解码方法

    有效的URI(统一资源标示符)是不能包含某些字符的,如空格,所以需要进行编码,编码方法有:encodeURI()和encodeURIComponent(), 对编的码进行解码方法有:decodeURI ...

  8. 第十二章 与Spring集成——《跟我学Shiro》

    转发:https://www.iteye.com/blog/jinnianshilongnian-2029717 目录贴:跟我学Shiro目录贴 Shiro的组件都是JavaBean/POJO式的组件 ...

  9. iOS-MPMoviePlayerViewController使用

    其实MPMoviePlayerController如果不作为嵌入视频来播放(例如在新闻中嵌入一个视频),通常在播放时都是占满一个屏幕的,特别是在 iPhone.iTouch上.因此从iOS3.2以后苹 ...

  10. Linq to sql中继承类映射转换问题

    类型为的数据成员“Int32 VTOUID”不是类型的映射的一部分.该成员是否位于继承层次结构根节点的上方? 想躲开Linq to sql中问题限制可真是不容易: http://www.makaido ...