sql工具:一条sql语句,查询sql server某个指定表的所有列及其属性 .

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 摘自:http://blog.csdn.net/keenweiwei/article/details/6859490  1 SELECT 2 C.name as [字段名],T.
摘自: http://blog.csdn.net/keenweiwei/article/details/6859490 
 1 SELECT
 2      C.name as [字段名],T.name as [字段类型]
 3      ,convert(bit,C.IsNullable)  as [可否为空]
 4      ,convert(bit,case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=c.id and name in (
 5          SELECT name FROM sysindexes WHERE indid in(
 6              SELECT indid FROM sysindexkeys WHERE id = c.id AND colid=c.colid))) then 1 else 0 end) 
 7                  as [是否主键]
 8      ,convert(bit,COLUMNPROPERTY(c.id,c.name,'IsIdentity')) as [自动增长]
 9      ,C.Length as [占用字节] 
10      ,COLUMNPROPERTY(C.id,C.name,'PRECISION') as [长度]
11      ,isnull(COLUMNPROPERTY(c.id,c.name,'Scale'),0) as [小数位数]
12      ,ISNULL(CM.text,'') as [默认值]
13      ,isnull(ETP.value,'') AS [字段描述]
14      --,ROW_NUMBER() OVER (ORDER BY C.name) AS [Row]
15 FROM syscolumns C
16 INNER JOIN systypes T ON C.xusertype = T.xusertype 
17 left JOIN sys.extended_properties ETP   ON  ETP.major_id = c.id AND ETP.minor_id = C.colid AND ETP.name ='MS_Description' 
18 left join syscomments CM on C.cdefault=CM.id
19 WHERE C.id = object_id('tblAddressBook')

 

(运行环境:sql server 2008)  以上是中文作为列名,以下是英文作为列名,注意: 把 tblAddressBook 换成你要查询的表名就OK了
 1 SELECT
 2      C.name as FieldName,T.name as TypeName
 3      ,C.IsNullable  
 4      ,case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=c.id and name in (
 5          SELECT name FROM sysindexes WHERE indid in(
 6              SELECT indid FROM sysindexkeys WHERE id = c.id AND colid=c.colid))) then 1 else 0 end 
 7                  as IsPrimary
 8      ,COLUMNPROPERTY(c.id,c.name,'IsIdentity') as IsIdentity
 9      ,C.Length as ByteLength 
10      ,COLUMNPROPERTY(C.id,C.name,'PRECISION') as StringLength
11      ,isnull(COLUMNPROPERTY(c.id,c.name,'Scale'),0) as DotPrecision
12      ,ISNULL(CM.text,'') as DefaultValue
13      ,isnull(ETP.value,'') AS [Description]
14      --,ROW_NUMBER() OVER (ORDER BY C.name) AS [Row]
15 FROM syscolumns C
16 INNER JOIN systypes T ON C.xusertype = T.xusertype 
17 left JOIN sys.extended_properties ETP   ON  ETP.major_id = c.id AND ETP.minor_id = C.colid AND ETP.name ='MS_Description' 
18 left join syscomments CM on C.cdefault=CM.id
19 WHERE C.id = object_id('tblAddressBook')

        
附查询图片一张:

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
16天前
|
SQL 存储 人工智能
Vanna:开源 AI 检索生成框架,自动生成精确的 SQL 查询
Vanna 是一个开源的 Python RAG(Retrieval-Augmented Generation)框架,能够基于大型语言模型(LLMs)为数据库生成精确的 SQL 查询。Vanna 支持多种 LLMs、向量数据库和 SQL 数据库,提供高准确性查询,同时确保数据库内容安全私密,不外泄。
83 7
Vanna:开源 AI 检索生成框架,自动生成精确的 SQL 查询
|
23天前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
34 8
|
21天前
|
SQL 存储 BI
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
|
1月前
|
SQL 安全 PHP
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
53 4
|
1月前
|
SQL 监控 关系型数据库
SQL语句当前及历史信息查询-performance schema的使用
本文介绍了如何使用MySQL的Performance Schema来获取SQL语句的当前和历史执行信息。Performance Schema默认在MySQL 8.0中启用,可以通过查询相关表来获取详细的SQL执行信息,包括当前执行的SQL、历史执行记录和统计汇总信息,从而快速定位和解决性能瓶颈。
|
1月前
|
SQL 存储 缓存
如何优化SQL查询性能?
【10月更文挑战第28天】如何优化SQL查询性能?
120 10
|
1月前
|
SQL 关系型数据库 MySQL
|
1月前
|
SQL 关系型数据库 MySQL
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
33 0
|
3月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
109 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
26天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
下一篇
DataWorks