【问题标题】:How to edit XML column in SQL Developer?如何在 SQL Developer 中编辑 XML 列?
【发布时间】:2020-05-14 21:23:56
【问题描述】:

我想编辑 SQL Developer 编辑器显示为 (XMLTYPE)XML 列(我通过点击字段两次,编辑,然后保存)。

之后显示的值变为sqldev.xml:/home/myuser/.sqldeveloper/tmp/XMLType8226206531089284015.xml

Build after save retrieving next build context...

Build after save building project 1 of 1 queued projects

Compiling...
  Ignoring /home/username/.sqldeveloper/tmp/XMLType5691884284875805681.xml; not on source path
[11:45:33 AM] Compilation complete: 0 errors, 1 warnings.

Build after save finished

当我尝试提交时:

UPDATE "USERNAME"."TABLENAME" SET  WHERE ROWID = 'AABWNKAAEAAABSbAAB' AND ORA_ROWSCN = '6951979'

One error saving changes to table "USERNAME"."TABLENAME":
Row 1: Illegal format in column NEXTCOLUMN.

我试图寻找这个错误,发现也有这个错误的人,但没有解决方案。 如果您有如何向 Oracle 报告的建议,也会很有帮助。

【问题讨论】:

  • 你好,你的更新语句不完整,设置什么到什么?
  • @VBoka 这就是 SQL Developer 在消息日志中显示的内容。我不明白为什么没有我要更新的列名/值 (XML) - 可能是因为之前的警告。
  • 好的,如果您能给我们提供样本数据,那就太好了:您尝试更改的内容...
  • value1 我正在尝试更改 value1 value2.
  • 请标记您的 oracle 数据库的版本?谢谢!

标签: sql xml oracle oracle-sqldeveloper oracle12c


【解决方案1】:

希望对你有所帮助:

UPDATE table_name 
SET table_column=
   UPDATEXML(table_column,
   '/sampleTag1/sampleTag2/text()','value2')
   WHERE some_column = some value --<< this part is where you put your condition

您可以在这里找到更多相关信息: https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions205.htm

----------

如果您的问题是通过集成编辑器手动通过 SQL 开发人员进行编辑,那么据我的测试和研究可以看出,由于 SQL 开发人员版本

您在评论中指出您使用的是 4.1.x 版本,而我发现很少有人确认他们在使用此版本时遇到了同样的问题。

我也有 4.1.x 版本,并且我也成功重复了您的错误,即开发人员在我的 ...\sqldeveloper\tmp 文件夹中引用我的 .xml 文件不在其源路径上:

正在编译...忽略 C:\Users\trle\AppData\Roaming\SQL 开发人员\tmp\XMLType6413036461637067751.xml;不在源路径上 [4:33:29 PM] 编译完成:0 个错误,1 个警告。

然后我下载了版本 19.2.x 没有这样的问题,一切正常。

所以我对您的问题的回答是下载一些较新版本的 SQL 开发人员。在我的情况下 19.2。作品。

----------

更新刚刚在 4.2.x 版本上测试过 - 也可以使用

【讨论】:

  • 嗨@Line,您是否尝试执行此查询?你有问题吗?
  • 是的,它有效。我没有问题,但这不是我问题的答案。而是解决方法。
  • 嗨@Line 你能告诉我你使用哪个版本的SQL Developer吗?谢谢!
  • 我使用的是 4.1.3.20。
  • 嗨@Line 我已经更新了我的答案。希望这会帮助你。干杯!
猜你喜欢
  • 2010-09-08
  • 1970-01-01
  • 1970-01-01
  • 2013-06-23
  • 2020-09-01
  • 1970-01-01
  • 2011-04-18
  • 1970-01-01
  • 2018-01-01
相关资源
最近更新 更多