Issue 3106: Use StringExpression, test case renamed, moved plsql to resource folder.
This commit is contained in:
1 parent
34eb080884
commit
ac1b5ed159
3 files changed
+14
-3
No files matched your search
@@ -2686,7 +2686,7 @@ ASTFetchStatement FetchStatement() :
|
||||
ASTEmbeddedSqlStatement EmbeddedSqlStatement() :
|
||||
{}
|
||||
{
|
||||
<EXECUTE> <IMMEDIATE> Expression()
|
||||
<EXECUTE> <IMMEDIATE> StringExpression()
|
||||
[ <INTO> Name() ("," Name())* ]
|
||||
[ <USING> [ <IN> [ <OUT> ] | <OUT> ] Expression() ("," [ <IN> [ <OUT> ] | <OUT> ] Expression())* ]
|
||||
[ ( <RETURN> | <RETURNING> ) <INTO> Expression() ("," Expression())*] ";"
|
||||
|
||||
@@ -75,7 +75,7 @@ public class PLSQLParserTest extends AbstractPLSQLParserTst {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCaseIssue3106() {
|
||||
plsql.parse("CREATE OR REPLACE PROCEDURE bar\nIS\n v_link varchar2(10) := 'xxx';\nBEGIN\n EXECUTE IMMEDIATE 'drop database link ' || v_link;\nEND bar;");
|
||||
public void testExecuteImmediateIssue3106() {
|
||||
plsql.parseResource("ExecuteImmediateIssue3106.pls");
|
||||
}
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
--
|
||||
-- BSD-style license; for more info see http://pmd.sourceforge.net/license.html
|
||||
--
|
||||
|
||||
CREATE OR REPLACE PROCEDURE bar
|
||||
IS
|
||||
v_link varchar2(10) := 'xxx';
|
||||
BEGIN
|
||||
-- EXECUTE IMMEDIATE with an expression instead of just a literal or variable.
|
||||
EXECUTE IMMEDIATE 'drop database link ' || v_link;
|
||||
END bar;
|
||||
Reference in new issue
Block a user