怎么用SQL语句查看SQL Server的结构信息

数据库   2024年05月10日 3:11  

这篇文章主要介绍“怎么用SQL语句查看SQL Server的结构信息”,在日常操作中,相信很多人在怎么用SQL语句查看SQL Server的结构信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用SQL语句查看SQL Server的结构信息”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

获取数据库及配置信息

1、获取数据库配置信息

execsp_server_info

2、返回所有数据库

execsp_databases获取系统中的用户表

有三种方法可以使用,分别是:

1、利用sysobjects系统表或sys.objects目录视图

select*fromsysobjectswherextype='U'select*fromsys.objectswherextype='U'

2、利用sys.tables目录视图

select*fromsys.tables

3、利用存储过程sp_tables

execsp_tables获取系统中所有的用户视图

有两种方法可以使用,分别是:

1、利用sysobjects系统表或sys.objects目录视图

select*fromsysobjectswherextype='V'select*fromsys.objectswherextype='V'

2、利用sys.tables目录视图

select*fromsys.tables获取数据库中所有的用户存储过程

有两种方法可以使用,分别是:

1、利用sysobjects系统表或sys.objects目录视图

select*fromsysobjectswherextype='P'select*fromsys.objectswherextype='P'

2、利用sys.procedures目录视图

select*fromsys.procedures获取存储过程或视图的定义脚本

要用到系统视图sys.all_objects和sys._modules,写法如下:

selecta.name,a.[type],b.[definition]fromsys.all_objectsa,sys.sql_modulesbwherea.is_ms_shipped=0anda.object_id=b.object_idanda.[type]in('P','V')orderbya.[name]asc

其中 sys.all_objects 是 sql server 2012 版本中的系统视图,在 更早期的 sql server 版本中,应该用 sys.objects,同时,sys.objects 在 2012 中也是可以用的,只不过考虑到后续兼容性,在新版本中,用新的 name 还是比较好。

sys.all_objects.type字段常用的类型有: P = 存储过程、V = 视图、U = 表(用户定义类型)、TT = 表类型 、AF = 聚合函数等。

sys.sql_modules.definition返回的就是定义存储过程或视图的脚本。

获取表的字段信息

1、如果单纯获取字段名称,只需要用到系统表syscolumns。

select*fromsyscolumnswhereid=object_id('表名')

2、如果要获取字段和对应的数据类型,需要用到系统表syscolumns和systypes。

selecta.nameas[column],b.nameastypefromsyscolumnsa,systypesbwherea.id=object_id('表名')anda.xtype=b.xtype

3、获取更详细的表结构信息,调用[INFORMATION_SCHEMA].[COLUMNS]。

SELECTc.TABLE_SCHEMA,c.TABLE_NAME,c.COLUMN_NAME,c.DATA_TYPE,c.CHARACTER_MAXIMUM_LENGTH,c.COLUMN_DEFAULT,c.IS_NULLABLE,c.NUMERIC_PRECISION,c.NUMERIC_SCALEFROM[INFORMATION_SCHEMA].[COLUMNS]cWHERETABLE_NAME='idata'

到此,关于“怎么用SQL语句查看SQL Server的结构信息”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

域名注册
购买VPS主机

您或许对下面这些文章有兴趣:                    本月吐槽辛苦排行榜

看贴要回贴有N种理由!看帖不回贴的后果你懂得的!


评论内容 (*必填):
(Ctrl + Enter提交)   

部落快速搜索栏

各类专题梳理

网站导航栏

X
返回顶部