A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/pmd/pmd/issues/1934 below:

[plsql] ParseException with MERGE statement in anonymous block · Issue #1934 · pmd/pmd · GitHub

Skip to content Navigation Menu

Saved searches Use saved searches to filter your results more quickly

Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert Additional navigation options

[plsql] ParseException with MERGE statement in anonymous block #1934

Description

Affects PMD Version: 6.17.0

Rule:

Description: I get ParseException when trying to process script with MERGE statement in anonymous block without Declare section

lip 23, 2019 2:44:25 PM net.sourceforge.pmd.RulesetsFactoryUtils printRuleNamesInDebug
FINER: Loaded rule AvoidTabCharacter
lip 23, 2019 2:44:25 PM net.sourceforge.pmd.PMD getApplicableLanguages
FINE: Using PLSQL version: PLSQL
lip 23, 2019 2:44:25 PM net.sourceforge.pmd.PMD processFiles
WARNING: This analysis could be faster, please consider using Incremental Analysis: https://pmd.github.io/latest/pmd_userdocs_incremental_analysis.html
lip 23, 2019 2:44:25 PM net.sourceforge.pmd.RulesetsFactoryUtils printRuleNamesInDebug
FINER: Loaded rule AvoidTabCharacter
lip 23, 2019 2:44:25 PM net.sourceforge.pmd.processor.PmdRunnable call
FINE: Processing C:\Users\...\01_DB\00_Scripts\sols46_com_group_agent.sql
lip 23, 2019 2:44:25 PM net.sourceforge.pmd.processor.PmdRunnable addError
FINE: Error while processing file: C:\Users\...\01_DB\00_Scripts\sols46_com_group_agent.sql
net.sourceforge.pmd.PMDException: Error while parsing C:\Users\...\01_DB\00_Scripts\sols46_com_group_agent.sql
        at net.sourceforge.pmd.SourceCodeProcessor.processSourceCode(SourceCodeProcessor.java:99)
        at net.sourceforge.pmd.SourceCodeProcessor.processSourceCode(SourceCodeProcessor.java:51)
        at net.sourceforge.pmd.processor.PmdRunnable.call(PmdRunnable.java:78)
        at net.sourceforge.pmd.processor.PmdRunnable.call(PmdRunnable.java:24)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: net.sourceforge.pmd.lang.plsql.ast.ParseException: Encountered " "." ". "" at line 8, column 28.
Was expecting one of:
    "," ...
    "FROM" ...
    "," ...
    "FROM" ...

        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.generateParseException(PLSQLParser.java)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.jj_consume_token(PLSQLParser.java)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.FromClause(PLSQLParser.java:20506)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.RestOfStatement(PLSQLParser.java:10592)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.SelectStatement(PLSQLParser.java:27804)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.UnlabelledStatement(PLSQLParser.java:22950)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.Statement(PLSQLParser.java:23875)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.Block(PLSQLParser.java:952)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.Global(PLSQLParser.java:505)
        at net.sourceforge.pmd.lang.plsql.ast.PLSQLParser.Input(PLSQLParser.java:202)
        at net.sourceforge.pmd.lang.plsql.PLSQLParser.parse(PLSQLParser.java:55)
        at net.sourceforge.pmd.SourceCodeProcessor.parse(SourceCodeProcessor.java:111)
        at net.sourceforge.pmd.SourceCodeProcessor.processSource(SourceCodeProcessor.java:175)
        at net.sourceforge.pmd.SourceCodeProcessor.processSourceCode(SourceCodeProcessor.java:96)
        ... 9 more

Code Sample demonstrating the issue:

begin  

  MERGE INTO jhs_translations b
	  USING ( SELECT 'PROM_EDIT_PROM_NR' key1,'Edycja promocji nr' text,123123 lce_id FROM dual ) e
	  ON (b.key1 = e.key1 and b.lce_id=e.lce_id)
	  WHEN MATCHED
		THEN  UPDATE SET b.text = e.text
      WHEN NOT MATCHED
	    THEN  INSERT (ID,KEY1, TEXT,LCE_ID) values (JHS_SEQ.NEXTVAL,'PROM_EDIT_PROM_NR','Edycja promocji nr',123123);

end;

Running PMD through: [CLI]

You can’t perform that action at this time.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4