From 5067559c4a708f5747199a3676d59bf9b6d2e85f Mon Sep 17 00:00:00 2001 From: lukaseder Date: Mon, 28 Aug 2017 12:52:25 +0200 Subject: [PATCH] [#6530] Add runtime support for procedure calls with top-level %ROWTYPE parameter types in Oracle --- .../java/org/jooq/impl/AbstractRoutine.java | 56 +++++++++++++------ .../src/main/java/org/jooq/impl/Keywords.java | 2 + 2 files changed, 42 insertions(+), 16 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java index df694ebcc3..3eab828312 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java @@ -61,12 +61,15 @@ import static org.jooq.impl.Keywords.K_END; import static org.jooq.impl.Keywords.K_FALSE; import static org.jooq.impl.Keywords.K_FOR; import static org.jooq.impl.Keywords.K_FROM; +import static org.jooq.impl.Keywords.K_IS; import static org.jooq.impl.Keywords.K_NULL; import static org.jooq.impl.Keywords.K_OPEN; import static org.jooq.impl.Keywords.K_PASSING; +import static org.jooq.impl.Keywords.K_RECORD; import static org.jooq.impl.Keywords.K_SELECT; import static org.jooq.impl.Keywords.K_THEN; import static org.jooq.impl.Keywords.K_TRUE; +import static org.jooq.impl.Keywords.K_TYPE; import static org.jooq.impl.Keywords.K_WHEN; import static org.jooq.impl.Keywords.K_XMLTABLE; import static org.jooq.impl.Tools.EMPTY_FIELD; @@ -765,6 +768,39 @@ public abstract class AbstractRoutine extends AbstractQueryPart implements Ro + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -957,22 +993,6 @@ public abstract class AbstractRoutine extends AbstractQueryPart implements Ro - - - - - - - - - - - - - - - - @@ -1305,6 +1325,10 @@ public abstract class AbstractRoutine extends AbstractQueryPart implements Ro + + + + diff --git a/jOOQ/src/main/java/org/jooq/impl/Keywords.java b/jOOQ/src/main/java/org/jooq/impl/Keywords.java index 1817dfa3bc..3204f28e7c 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Keywords.java +++ b/jOOQ/src/main/java/org/jooq/impl/Keywords.java @@ -148,6 +148,7 @@ final class Keywords { static final Keyword K_INSERT = keyword("insert"); static final Keyword K_INT = keyword("int"); static final Keyword K_INTO = keyword("into"); + static final Keyword K_IS = keyword("is"); static final Keyword K_IS_NOT_NULL = keyword("is not null"); static final Keyword K_IS_NULL = keyword("is null"); static final Keyword K_KEEP = keyword("keep"); @@ -199,6 +200,7 @@ final class Keywords { static final Keyword K_PRIOR = keyword("prior"); static final Keyword K_RAISE = keyword("raise"); static final Keyword K_RAISERROR = keyword("raiserror"); + static final Keyword K_RECORD = keyword("record"); static final Keyword K_RECURSIVE = keyword("recursive"); static final Keyword K_REFERENCES = keyword("references"); static final Keyword K_REGEXP = keyword("regexp");