如何在SQL Server Management Studio中的结果网格中编辑数据

时间:2010-12-28 03:33:53

标签: ssms

我想在结果网格中获得查询输出后编辑一些行值。 确实,我们可以右键单击表并打开表来获得可编辑的表输出,但我想要的是可编辑的查询输出,只有符合我标准的某些行,并在结果网格中编辑它们。

这可以在Microsoft SQL Server Management Studio Express中实现吗?

14 个答案:

答案 0 :(得分:76)

您可以执行类似于您想要的操作。右键单击一个表并选择“编辑前200行”(如果您在SQL Server 2008上)或SQL Server 2005中的“打开表”。到达目的地后,顶部有一个按钮,显示“SQL”;当您单击它时,它允许您编写SQL语句,如果单击要更改的单元格,则可以编辑它的结果。

答案 1 :(得分:62)

是的,这是可能的。右键单击表格并点击Edit Top 200 Rows,如下图所示

enter image description here

然后单击结果网格内的任意位置,以启用SQL图标“显示Sql窗格”。这将打开您选择编辑的表的sql编辑器,在这里您可以编写自己的SQL查询,然后您可以直接编辑查询的结果集。

enter image description here

答案 2 :(得分:23)

你可以这样做:

  • 将您的选择查询转换为视图
  • 右键单击视图并选择Edit All Rows(您将获得可编辑的值网格 - 即使值来自不同的表格)。

您还可以向视图添加插入/更新触发器,以便从视图字段中获取值,然后使用T-SQL管理对多个表的更新。

答案 3 :(得分:19)

SSMS - 右键单击​​编辑结果200 |选项|窗格| SQL - 编辑语句。

答案 4 :(得分:15)

给定的答案仍然有效。在这方面没有对SSMS(SQL Server 2016)进行任何更改。

在执行“编辑前200行”后,您还可以使用条件窗格。

Edit Top 200 context menu

  1. 显示标准窗格
  2. 输入一些标准
  3. 直接在结果网格中修改数据
  4. Open criteria pane

    此外,可以在SSMS选项中自定义这些命令的行数。

    enter image description here

答案 5 :(得分:14)

没有。您无法编辑结果网格。结果网格主要用于显示您执行的查询。

这是因为任何人都可以执行复杂的查询。希望在下一个版本中,它们将包含这种功能。

我希望能回答你的问题。

答案 6 :(得分:9)

<强>更新
你可以在Learning回答中看到正确的解决方案, 在SQL Server管理2014中,您可以使用 1.点击“编辑前200行” 然后
2.单击“显示SQL窗格(ctrl + 3)

3. 从选择查询中删除TOP(200)


请参阅Shen Lance的回答,无法编辑选择查询的结果。其他答案仅适用于普通选择,仅适用于200条记录。

答案 7 :(得分:5)

只需选择&#34;编辑前200行&#34;,在编辑网格区域按Ctrl + 3(或单击&#34;显示SQL窗格&#34;)并编辑查询...

但请注意,这仅适用于不包含&#34;加入&#34;

的查询

答案 8 :(得分:4)

是的,您可以编辑已加入的结果。 (至少在SSMS 2008 R2中)在使用联接的视图中编辑任何结果值之后,您需要再次执行查询以刷新结果。

您还需要确保SSMS配置为允许“编辑所有行”...在SSMS中执行此操作 - 工具|选项| SQL Server对象资源管理器|命令...展开表和视图选项...在“编辑前n行命令的值”中输入值0 ...也可以为选择执行此操作。

Yves A Martin的回答是100%正确的!

罗布

答案 9 :(得分:4)

首先,右键点击故事选择&#39;编辑所有行&#39;,选择&#39;查询设计器 - &gt;窗格 - &gt; SQL&#39;之后,您可以编辑网格中的查询输出。

答案 10 :(得分:3)

如果您需要经常对SQL数据库进行单元格编辑,HeidiSQL可以使用,使用起来更简单,并且是免费/开源的(接受捐赠)。

最初是为MySQL编写的,它现在可以处理SQL Server,并且还具有实验性(截至2014年8月)PostgreSQL支持。

答案 11 :(得分:3)

如果有连接或使用多个dB,请右键单击您感兴趣的dB中的任何表或使用master的服务器中的任何数据库。选择&#34;编辑前200行&#34;。选择&#34; SQL&#34;任务栏中的按钮。将代码复制并粘贴到现有代码上,然后重新运行。现在,您可以编辑查询的结果集。雪利酒; - )

答案 12 :(得分:2)

如果查询是作为视图编写的,则可以编辑视图并更新值。不能为所有视图更新值。只有特定的视图才有可能。有关详细信息,请参阅Modifying Data Through View MSDN Link。您可以为查询创建视图并编辑200行,如下所示:

enter image description here

答案 13 :(得分:0)

  1. 要明确:如果结果集是可编辑的,则选项“ Edit Top Rows的值”命令与事实无关。这只是限制结果集的一种方法。

  2. 基于一个并且只有一个表编辑查询的结果集显然总是可能的。

  3. 基于多个表的查询结果集可能处于以下情况: 如果它们属于查询中的一个且只有一个基于表,则可以立即编辑结果集中的字段!如果字段是“主键”,则必须在每次更新行后执行刷新/“执行SQL”(Ctrl + R),以便下次可以编辑行。如果这些字段不是主键,则不需要执行刷新/“执行SQL”(Ctrl + R)。

我已经在SQL Server 2008-2016上对其进行了测试!