SQL表结构信息查询的方法

SQL表结构信息,应该如何查询呢?下面就教您SQL表结构信息查询的方法,如果您对SQL表结构方面感兴趣的话,不妨一看。

  1. SELECT   
  2.     TableName=CASE WHEN C.column_id=1 THEN O.name ELSE N'' END,  
  3.     TableDesc=ISNULL(CASE WHEN C.column_id=1 THEN PTB.[value] END,N''),  
  4.     CColumn_id=C.column_id,  
  5.     CColumnName=C.name,  
  6.     PrimaryKey=ISNULL(IDX.PrimaryKey,N''),  
  7.     [IDENTITY]=CASE WHEN C.is_identity=1 THEN N'√'ELSE N'' END,  
  8.     Computed=CASE WHEN C.is_computed=1 THEN N'√'ELSE N'' END,  
  9.     TType=T.name,  
  10.     Length=C.max_length,  
  11.     Precision=C.precision,  
  12.     Scale=C.scale,  
  13.     NullAble=CASE WHEN C.is_nullable=1 THEN N'√'ELSE N'' END,  
  14.     [Default]=ISNULL(D.definition,N''),  
  15.     ColumnDesc=ISNULL(PFD.[value],N''),  
  16.     IndexName=ISNULL(IDX.IndexName,N''),  
  17.     IndexSort=ISNULL(IDX.Sort,N''),  
  18.     Create_Date=O.Create_Date,  
  19.     Modify_Date=O.Modify_date  
  20. FROM sys.columns C  
  21.     INNER JOIN sys.objects O  
  22.         ON C.[object_id]=O.[object_id]  
  23.             AND O.type='U' 
  24.             AND O.is_ms_shipped=0 
  25.     INNER JOIN sys.types T  
  26.         ON C.user_type_id=T.user_type_id  
  27.     LEFT JOIN sys.default_constraints D  
  28.         ON C.[object_id]=D.parent_object_id  
  29.             AND C.column_id=D.parent_column_id  
  30.             AND C.default_object_id=D.[object_id]  
  31.     LEFT JOIN sys.extended_properties PFD  
  32.         ON PFD.class=1   
  33.             AND C.[object_id]=PFD.major_id   
  34.             AND C.column_id=PFD.minor_id  
  35. --             AND PFD.name='Caption' -- 字段说明对应的描述名称(一个字段可以添加多个不同name的描述)  
  36.     LEFT JOIN sys.extended_properties PTB  
  37.         ON PTB.class=1   
  38.             AND PTB.minor_id=0   
  39.             AND C.[object_id]=PTB.major_id  
  40. --             AND PFD.name='Caption' -- 表说明对应的描述名称(一个表可以添加多个不同name的描述)   
  41.     LEFT JOIN                       -- 索引及主键信息  
  42.     (  
  43.         SELECT   
  44.             IDXC.[object_id],  
  45.             IDXC.column_id,  
  46.             Sort=CASE INDEXKEY_PROPERTY(IDXC.[object_id],IDXC.index_id,IDXC.index_column_id,'IsDescending')  
  47.                 WHEN 1 THEN 'DESC' WHEN 0 THEN 'ASC' ELSE '' END,  
  48.             PrimaryKey=CASE WHEN IDX.is_primary_key=1 THEN N'√'ELSE N'' END,  
  49.             IndexName=IDX.Name  
  50.         FROM sys.indexes IDX  
  51.         INNER JOIN sys.index_columns IDXC  
  52.             ON IDX.[object_id]=IDXC.[object_id]  
  53.                 AND IDX.index_id=IDXC.index_id  
  54.         LEFT JOIN sys.key_constraints KC  
  55.             ON IDX.[object_id]=KC.[parent_object_id]  
  56.                 AND IDX.index_id=KC.unique_index_id  
  57.         INNER JOIN -- 对于一个列包含多个索引的情况,只显示第1个索引信息  
  58.         (  
  59.             SELECT [object_id], Column_id, index_id=MIN(index_id)  
  60.             FROM sys.index_columns  
  61.             GROUP BY [object_id], Column_id  
  62.         ) IDXCUQ  
  63.             ON IDXC.[object_id]=IDXCUQ.[object_id]  
  64.                 AND IDXC.Column_id=IDXCUQ.Column_id  
  65.                 AND IDXC.index_id=IDXCUQ.index_id  
  66.     ) IDX  
  67.         ON C.[object_id]=IDX.[object_id]  
  68.             AND C.column_id=IDX.column_id   
  69. -- WHERE O.name=N'要查询的表'       -- 如果只查询指定表,加上此条件  
  70. ORDER BY O.name,C.column_id   

 

 

 

【编辑推荐】

带您深入了解sql字段类型

教您如何获取SQL字段默认值

SQL修改字段默认值

同一列SQL字符串相加的方法

教您如何修改sql server时间

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/255661.html<

(0)
管理的头像管理
上一篇2025-04-30 23:01
下一篇 2025-04-30 23:02

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注