【问题标题】:Can't commit changes to table with Datagrip无法使用 Datagrip 提交对表的更改
【发布时间】:2017-01-13 09:50:50
【问题描述】:

我使用 Datagrip 2016.3。当我尝试更改表中的值时,我无法将其提交给数据库(Oracle SQL-DB)。

我做了什么: - 将单元格设置为/一些新值 - 按下复选标记图标(“提交”) - 和/或按 CTRL+RETURN - 关闭选项卡 - 重新打开标签 - /new 值消失了,旧值仍然存在。

我在不同的方案(和不同的数据库)上尝试了不同的表。该列可以为空,输入的值是合法的。我可以使用 Oracle SQL Developer 修改这些值。

编辑(20170116):

对于遇到问题后的大多数测试,我尝试更改本地 oracle 安装的标准 HR 架构的 COUNTRY 表。可以使用 SQL Developer 更改同一个表。

【问题讨论】:

  • 请尝试 DataGrip 2016.3.2 并判断它是否被复制
  • @moscas:是的。很抱歉,但问题仍然存在。
  • 请写信给 maxim.sobolevskiy[at]jetbrains.com,我们将继续讨论那里的示例,好吗?
  • @moscas:你收到我的邮件了吗?
  • 是的,并回答了

标签: sql oracle datagrip


【解决方案1】:

要提交对数据库的更改,需要执行以下步骤:

  1. 输入一行或更改一个值(该行标记为绿色)
  2. 将更改提交到数据库(带有“DB”的箭头图标)
  3. 将该更改提交到数据库(自动提交或右键单击上下文菜单并选择提交(复选标记))

【讨论】:

  • 那是一个很奇怪的界面。选择自动提交实际上并不是“自动”提交。您仍然需要按发送到数据库图标。不是我认为大多数人所期望的。
【解决方案2】:

除了接受的答案之外,您还可以通过两种方式在最新版本的 DataGrip 中自动提交更改。我在 v2020.2 上,这些是目前更永久的选项:

  1. 将查询窗口上的 Tx: 设置从 Manual 更改为 Auto。
    注意:重启 DataGrip 后,此设置将不会保留。

  1. 为数据库/数据源永久更改:
  • 按下Data Source Properties按钮(快捷键Ctrl-Alt-Shift-S):

  • 选项选项卡 -> 连接部分 -> 事务控制 -> 自动/手动

#2 明显遗漏了我已发布反馈的 DataGrip 官方帮助文档。所以希望他们很快就会在这里添加它:https://www.jetbrains.com/help/datagrip/submitting-and-reverting-changes.html

【讨论】:

    猜你喜欢
    • 2011-12-21
    • 2020-06-14
    • 1970-01-01
    • 2018-01-20
    • 1970-01-01
    • 2015-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多