【发布时间】:2020-09-18 10:10:46
【问题描述】:
我在一个数据库中有一个表 MYTABLE,它有几列。
给定列 DOGCOLORS 在所有行中都有多个值:
1:黄红绿 2:红紫绿 3:黑绿灰
我正在尝试查找一个查询,该查询在表 MYTABLE 中的 DOGCOLORS 列的每个值中将值“green”更新为“orange”
BEGIN TRANSACTION;
UPDATE MYTABLE
SET DOGCOLORS=REPLACE(DOGCOLORS,'red','orange');
COMMIT TRANSACTION;
结果应该是这样的:
1: 黄色红色橙色 2:红紫橙 3:黑橙灰
在 DBeaver 上运行的查询给出了这些错误: PL/SQL:ORA-02185:除了 WORK 之外的令牌遵循 COMMIT 在预期以下情况之一时遇到符号“文件结尾”:
;
任何帮助表示赞赏
【问题讨论】:
-
您正在阅读错误的手册。 Oracle SQL 参考指南是here。不过,我不知道你在哪里找到
BEGIN TRANSACTION。这是什么意思?
标签: sql oracle sql-update find-replace