[#1418] Support case-insensitive schema names in code generation
This commit is contained in:
parent
61a796c9a6
commit
7e32e33e86
@ -55,6 +55,7 @@ import org.jooq.util.jaxb.EnumType;
|
||||
import org.jooq.util.jaxb.ForcedType;
|
||||
import org.jooq.util.jaxb.MasterDataTable;
|
||||
import org.jooq.util.jaxb.Schema;
|
||||
import org.jooq.util.oracle.OracleDatabase;
|
||||
|
||||
/**
|
||||
* A base implementation for all types of databases.
|
||||
@ -166,7 +167,14 @@ public abstract class AbstractDatabase implements Database {
|
||||
}
|
||||
else {
|
||||
for (Schema schema : configuredSchemata) {
|
||||
inputSchemata.add(schema.getInputSchema());
|
||||
|
||||
// [#1418] Oracle has case-insensitive schema names.
|
||||
if (this instanceof OracleDatabase) {
|
||||
inputSchemata.add(schema.getInputSchema().toUpperCase());
|
||||
}
|
||||
else {
|
||||
inputSchemata.add(schema.getInputSchema());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -123,7 +123,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
.and(ALL_CONS_COLUMNS.CONSTRAINT_NAME.equal(ALL_CONSTRAINTS.CONSTRAINT_NAME)))
|
||||
.where(ALL_CONSTRAINTS.CONSTRAINT_TYPE.equal(constraintType)
|
||||
.and(ALL_CONSTRAINTS.CONSTRAINT_NAME.notLike("BIN$%"))
|
||||
.and(ALL_CONS_COLUMNS.OWNER.in(getInputSchemata())))
|
||||
.and(ALL_CONS_COLUMNS.OWNER.upper().in(getInputSchemata())))
|
||||
.orderBy(
|
||||
ALL_CONS_COLUMNS.OWNER,
|
||||
ALL_CONS_COLUMNS.CONSTRAINT_NAME,
|
||||
@ -149,7 +149,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
.and(ALL_CONSTRAINTS.TABLE_NAME.equal(ALL_CONS_COLUMNS.TABLE_NAME))
|
||||
.and(ALL_CONSTRAINTS.CONSTRAINT_NAME.equal(ALL_CONS_COLUMNS.CONSTRAINT_NAME)))
|
||||
.where(ALL_CONSTRAINTS.CONSTRAINT_TYPE.equal("R"))
|
||||
.and(ALL_CONSTRAINTS.OWNER.in(getInputSchemata()))
|
||||
.and(ALL_CONSTRAINTS.OWNER.upper().in(getInputSchemata()))
|
||||
.orderBy(
|
||||
ALL_CONS_COLUMNS.OWNER,
|
||||
ALL_CONS_COLUMNS.TABLE_NAME,
|
||||
@ -200,7 +200,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_SEQUENCES.SEQUENCE_NAME,
|
||||
ALL_SEQUENCES.MAX_VALUE)
|
||||
.from(ALL_SEQUENCES)
|
||||
.where(ALL_SEQUENCES.SEQUENCE_OWNER.in(getInputSchemata()))
|
||||
.where(ALL_SEQUENCES.SEQUENCE_OWNER.upper().in(getInputSchemata()))
|
||||
.orderBy(
|
||||
ALL_SEQUENCES.SEQUENCE_OWNER,
|
||||
ALL_SEQUENCES.SEQUENCE_NAME)
|
||||
@ -232,7 +232,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_TAB_COMMENTS.TABLE_NAME,
|
||||
ALL_TAB_COMMENTS.COMMENTS)
|
||||
.from(ALL_TAB_COMMENTS)
|
||||
.where(ALL_TAB_COMMENTS.OWNER.in(getInputSchemata()))
|
||||
.where(ALL_TAB_COMMENTS.OWNER.upper().in(getInputSchemata()))
|
||||
.and(ALL_TAB_COMMENTS.TABLE_NAME.notLike("%$%"))
|
||||
.orderBy(
|
||||
ALL_TAB_COMMENTS.OWNER,
|
||||
@ -270,7 +270,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_TYPES.OWNER,
|
||||
ALL_TYPES.TYPE_NAME)
|
||||
.from(ALL_TYPES)
|
||||
.where(ALL_TYPES.OWNER.in(getInputSchemata()))
|
||||
.where(ALL_TYPES.OWNER.upper().in(getInputSchemata()))
|
||||
.and(ALL_TYPES.TYPECODE.equal("OBJECT"))
|
||||
.orderBy(
|
||||
ALL_TYPES.OWNER,
|
||||
@ -301,7 +301,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_COLL_TYPES.PRECISION,
|
||||
ALL_COLL_TYPES.SCALE)
|
||||
.from(ALL_COLL_TYPES)
|
||||
.where(ALL_COLL_TYPES.OWNER.in(getInputSchemata()))
|
||||
.where(ALL_COLL_TYPES.OWNER.upper().in(getInputSchemata()))
|
||||
.and(ALL_COLL_TYPES.COLL_TYPE.in("VARYING ARRAY", "TABLE"))
|
||||
.orderBy(
|
||||
ALL_COLL_TYPES.OWNER,
|
||||
@ -335,7 +335,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_OBJECTS.OBJECT_NAME,
|
||||
ALL_OBJECTS.OBJECT_ID)
|
||||
.from(ALL_OBJECTS)
|
||||
.where(ALL_OBJECTS.OWNER.in(getInputSchemata())
|
||||
.where(ALL_OBJECTS.OWNER.upper().in(getInputSchemata())
|
||||
.and(ALL_OBJECTS.OBJECT_TYPE.in("FUNCTION", "PROCEDURE")))
|
||||
.orderBy(
|
||||
ALL_OBJECTS.OWNER,
|
||||
@ -365,7 +365,7 @@ public class OracleDatabase extends AbstractDatabase {
|
||||
ALL_OBJECTS.OBJECT_NAME,
|
||||
ALL_OBJECTS.OBJECT_ID)
|
||||
.from(ALL_OBJECTS)
|
||||
.where(ALL_OBJECTS.OWNER.in(getInputSchemata())
|
||||
.where(ALL_OBJECTS.OWNER.upper().in(getInputSchemata())
|
||||
.and(ALL_OBJECTS.OBJECT_TYPE.equal("PACKAGE")))
|
||||
.orderBy(
|
||||
ALL_OBJECTS.OWNER,
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
<unsignedTypes>true</unsignedTypes>
|
||||
<schemata>
|
||||
<schema>
|
||||
<inputSchema>TEST</inputSchema>
|
||||
<inputSchema>test</inputSchema>
|
||||
</schema>
|
||||
<schema>
|
||||
<inputSchema>MULTI_SCHEMA</inputSchema>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user