Symptom(s)
oracle.mtg.<plugin_name>.parser.ParseException: Parse error at line n, ...
Cause
A procedure contains syntax that is currently not supported by the TSQL parser.
Fix
The Oracle Migration Workbench T-SQL parser does not accept some statements. In such cases the offending statement will be commented out using a MTG Error comment block. When such a comment is found it has to be uncommented and manually migrated to the correct PL/SQL.
Before After
DBMS_OUTPUT.PUTLINE( 'MTG Error');
-- MTG Error begin
-- The parser does not accept nested expressions
-- in the when clause. Once on Oracle this comment
-- needs to be taken out and the statement manually
-- written in PL/SQL.
-- NOTE the print 'MTG Error' comment block above
-- has to be removed as well
/*
  update #temp1 set Deviation =
  case when (abs(MaxTiming - Timing) -
                   abs(MinTiming - Timing)) >=0
  then abs(MaxTiming - Timing) / Timing
  else abs(MinTiming - Timing) / Timing
  end
  from #temp1 where Timing !=0
*/
-- MTG Error end
update TT_TEMP1_7
set Deviation =
case when
  (abs(MaxTiming - Timing) -
   abs(MinTiming - Timing)) >=0
then abs(MaxTiming -Timing) / Timing
else abs(MinTiming - Timing) / Timing
end
from TT_TEMP1_7 where Timing !=0
Note
The name of the temporary table (TT_TEMP1_7) was found by looking above this statement i.e. where #temp1 table was created.
E-mail this page
Printer View Printer View
Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Privacy