如何在SQL Server管理工具中快速编辑表格中的值?

130
除了在对象资源管理器中从上下文菜单 -> "编辑前 200 行",是否有一种快速打开表格进入编辑模式的方法,以便我可以快速修改单元格的值?
我需要能够翻页查看超过前 200 行的数据。并且我不想为每个小调整编写一个“插入”脚本... 我不理解为什么 SQL 管理工具不提供像 Navicat 那样的分页表格编辑器的快速访问方式。
4个回答

159

在管理工作室中,当您编辑前200条记录时,可以通过右键单击网格并选择“窗格”->“SQL”或使用左上角的按钮来查看SQL窗格。这将允许您编写自定义查询以深入到要编辑的行。

但是,最终管理工作室不是一个数据输入/更新工具,所以这有点繁琐。


11
如果您允许用户执行某些操作(比如编辑表格),那么这些操作应该很容易进行。但这只是我的个人观点。 - data
6
仅适用于单个表的情况,即没有连接操作。一旦开始连接2个或3个表,就无法这样做了。如果有其他解决方案将是很有趣的。 - Francis Rodgers
是的,如果你加入另一个表格,它会将单元格更改为只读:/ - MetaGuru
6
当您想要执行SQL时,不是使用通常的“执行”按钮(F5),而是右键单击窗格>“运行查询”(Ctrl-R)。 - BobbyTables
如果“mgmt studio不是数据输入/更新工具” - 那么哪个是呢?真正的兴趣,没有隐藏的讽刺。我很想拥有这样的工具。 - Alex from Jitbit

59

进入“工具” > “选项”菜单。在左侧的树形列表中,选择“SQL Server 对象资源管理器”。将“编辑顶部行命令的值”选项设置为0。现在您可以从上下文菜单中查看和编辑整个表。


21
如果您的表格有数百万行,这并不一定是一个很好的想法。 - marc_s
为什么不直接输入所需的值以编辑前n行,例如我按照Adam的说明从“服务器对象资源管理器”选项中输入了1000行。 - panky sharma
2
@marc_s - 是的,但有没有一种方法可以编辑获取前N行以进行编辑的SQL?明白了 - 只需选择“编辑前xyz行”,在编辑网格区域中按Ctrl + 3(或单击“显示SQL窗格”)并编辑查询即可...但请注意,这仅适用于不包含“join”的查询。 - stack1
我认为这不允许您从上下文菜单编辑表格。如果我右键单击从选择查询返回的行,没有选项可以编辑值(至少在SSMS 18中)。 - eyelesscactus54


2

Brendan是正确的。您可以编辑Select命令来编辑过滤后的记录列表。例如"WHERE dept_no = 200"


如果能说明要点击哪个选项来编辑查询,这个答案就可以更好了。我正在进行“编辑前200行”操作,然后想要编辑查询。但我不知道该怎么做。 - Be Kind To New Users
在焦点位于网格上时,只需按Ctrl-3即可打开编辑网格的SQL编辑器。 - matty

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接