【发布时间】:2020-10-22 17:14:20
【问题描述】:
我有这个代码
BEGIN TRANSACTION
BEGIN TRY
INSERT INTO table2 (field1, field2, field3, field4)
SELECT '1', field2, field3, field4
FROM table1
COMMIT
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
END CATCH
我得到以下错误
SQL Error [6550] [65000]: ORA-06550: line 2, column 2:
PLS-00103: Encountered the symbol "BEGIN" when expecting one of the following:
:= . ( @ % ;
我已经尝试并查找了有关同一主题的多个问题,但我找不到答案,也许这里有什么问题。使用 ;在每句话之后给我不同的错误
更新:
以下错误信息以该代码结尾:
BEGIN TRANSACTION;
BEGIN TRY;
INSERT INTO table2 (field1, field2, field3, field4)
SELECT '1', field2, field3, field4
FROM table1
COMMIT ;
END TRY;
BEGIN CATCH;
ROLLBACK TRANSACTION;
END CATCH;
还有以下错误:
SQL Error [6550] [65000]: ORA-06550: line 13, column 10:
PL/SQL: ORA-02181: invalid option to ROLLBACK WORK
ORA-06550: line 13, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 15, column 10:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:
( begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quote
【问题讨论】:
标签: sql database oracle transactions