【数据库】Sql Server可视化工具SSMS条件和SQL窗格以及版本信息

2023年,第34周,第1篇文章。给自己一个目标,然后坚持总会有收货,不信你试试!
SQL SERVER 官方本身就有数据库可视化管理工具SSMS,所以大部分都会使用SSMS。以前版本是直接捆绑,
安装完成就自带有,最近版本可以不捆绑,需要单独下载安装对应版本。

目录

  • 一、可视化工具
    • 1.1、Azure Data Studio
    • 1.2、Visual Studio Code
    • 1.3、DBeaver
    • 1.4、SQL Server Data Tools (SSDT)
    • 1.5、dbForge Studio for SQL Server
    • 1.6、Navicat for SQL Server
  • 二、SSMS版本
    • 1.1、SQL Server 2008 SSMS
    • 1.2、SQL Server 2012 SSMS
    • 1.3、SQL Server 2014 SSMS
    • 1.4、SQL Server 2016 SSMS
    • 1.5、SQL Server 2017 SSMS
    • 1.6、SQL Server 2019 SSMS
  • 三、常见系统表
    • 1.1、sys.objects
    • 1.2、sys.columns
    • 1.3、sys.tables
    • 1.4、sys.views
    • 1.5、sys.procedures
    • 1.6、sys.triggers
    • 1.7、sys.indexes
    • 1.8、sys.schemas
    • 1.9、sys.databases
    • 1.10、sys.sysprocesses
  • 四、SQL查询系统表
    • 4.1、查询数据库所有表
    • 4.2、查询表字段和备注

在这里插入图片描述

一、可视化工具

除了 Microsoft SQL Server Management Studio (SSMS),还有许多其他可视化工具可用于管理和查询 SQL Server 数据库。
以下是一些常用的可视化工具:

1.1、Azure Data Studio

这是一个轻量级的跨平台数据库管理工具,可用于连接和管理多个数据库,包括 SQL Server、Azure SQL Database 等。

1.2、Visual Studio Code

虽然它是一个通用的代码编辑器,但通过安装适当的扩展,如 mssql 扩展,可以在 Visual Studio Code 中连接和查询 SQL Server 数据库。

1.3、DBeaver

这是一个功能丰富的开源数据库管理工具,支持多个数据库平台,包括 SQL Server。它提供了直观的用户界面和强大的查询功能。

1.4、SQL Server Data Tools (SSDT)

这是一个 Visual Studio 的插件,专门为 SQL Server 数据库开发提供支持。它提供了数据库项目、模型设计、数据比较和发布等功能。

1.5、dbForge Studio for SQL Server

这是一个功能强大的商业数据库管理工具,提供了广泛的功能,包括数据库设计、查询构建、数据导入导出等。

1.6、Navicat for SQL Server

这是另一个商业数据库管理工具,支持多个数据库平台,包括 SQL Server。它提供了直观的用户界面和丰富的功能集。

这些可视化工具具有不同的功能和用户界面,可以根据个人喜好和需求选择适合自己的工具。
无论您选择哪个工具,都可以方便地进行 SQL Server 数据库的管理和查询。

二、SSMS版本

Microsoft SQL Server Management Studio (SSMS) 是用于管理和操作 Microsoft SQL Server 数据库的集成环境。
它提供了一个图形用户界面,可以进行数据库的设计、查询、管理和调优等操作。

SSMS 的每个版本都会引入一些新的功能和改进,以下是一些常见版本之间的主要区别

1.1、SQL Server 2008 SSMS

发布于 2008 年,这是最早的 SSMS 版本之一。
SSMS 2008 带来了许多新功能和改进,包括:
1)IntelliSense
提供了代码自动完成和语法检查的功能,可以更快速地编写和调试 SQL 查询和脚本。
2)多文件查询编辑器
允许同时打开和编辑多个查询文件,方便进行多个查询之间的比较和调试。
3)依赖关系查看器
允许查看数据库对象之间的依赖关系,方便了解对象之间的依赖和影响。
4)活动监视器
提供了实时监控和分析数据库活动和性能的功能,包括查询的执行计划、锁和阻塞信息等。

1.2、SQL Server 2012 SSMS

发布于2012年3月7日,这个版本引入了一些新的功能,如本地执行计划预览、分组窗口函数语法高亮、
列选择器以及对一些新的 SQL Server 2012 特性的支持。

1.3、SQL Server 2014 SSMS

发布于2014年4月1日,此版本引入了更多的功能和改进,包括缓存扩展模式、多服务器查询等。

1.4、SQL Server 2016 SSMS

发布于2016年6月1日,这个版本增加了对 SQL Server 2016 的许多新功能的支持,如 Temporal 表、动态数据遮罩、行级安全等。

1.5、SQL Server 2017 SSMS

发布于2017年10月2日,此版本引入了一些新的功能,如绘图、自动关联、自动化自检等。

1.6、SQL Server 2019 SSMS

发布于2019年11月4日,这个版本增加了对 SQL Server 2019 的新功能的支持,如 Big Data Clusters、加密数据页、智能查询处理等。

需要注意的是,每个版本的 SSMS 都支持相应版本的 SQL Server 数据库,但通常较新版本的 SSMS 也能向下兼容较旧版本的数据库。
建议使用最新版本的 SSMS,以便获得更多的功能和性能改进。

请注意,以上只是一些主要版本之间的区别,并不详细。
小伙伴们可以查阅 Microsoft 官方文档或更详细的发布说明来了解每个版本的具体改进和新增功能。

三、常见系统表

在 SQL Server 中,系统表是用于存储数据库元数据和系统信息的特殊表。以下是一些常见的 SQL Server 系统表:

1.1、sys.objects

此表包含数据库中所有对象(如表、视图、存储过程、触发器等)的信息,包括其名称、类型、创建日期等。

1.2、sys.columns

该表存储数据库中所有表的列信息,包括列的名称、数据类型、长度等。

1.3、sys.tables

这个表包含数据库中所有的表的信息,包括表的名称、模式、类型、创建日期等。

1.4、sys.views

该表存储数据库中所有的视图信息,包括视图的名称、定义、创建日期等。

1.5、sys.procedures

此表包含数据库中所有存储过程的信息,例如存储过程的名称、定义、创建日期等。

1.6、sys.triggers

该表包含数据库中所有触发器的信息,包括触发器的名称、关联的表、事件类型等。

1.7、sys.indexes

此表存储数据库中所有索引的信息,包括索引的名称、所属表、列等。

1.8、sys.schemas

该表包含数据库中所有的模式信息,包括模式的名称、属主等。

1.9、sys.databases

此表存储所有数据库的信息,包括数据库的名称、创建日期、状态等。

1.10、sys.sysprocesses

该表提供有关当前 SQL Server 实例上运行的每个进程的信息,包括进程的 ID、状态、当前执行的 SQL 语句等。

以上是一些常见的 SQL Server 系统表,它们可以提供关于数据库结构、对象和元数据的重要信息,帮助进行数据库管理、查询和监视。
请注意,这只是一小部分系统表,并且可能因 SQL Server 版本和配置而有所差异。

四、SQL查询系统表

4.1、查询数据库所有表

要查询 SQL Server 数据库中的所有表,你可以使用以下 SQL 查询:

USE YourDatabaseName; -- 替换为你要查询的数据库名称
SELECT *
FROM sys.tables;

在上面的查询中,你需要将 “YourDatabaseName” 替换为你要查询的数据库的实际名称。
该查询将从 sys.tables 系统表中检索到关于数据库中所有表的信息,并返回该信息。

请注意,这个查询将返回包含所有表的结果集,包括系统表和用户表。
如果你只想返回用户表,可以在查询中添加一个附加的筛选条件,例如:

USE YourDatabaseName; -- 替换为你要查询的数据库名称
SELECT *
FROM sys.tables
WHERE is_ms_shipped = 0;

通过将 is_ms_shipped = 0 条件添加到查询中,可以排除系统表,并仅返回用户表。

另外,还可以使用 SSMS 图形用户界面来获取数据库中的所有表。在 SSMS 中,
展开数据库对象(在“对象资源管理器”窗格中可见),然后选择“表”文件夹,你就可以看到该数据库中的所有表。

4.2、查询表字段和备注

要查询 SQL Server 数据库表的字段和字段说明,你可以使用以下 SQL 查询:

USE 数据库名; -- 替换为你要查询的数据库名称
SELECT 
    T.TABLE_NAME AS 表名,
    C.COLUMN_NAME AS 字段名,
    P.VALUE AS 字段说明
FROM INFORMATION_SCHEMA.TABLES AS T
INNER JOIN INFORMATION_SCHEMA.COLUMNS AS C ON T.TABLE_NAME = C.TABLE_NAME
LEFT JOIN (
    SELECT 
        MAJOR_ID,
        MINOR_ID,
        NAME,
        VALUE
    FROM SYS.EXTENDED_PROPERTIES 
    WHERE NAME = 'MS_Description'
) AS P ON P.MAJOR_ID = OBJECT_ID(T.TABLE_NAME) AND P.MINOR_ID = COLUMNPROPERTY(OBJECT_ID(T.TABLE_NAME), C.COLUMN_NAME, 'ColumnID')
WHERE T.TABLE_TYPE = 'BASE TABLE' and T.TABLE_NAME='你的表名' -- 只查询基本表
ORDER BY T.TABLE_NAME, C.ORDINAL_POSITION;

在这里插入图片描述

在查询中,将 “数据库名” 替换为你要查询的实际数据库名称。
该查询通过联接 INFORMATION_SCHEMA.TABLES 和 INFORMATION_SCHEMA.COLUMNS 系统视图来检索数据库中表字段的信息。
然后,使用子查询获取字段的说明信息。
查询结果包括表名、字段名和字段说明。
使用 WHERE 子句可以根据需要进行过滤,例如只查询基本表或特定的表。
查询结果按表名和字段顺序排序。
请注意,这个查询默认使用的是 MS_Description 扩展属性来存储字段说明。
如果你在数据库中使用了其他名称来存储说明信息,需要相应地修改 WHERE 子查询中的 NAME = ‘MS_Description’ 条件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/74344.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 AndroidX 增强 WebView 的能力

在App开发过程中,为了在多个平台上保持一致的用户体验和提高开发效率,许多应用程序选择使用 H5 技术。在 Android 平台上,通常使用 WebView 组件来承载 H5 内容以供展示。 一.WebView 存在的问题 自 Android Lollipop 起,WebVie…

LeetCode150道面试经典题-- 存在重复元素 II(简单)

1.题目 给你一个整数数组 nums 和一个整数 k &#xff0c;判断数组中是否存在两个 不同的索引 i 和 j &#xff0c;满足 nums[i] nums[j] 且 abs(i - j) < k 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 2.示例 示例 1&#xff1a; 输…

小米发布会:雷军成长故事与创新壮举,AI大模型技术引领未来,雷军探索之路之从创业波折到小米AI领航,成就高端化传奇!

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

PPT颜色又丑又乱怎么办?

一、设计一套PPT时&#xff0c;可以从这5个方面进行设计 二、PPT颜色 &#xff08;一&#xff09;、PPT常用颜色分类 一个ppt需要主色、辅助色、字体色、背景色即可。 &#xff08;二&#xff09;、搭建PPT色彩系统 设计ppt时&#xff0c;根据如下几个步骤&#xff0c;依次选…

【软件工程质量】代码质量管理平台Sonar

分析代码质量的工具有挺多的&#xff0c;比如&#xff1a;Alibaba Java Coding Guidelines plugin、QAPlug、SonarQube 等&#xff0c;平时用的比较多的事Alibaba Java Coding Guidelines plugin和sonarlint。 SonarQube 是一个用于管理源码质量的平台&#xff0c;帮助开发者…

SyntaxError: Cannot use import statement outside a module

node环境运行报错&#xff1a; 解决步骤&#xff1a; 1. npm init -y 2. 在 package.json 文件中加入一条&#xff1a;"type": "module", 3. 保存后再执行即可 附&#xff1a;最好是不要在node用import&#xff0c;否则需要上次配置 建议1&#xff1a;用re…

如何运用小程序技术闭环运营链路?

如何通过线上小程序获取用户线索&#xff0c;提高企业抗风险能力&#xff0c;建立有效的营销数字化系统一直是困扰每一个小程序开发者与运营者的问题。 当我们选择使用小程序设计自己的运营流程时&#xff0c;从「推广」到「转化」&#xff0c;再到最终的「留存」都是运营过程…

Kubernetes 部署DolphinScheduler 创建租户失败

创建租户 报错创建租户失败。后台日志如下 源代码跟踪 org.apache.dolphinscheduler.api.service.impl.TenantServiceImpl / if hdfs startup if (PropertyUtils.getResUploadStartupState()) {createTenantDirIfNotExists(tenantCode); }需要将 resource.storage.type 置为…

SpringBoot-Hello World

SpringBootWeb快速入门 创建Springboot工程&#xff0c;并勾选web开发相关依赖定义HelloController类&#xff0c;添加方法hello&#xff0c;并添加相关注释运行测试 创建新的SpringBoot项目 几个注意的点&#xff1a; Name&#xff1a;基本上不用管&#xff0c;会根据下面的Ar…

基于STM32CUBEMX驱动TMOS模块STHS34PF80(4)----中断获取信号

基于STM32CUBEMX驱动TMOS模块STHS34PF80----4.中断获取信号 概述样品申请视频教程参考Demo参考程序中断中断生成设置中断开启存在检测中断输出配置中断管脚主程序测试结果 概述 HS34PF80的数据准备信号提供了一种机制&#xff0c;允许设备在新的测量数据可读取时通知系统&…

网络安全(自学)

想自学网络安全&#xff08;黑客技术&#xff09;首先你得了解什么是网络安全&#xff01;什么是黑客&#xff01; 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全…

item_review-获得淘宝商品评论

一、接口参数说明&#xff1a; item_review-获得淘宝商品评论&#xff0c;点击更多API调试&#xff0c;请移步注册API账号点击获取测试key和secret 公共参数 请求地址: https://api-gw.onebound.cn/taobao/item_review 名称类型必须描述keyString是调用key&#xff08;点击获…

Algorithem Review 5.2 图论

网络流 设源点为 s s s&#xff0c;汇点为 t t t&#xff0c;每条边 e e e 的流量上限为 c ( e ) c(e) c(e)&#xff0c;流量为 f ( e ) f(e) f(e)。割 指对于某一顶点集合 P ⊂ V P \subset V P⊂V&#xff0c;从 P P P 出发指向 P P P 外部的那些原图中的边的集合&a…

怎么对视频进行压缩?

怎么对视频进行压缩&#xff1f;视频压缩&#xff0c;我们都知道是将视频文件进行压缩变小的过程&#xff0c;是我们日常办公中较为常用的手段。现如今&#xff0c;在视频技术不断发展与创新的基础上&#xff0c;视频分辨率也在不断提高&#xff0c;进而导致文件占有量也非常大…

jupyter打开ipynb后,还没有运行cell,反复报错

今天遇到了一个比较奇怪的问题&#xff1a; 这个原因是当前目录下有一个code.py的文件&#xff0c;一旦打开ipynb&#xff0c;就是先执行code.py&#xff0c;而且遇到报错&#xff0c;还会反复执行&#xff0c;导致内核崩溃。

【BASH】回顾与知识点梳理(二十一)

【BASH】回顾与知识点梳理 二十一 二十一. Linux 的文件权限与目录配置21.1 使用者与群组属主(文件拥有者)属组(群组概念)其他人的概念root(万能的天神)Linux 用户身份与群组记录的文件 21.2 Linux 文件权限概念Linux 文件属性Linux 文件权限的重要性 21.3 如何改变文件属性与权…

[centos]设置主机名

1、设置 hostnamectl set-hostname 名字 2、查看是否生效 hostnamectl status 3、打开一个新链接就可以了

学习笔记|printf函数的实现|不同操作系统中的换行|数的进制:2进制、10进制、16进制转换|STC32G单片机视频开发教程(冲哥)|第五集:C语言基础

文章目录 1.C语言 printf函数的实现Tips&#xff1a;ASCII码表Tips&#xff1a;找不到头文件怎么办&#xff1f;主函数添加程序:常规用法:Tips&#xff1a;不同操作系统中的换行 ⒉数的进制:2进制、10进制、16进制.常见的对应&#xff1a;应用&#xff1a;整体端口的操作 3.C语…

React antd tree树组件 - 父子节点没有自动关联情况下 - 显示半选、全选状态以及实现父子节点互动

实现的效果图如下&#xff1a; 如Ant Design Vue 中所示&#xff0c;并没有提供获取半选节点的方法&#xff0c;当设置checked和checkStrictly时&#xff0c;父子节点也不再自动关联了 前提&#xff1a;从后端可以获取的数据分别是完整的树型数据、所有选中的节点数据&#…

前后端分离------后端创建笔记(05)用户列表查询接口(下)

本文章转载于【SpringBootVue】全网最简单但实用的前后端分离项目实战笔记 - 前端_大菜007的博客-CSDN博客 仅用于学习和讨论&#xff0c;如有侵权请联系 源码&#xff1a;https://gitee.com/green_vegetables/x-admin-project.git 素材&#xff1a;https://pan.baidu.com/s/…