SQL Server 查询分析器提供的所有快捷方式(快捷键)

时间:2021-06-01 16:52:28

SQL Server程序员经常要在SSMS(SQL Server Management Studio)或查询分析器(2000以前)中编写T-SQL代码。以下几个技巧,可以提升工作效率。

以下说明以SS2005为例,SS2008也适用;SS2000的话可能部分适用吧。


1. 快捷键

现在只要不是电脑新手,都知道Ctrl+C/Ctrl+V,没什么人会用菜单去进行复制/粘贴。而对于靠电脑吃饭的程序员来说,只知道这两个快捷键是不够的。

善用快捷键,可以节省用鼠标去找图标或菜单的时间。更炉火纯青的状态是全键盘操作,连把手移动到鼠标的时间都省了(UNIX程序员都是这么干的)。

在SSMS选择菜单:工具->自定义,勾选“在屏幕提示中显示快捷键”,这样,当把鼠标悬停在执行图标上方时,会显示提示F5。快捷键不需要死记,鼠标点的时候看一下,下次就可以用快捷键了,用多了就熟了。
---------

快捷键:

书签:清除所有书签。 CTRL-SHIFT-F2

书签:插入或删除书签(切换)。 CTRL+F2

书签:移动到下一个书签。 F2 功能键

书签:移动到上一个书签。 SHIFT+F2

取消查询。 ALT+BREAK

连接:连接。 CTRL+O

连接:断开连接。 CTRL+F4

连接:断开连接并关闭子窗口。 CTRL+F4

数据库对象信息。 ALT+F1

编辑:清除活动的编辑器窗格。 CTRL+SHIFT+DEL

编辑:注释代码。 CTRL+SHIFT+C

编辑:复制。还可以使用 CTRL+INSERT。 CTRL+C

编辑:剪切。还可以使用 SHIFT+DEL。 CTRL+X

编辑:减小缩进。 SHIFT+TAB

编辑:在编辑器窗格中删除至行尾。 CTRL+DEL

编辑:查找。 CTRL+F

编辑:转到行号。 CTRL+G

编辑:增大缩进。 TAB

编辑:使选定内容为小写。 CTRL+SHIFT+L

编辑:使选定内容为大写。 CTRL+SHIFT+U

编辑:粘贴。还可以使用 SHIFT+INSERT。 CTRL+V

编辑:删除注释。 CTRL+SHIFT+R

编辑:重复上次搜索或查找下一个。 F3 功能键

编辑:替换。 CTRL+H

编辑:全选。 CTRL+A

编辑:撤消。 CTRL+Z 
 
执行查询。还可以使用 CTRL+E (针对向后兼容性)。 F5 功能键

SQL 查询分析器帮助。 F1 功能键

对所选 Transact-SQL 语句的帮助。 SHIFT+F1

浏览:在查询窗格和结果窗格之间切换。 F6 功能键

浏览:切换窗格。 Shift+F6

浏览:窗口选择器。 CTRL+W

"新建查询"窗口。 CTRL+N

对象浏览器(显示/隐藏)。 F8 功能键

对象搜索。 F4 功能键

分析查询并检查语法。 CTRL+F5

打印。 CTRL+P

结果:以表格格式显示结果。 CTRL+D

结果:以文本格式显示结果。 CTRL+T

结果:移动拆分器。 CTRL+B

结果:将结果保存为文件。 CTRL+SHIFT+F

结果:显示结果窗格(切换)。 CTRL+R

保存。 CTRL+S

模板:插入模板。 CTRL+SHIFT+INSERT

模板:替换模板参数。 CTRL+SHIFT+M

优化:显示预估执行计划。 CTRL+L

优化:显示执行计划(切换开/关)。 CTRL+K

优化:索引优化向导。 CTRL+I

优化:显示客户统计 CTRL+SHIFT+S

优化:显示服务器跟踪。 CTRL+SHIFT+T

使用数据库。 CTRL+U

----------------


2. 自定义快捷键

SQL Server Management Studio支持自定义快捷键:工具->选项->键盘
其中,Alt+F1、Ctrl+1、Ctrl+2是系统预定义的快捷键。
双击表名(或按Ctrl单击表名),选定一个表名,如tablename,按Alt+F1,相当于执行“sp_help tablename”,可以查看对象的说明信息。

以下是我添加的一些自定义快捷键:

[code=sql] 

 

--Ctrl+F1:显示表或视图的前100行,选定“tablename,1000”按Ctrl+F1可显示表的前1000行。 

sp_executesql N'IF OBJECT_ID(@tablename) IS NOT NULL EXEC(N''SELECT TOP(''+@n+N'') * FROM ''+@tablename)',N'@tablename nvarchar(100),@n int=100',

 

--Ctrl+3:显示视图、存储过程、函数、触发器的定义脚本。 

sp_helptext

 

--Ctrl+4:显示表的行数和占用空间。 

sp_spaceused

 

--Ctrl+5:显示表中每个索引占用的空间。 

sp_executesql N'SELECT index_name = ind.name, ddps.used_page_count, ddps.reserved_page_count, ddps.row_count FROM sys.indexes ind INNER JOIN sys.dm_db_partition_stats ddps ON ind.object_id = ddps.object_id AND ind.index_id = ddps.index_id WHERE ind.object_id = OBJECT_ID(@tablename)',N'@tablename nvarchar(100)'

 

--Ctrl+9:显示表或视图的字段名,以逗号分隔。 

sp_executesql N'SELECT columns = STUFF((SELECT '', ''+name FROM sys.columns WHERE object_id = OBJECT_ID(@tablename) FOR XML PATH('''')),1,2,'''')',N'@tablename nvarchar(100)'

 

--Ctrl+0:根据选定关键词在当前数据库中查找表、视图、存储过程、函数 

sp_executesql N'SELECT * FROM sys.objects WHERE type IN (''U'',''V'',''P'',''FN'') AND name LIKE ''%''+@keyword+''%'' ORDER BY type,name',N'@keyword nvarchar(50)'