【问题标题】:oracle sql developer edit fieldsoracle sql developer 编辑字段
【发布时间】:2010-12-22 18:12:36
【问题描述】:

我最近尝试了 oracle sql developer 2.11 和 3 EA 2 都是 32 位窗口(尽管我也尝试了 2.11 64 位)。一个让我发疯的问题是在数据视图中,我似乎无法直接从 MYSQL 数据库中编辑字段中的数据,但是,我可以通过 SQL 操作数据,因此这不是权限问题。

谁能告诉我如何启用它,以便我可以单击字段并进行编辑,我相信这可以通过查看 youtube 上的视频来实现,但是,这些演示是使用 oracle 的,所以我想知道这是否是一个限制mysql?有人吗?

PS MS Access 数据库也有同样的问题。

【问题讨论】:

    标签: sql mysql oracle oracle-sqldeveloper


    【解决方案1】:

    我认为这是一个限制。

    Oracle 表有一个称为 ROWID 的内置标识符,它对表中的任何记录都是唯一的。因此,数据浏览器可以提取它正在显示的每一行的 ROWID。当您将列 'pet' 从 'CAT' 更改为 'DOG' 时,它只会生成一个 UPDATE 表 SET PET='DOG' WHERE ROWID = ....

    这存在一些问题(例如具有细粒度访问控制/行级安全性的表),因此即使对于 Oracle 表,它也并不总是有效。

    从技术上讲,可以通过确定主键列来完成等效操作,但这需要表强制执行主键,因此不包括可更新视图。然后是确定哪些列是主键并使用这些值(数据类型等)的麻烦。简而言之,这是很多额外的工作,所有数据库都是特定的,所以我对功能尚未开发并不感到惊讶。

    【讨论】:

    • 仅供参考,SQL Developer 还使用 ORA_ROWSCN 来尝试猜测是否有人在您提交更改之前更改了您的数据。这是检查多人是否同时编辑同一内容的一种很酷的方法。但不幸的是 ORA_ROWSCN 可能会根据访问路径而改变,因此当您是唯一一个更改数据时,并发错误并不少见。几年前我提交了一个错误,我想知道它是否得到了修复。
    • 非常感谢我实际上并没有使用 Oracle 我正在寻找一个主要用于 MYSQL 的工具,但是我虽然遇到了一个很棒的通用工具。在通过 TDD 和 BDD 进行更严格的测试之前,我喜欢在测试/编写例程时直接编辑字段而不使用 SQL。
    • 我想我会用MYSQL Workbench
    猜你喜欢
    • 2011-06-05
    • 2013-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多