[#1133] Compilation errors in generated source code if the same constraint name exists in several schemata

This commit is contained in:
Lukas Eder 2012-02-12 11:27:10 +00:00
parent c40db95450
commit e29b417823
20 changed files with 769 additions and 63 deletions

View File

@ -48,9 +48,9 @@ public class DefaultRelations implements Relations {
private static final JooqLogger log = JooqLogger.getLogger(DefaultRelations.class);
private Map<String, ForeignKeyDefinition> foreignKeys = new LinkedHashMap<String, ForeignKeyDefinition>();
private Map<String, UniqueKeyDefinition> primaryKeys = new LinkedHashMap<String, UniqueKeyDefinition>();
private Map<String, UniqueKeyDefinition> uniqueKeys = new LinkedHashMap<String, UniqueKeyDefinition>();
private Map<Key, ForeignKeyDefinition> foreignKeys = new LinkedHashMap<Key, ForeignKeyDefinition>();
private Map<Key, UniqueKeyDefinition> primaryKeys = new LinkedHashMap<Key, UniqueKeyDefinition>();
private Map<Key, UniqueKeyDefinition> uniqueKeys = new LinkedHashMap<Key, UniqueKeyDefinition>();
private Map<ColumnDefinition, ForeignKeyDefinition> foreignKeysByColumn = new LinkedHashMap<ColumnDefinition, ForeignKeyDefinition>();
private Map<ColumnDefinition, UniqueKeyDefinition> primaryKeysByColumn = new LinkedHashMap<ColumnDefinition, UniqueKeyDefinition>();
@ -75,41 +75,46 @@ public class DefaultRelations implements Relations {
}
private UniqueKeyDefinition getUniqueKey(String keyName, ColumnDefinition column, boolean isPK) {
UniqueKeyDefinition key = uniqueKeys.get(keyName);
UniqueKeyDefinition key = uniqueKeys.get(key(column, keyName));
if (key == null) {
key = new DefaultUniqueKeyDefinition(column.getSchema(), keyName, column.getContainer());
uniqueKeys.put(keyName, key);
uniqueKeys.put(key(column, keyName), key);
if (isPK) {
primaryKeys.put(keyName, key);
primaryKeys.put(key(column, keyName), key);
}
}
return key;
}
public void addForeignKey(String foreignKeyName, String uniqueKeyName, ColumnDefinition column) {
public void addForeignKey(
String foreignKeyName,
String uniqueKeyName,
ColumnDefinition foreignKeyColumn,
SchemaDefinition uniqueKeySchema) {
if (log.isDebugEnabled()) {
log.debug("Adding foreign key", foreignKeyName + " (" + column + ") referencing " + uniqueKeyName);
log.debug("Adding foreign key", foreignKeyName + " (" + foreignKeyColumn + ") referencing " + uniqueKeyName);
}
ForeignKeyDefinition foreignKey = foreignKeys.get(foreignKeyName);
ForeignKeyDefinition foreignKey = foreignKeys.get(key(foreignKeyColumn, foreignKeyName));
if (foreignKey == null) {
UniqueKeyDefinition uniqueKey = uniqueKeys.get(uniqueKeyName);
UniqueKeyDefinition uniqueKey = uniqueKeys.get(key(uniqueKeySchema, uniqueKeyName));
// If the unique key is not loaded, ignore this foreign key
if (uniqueKey != null) {
foreignKey = new DefaultForeignKeyDefinition(column.getSchema(), foreignKeyName, column.getContainer(), uniqueKey);
foreignKeys.put(foreignKeyName, foreignKey);
foreignKey = new DefaultForeignKeyDefinition(foreignKeyColumn.getSchema(), foreignKeyName, foreignKeyColumn.getContainer(), uniqueKey);
foreignKeys.put(key(foreignKeyColumn, foreignKeyName), foreignKey);
uniqueKey.getForeignKeys().add(foreignKey);
}
}
if (foreignKey != null) {
foreignKey.getKeyColumns().add(column);
foreignKey.getKeyColumns().add(foreignKeyColumn);
}
}
@ -191,4 +196,59 @@ public class DefaultRelations implements Relations {
return new ArrayList<ForeignKeyDefinition>(result);
}
private static Key key(Definition definition, String keyName) {
return new Key(definition.getSchema(), keyName);
}
/**
* A simple local wrapper for a key definition (schema + key name)
*/
private static class Key {
final SchemaDefinition schema;
final String keyName;
Key(SchemaDefinition schema, String keyName) {
this.schema = schema;
this.keyName = keyName;
}
@Override
public String toString() {
return "Key [schema=" + schema + ", keyName=" + keyName + "]";
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((keyName == null) ? 0 : keyName.hashCode());
result = prime * result + ((schema == null) ? 0 : schema.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Key other = (Key) obj;
if (keyName == null) {
if (other.keyName != null)
return false;
}
else if (!keyName.equals(other.keyName))
return false;
if (schema == null) {
if (other.schema != null)
return false;
}
else if (!schema.equals(other.schema))
return false;
return true;
}
}
}

View File

@ -205,7 +205,7 @@ public class ASEDatabase extends AbstractDatabase {
String uniqueKeyName = record.getValueAsString("pk");
ColumnDefinition column = referencingTable.getColumn(foreignKeyColumnName);
relations.addForeignKey(foreignKeyName, uniqueKeyName, column);
relations.addForeignKey(foreignKeyName, uniqueKeyName, column, getSchema());
}
}
}

View File

@ -149,7 +149,8 @@ public class DB2Database extends AbstractDatabase {
References.TABSCHEMA.trim(),
References.TABNAME,
References.FK_COLNAMES,
concat(References.REFTABNAME, val("__"), References.REFKEYNAME).as("referenced_constraint_name"))
concat(References.REFTABNAME, val("__"), References.REFKEYNAME).as("referenced_constraint_name"),
References.REFTABSCHEMA.trim())
.from(REFERENCES)
.where(References.TABSCHEMA.in(getInputSchemata()))
.orderBy(
@ -159,13 +160,15 @@ public class DB2Database extends AbstractDatabase {
References.FK_COLNAMES)
.fetch()) {
SchemaDefinition schema = getSchema(record.getValue(References.TABSCHEMA.trim()));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(References.TABSCHEMA.trim()));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(References.REFTABSCHEMA.trim()));
String foreignKey = record.getValue("constraint_name", String.class);
String foreignKeyTableName = record.getValue(References.TABNAME);
String foreignKeyColumn = record.getValue(References.FK_COLNAMES);
String uniqueKey = record.getValue("referenced_constraint_name", String.class);
TableDefinition foreignKeyTable = getTable(schema, foreignKeyTableName);
TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName);
if (foreignKeyTable != null) {
/*
@ -178,7 +181,7 @@ public class DB2Database extends AbstractDatabase {
for (int i = 0; i < referencingColumnNames.length; i++) {
ColumnDefinition column = foreignKeyTable.getColumn(referencingColumnNames[i]);
relations.addForeignKey(foreignKey, uniqueKey, column);
relations.addForeignKey(foreignKey, uniqueKey, column, uniqueKeySchema);
}
}
}

View File

@ -144,39 +144,44 @@ public class DerbyDatabase extends AbstractDatabase {
@Override
protected void loadForeignKeys(DefaultRelations relations) throws SQLException {
Field<String> foreignKey = field("fc.constraintname", String.class);
Field<String> foreignKeyTable = field("ft.tablename", String.class);
Field<String> foreignKeySchema = field("fs.schemaname", String.class);
Field<?> foreignKeyDescriptor = field("fg.descriptor");
Field<String> uniqueKey = field("pc.constraintname", String.class);
Field<String> fkName = field("fc.constraintname", String.class);
Field<String> fkTable = field("ft.tablename", String.class);
Field<String> fkSchema = field("fs.schemaname", String.class);
Field<?> fkDescriptor = field("fg.descriptor");
Field<String> ukName = field("pc.constraintname", String.class);
Field<String> ukSchema = field("ps.schemaname", String.class);
for (Record record : create().select(
foreignKey,
foreignKeyTable,
foreignKeySchema,
foreignKeyDescriptor,
uniqueKey)
fkName,
fkTable,
fkSchema,
fkDescriptor,
ukName,
ukSchema)
.from("sys.sysconstraints fc")
.join("sys.sysforeignkeys f ").on("f.constraintid = fc.constraintid")
.join("sys.sysconglomerates fg").on("fg.conglomerateid = f.conglomerateid")
.join("sys.systables ft").on("ft.tableid = fg.tableid")
.join("sys.sysschemas fs").on("ft.schemaid = fs.schemaid")
.join("sys.sysconstraints pc").on("pc.constraintid = f.keyconstraintid")
.join("sys.sysschemas ps").on("pc.schemaid = ps.schemaid")
.where("fc.type = 'F'")
.fetch()) {
SchemaDefinition schema = getSchema(record.getValue(foreignKeySchema));
String foreignKeyName = record.getValue(foreignKey);
String foreignKeyTableName = record.getValue(foreignKeyTable);
List<Integer> foreignKeyIndexes = decode(record.getValueAsString(foreignKeyDescriptor));
String uniqueKeyName = record.getValue(uniqueKey);
SchemaDefinition foreignKeySchema = getSchema(record.getValue(fkSchema));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ukSchema));
TableDefinition referencingTable = getTable(schema, foreignKeyTableName);
String foreignKeyName = record.getValue(fkName);
String foreignKeyTableName = record.getValue(fkTable);
List<Integer> foreignKeyIndexes = decode(record.getValueAsString(fkDescriptor));
String uniqueKeyName = record.getValue(ukName);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTableName);
if (referencingTable != null) {
for (int i = 0; i < foreignKeyIndexes.size(); i++) {
ColumnDefinition column = referencingTable.getColumn(foreignKeyIndexes.get(i));
relations.addForeignKey(foreignKeyName, uniqueKeyName, column);
relations.addForeignKey(foreignKeyName, uniqueKeyName, column, uniqueKeySchema);
}
}
}

View File

@ -142,7 +142,8 @@ public class H2Database extends AbstractDatabase {
CrossReferences.FKTABLE_NAME,
CrossReferences.FKTABLE_SCHEMA,
CrossReferences.FKCOLUMN_NAME,
Constraints.CONSTRAINT_NAME)
Constraints.CONSTRAINT_NAME,
Constraints.CONSTRAINT_SCHEMA)
.from(CROSS_REFERENCES)
.join(CONSTRAINTS)
.on(CrossReferences.PK_NAME.equal(Constraints.UNIQUE_INDEX_NAME))
@ -155,18 +156,19 @@ public class H2Database extends AbstractDatabase {
CrossReferences.ORDINAL_POSITION.asc())
.fetch()) {
SchemaDefinition schema = getSchema(record.getValue(CrossReferences.FKTABLE_SCHEMA));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(CrossReferences.FKTABLE_SCHEMA));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(Constraints.CONSTRAINT_SCHEMA));
String foreignKeyTableName = record.getValue(CrossReferences.FKTABLE_NAME);
String foreignKeyColumn = record.getValue(CrossReferences.FKCOLUMN_NAME);
String foreignKey = record.getValue(CrossReferences.FK_NAME);
String uniqueKey = record.getValue(Constraints.CONSTRAINT_NAME);
TableDefinition foreignKeyTable = getTable(schema, foreignKeyTableName);
TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName);
if (foreignKeyTable != null) {
ColumnDefinition referencingColumn = foreignKeyTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema);
}
}
}

View File

@ -144,6 +144,7 @@ public class HSQLDBDatabase extends AbstractDatabase {
Result<Record> result = create()
.select(
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME,
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA,
KEY_COLUMN_USAGE.CONSTRAINT_NAME,
KEY_COLUMN_USAGE.TABLE_SCHEMA,
KEY_COLUMN_USAGE.TABLE_NAME,
@ -161,17 +162,19 @@ public class HSQLDBDatabase extends AbstractDatabase {
.fetch();
for (Record record : result) {
SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA));
String foreignKey = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME);
String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME);
String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME);
String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME);
TableDefinition referencingTable = getTable(schema, foreignKeyTable);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable);
if (referencingTable != null) {
ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema);
}
}
}

View File

@ -149,6 +149,7 @@ public class IngresDatabase extends AbstractDatabase {
trim(IirefConstraints.REF_SCHEMA_NAME),
trim(IirefConstraints.REF_CONSTRAINT_NAME),
trim(IirefConstraints.UNIQUE_CONSTRAINT_NAME),
trim(IirefConstraints.UNIQUE_SCHEMA_NAME),
trim(IirefConstraints.REF_TABLE_NAME),
trim(IiindexColumns.COLUMN_NAME))
.from(IICONSTRAINTS)
@ -174,17 +175,19 @@ public class IngresDatabase extends AbstractDatabase {
.fetch();
for (Record record : result) {
SchemaDefinition schema = getSchema(record.getValue(trim(IirefConstraints.REF_SCHEMA_NAME)));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(trim(IirefConstraints.REF_SCHEMA_NAME)));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(trim(IirefConstraints.UNIQUE_SCHEMA_NAME)));
String foreignKey = record.getValue(trim(IirefConstraints.REF_CONSTRAINT_NAME));
String foreignKeyTable = record.getValue(trim(IirefConstraints.REF_TABLE_NAME));
String foreignKeyColumn = record.getValue(trim(IiindexColumns.COLUMN_NAME));
String uniqueKey = record.getValue(trim(IirefConstraints.UNIQUE_CONSTRAINT_NAME));
TableDefinition referencingTable = getTable(schema, foreignKeyTable);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable);
if (referencingTable != null) {
ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema);
}
}
}

View File

@ -141,6 +141,7 @@ public class MySQLDatabase extends AbstractDatabase {
ReferentialConstraints.TABLE_NAME,
ReferentialConstraints.REFERENCED_TABLE_NAME,
ReferentialConstraints.UNIQUE_CONSTRAINT_NAME,
ReferentialConstraints.UNIQUE_CONSTRAINT_SCHEMA,
KeyColumnUsage.COLUMN_NAME)
.from(REFERENTIAL_CONSTRAINTS)
.join(KEY_COLUMN_USAGE)
@ -153,7 +154,8 @@ public class MySQLDatabase extends AbstractDatabase {
KeyColumnUsage.ORDINAL_POSITION.asc())
.fetch()) {
SchemaDefinition schema = getSchema(record.getValue(ReferentialConstraints.CONSTRAINT_SCHEMA));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(ReferentialConstraints.CONSTRAINT_SCHEMA));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ReferentialConstraints.UNIQUE_CONSTRAINT_SCHEMA));
String foreignKey = record.getValue(ReferentialConstraints.CONSTRAINT_NAME);
String foreignKeyColumn = record.getValue(KeyColumnUsage.COLUMN_NAME);
@ -161,13 +163,13 @@ public class MySQLDatabase extends AbstractDatabase {
String referencedKey = record.getValue(ReferentialConstraints.UNIQUE_CONSTRAINT_NAME);
String referencedTableName = record.getValue(ReferentialConstraints.REFERENCED_TABLE_NAME);
TableDefinition foreignKeyTable = getTable(schema, foreignKeyTableName);
TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName);
if (foreignKeyTable != null) {
ColumnDefinition column = foreignKeyTable.getColumn(foreignKeyColumn);
String key = getKeyName(referencedTableName, referencedKey);
relations.addForeignKey(foreignKey, key, column);
relations.addForeignKey(foreignKey, key, column, uniqueKeySchema);
}
}
}

View File

@ -141,7 +141,8 @@ public class OracleDatabase extends AbstractDatabase {
ALL_CONS_COLUMNS.CONSTRAINT_NAME,
ALL_CONS_COLUMNS.TABLE_NAME,
ALL_CONS_COLUMNS.COLUMN_NAME,
ALL_CONSTRAINTS.R_CONSTRAINT_NAME)
ALL_CONSTRAINTS.R_CONSTRAINT_NAME,
ALL_CONSTRAINTS.R_OWNER)
.from(ALL_CONSTRAINTS
.join(ALL_CONS_COLUMNS)
.on(ALL_CONSTRAINTS.OWNER.equal(ALL_CONS_COLUMNS.OWNER))
@ -156,16 +157,18 @@ public class OracleDatabase extends AbstractDatabase {
ALL_CONS_COLUMNS.POSITION)
.fetch()) {
SchemaDefinition schema = getSchema(record.getValue(ALL_CONS_COLUMNS.OWNER));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(ALL_CONS_COLUMNS.OWNER));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ALL_CONSTRAINTS.R_OWNER));
String foreignKeyName = record.getValue(ALL_CONS_COLUMNS.CONSTRAINT_NAME);
String foreignKeyTableName = record.getValue(ALL_CONS_COLUMNS.TABLE_NAME);
String foreignKeyColumnName = record.getValue(ALL_CONS_COLUMNS.COLUMN_NAME);
String uniqueKeyName = record.getValue(ALL_CONSTRAINTS.R_CONSTRAINT_NAME);
TableDefinition referencingTable = getTable(schema, foreignKeyTableName);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTableName);
if (referencingTable != null) {
ColumnDefinition column = referencingTable.getColumn(foreignKeyColumnName);
relations.addForeignKey(foreignKeyName, uniqueKeyName, column);
relations.addForeignKey(foreignKeyName, uniqueKeyName, column, uniqueKeySchema);
}
}
}

View File

@ -144,6 +144,7 @@ public class PostgresDatabase extends AbstractDatabase {
Result<Record> result = create()
.select(
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME,
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA,
KEY_COLUMN_USAGE.CONSTRAINT_NAME,
KEY_COLUMN_USAGE.TABLE_SCHEMA,
KEY_COLUMN_USAGE.TABLE_NAME,
@ -161,20 +162,22 @@ public class PostgresDatabase extends AbstractDatabase {
.fetch();
for (Record record : result) {
SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA));
String foreignKey = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME);
String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME);
String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME);
String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME);
TableDefinition referencingTable = getTable(schema, foreignKeyTable);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable);
if (referencingTable != null) {
// [#986] Add the table name as a namespace prefix to the key
// name. In Postgres, foreign key names are only unique per table
ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKeyTable + "__" + foreignKey, uniqueKey, referencingColumn);
relations.addForeignKey(foreignKeyTable + "__" + foreignKey, uniqueKey, referencingColumn, uniqueKeySchema);
}
}
}

View File

@ -143,6 +143,7 @@ public class SQLServerDatabase extends AbstractDatabase {
.select(
REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME,
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME,
REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA,
KEY_COLUMN_USAGE.TABLE_SCHEMA,
KEY_COLUMN_USAGE.TABLE_NAME,
KEY_COLUMN_USAGE.COLUMN_NAME)
@ -159,17 +160,19 @@ public class SQLServerDatabase extends AbstractDatabase {
.fetch();
for (Record record : result) {
SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA));
SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA));
String foreignKey = record.getValue(REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME);
String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME);
String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME);
String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME);
TableDefinition referencingTable = getTable(schema, foreignKeyTable);
TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable);
if (referencingTable != null) {
ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn);
relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema);
}
}
}

View File

@ -204,7 +204,7 @@ public class SybaseDatabase extends AbstractDatabase {
if (foreignKeyTable != null) {
ColumnDefinition referencingColumn = foreignKeyTable.getColumn(foreignKeyColumn);
relations.addForeignKey(foreignKey, referencedKey, referencingColumn);
relations.addForeignKey(foreignKey, referencedKey, referencingColumn, getSchema());
}
}
}

View File

@ -12,6 +12,8 @@ DROP SEQUENCE s_triggers_sequence/
DROP TRIGGER t_triggers_trigger/
DROP TABLE multi_schema.t_book_sale/
DROP TABLE multi_schema.t_book/
DROP TABLE multi_schema.t_author/
DROP TABLE t_triggers/
DROP TABLE t_arrays/
@ -471,8 +473,9 @@ COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name'/
COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID'/
COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock'/
GRANT ALL ON T_BOOK_TO_BOOK_STORE TO MULTI_SCHEMA
/
GRANT ALL ON T_BOOK_TO_BOOK_STORE TO MULTI_SCHEMA/
GRANT ALL ON T_BOOK_DETAILS TO MULTI_SCHEMA/
GRANT ALL ON T_LANGUAGE TO MULTI_SCHEMA/
CREATE TABLE MULTI_SCHEMA.T_BOOK_SALE (
ID NUMBER(7) NOT NULL,
@ -486,6 +489,36 @@ CREATE TABLE MULTI_SCHEMA.T_BOOK_SALE (
)
/
CREATE TABLE MULTI_SCHEMA.t_author (
id NUMBER(7) NOT NULL,
first_name VARCHAR2(50),
last_name VARCHAR2(50) NOT NULL,
date_of_birth DATE,
year_of_birth NUMBER(7),
address test.u_address_type,
CONSTRAINT pk_t_author PRIMARY KEY (ID)
)
/
CREATE TABLE MULTI_SCHEMA.t_book (
id NUMBER(7) NOT NULL,
author_id NUMBER(7) NOT NULL,
co_author_id NUMBER(7),
details_id NUMBER(7),
title VARCHAR2(400) NOT NULL,
published_in NUMBER(7) NOT NULL,
language_id NUMBER(7) NOT NULL,
content_text CLOB,
content_pdf BLOB,
CONSTRAINT pk_t_book PRIMARY KEY (ID),
CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE,
CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE,
CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES TEST.T_BOOK_DETAILS(ID) ON DELETE CASCADE,
CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES TEST.T_LANGUAGE(ID) ON DELETE CASCADE
)
/
CREATE TABLE t_arrays (
id NUMBER(7) not null,

View File

@ -14,9 +14,13 @@ public class Keys extends org.jooq.impl.AbstractKeys {
// IDENTITY definitions
// UNIQUE and PRIMARY KEY definitions
public static final org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> PK_T_AUTHOR = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID);
public static final org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> PK_T_BOOK = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID);
public static final org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookSaleRecord> PK_T_BOOK_SALE = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.ID);
// FOREIGN KEY definitions
public static final org.jooq.ForeignKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID);
public static final org.jooq.ForeignKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID);
public static final org.jooq.ForeignKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookSaleRecord, org.jooq.test.oracle.generatedclasses.test.tables.records.TBookToBookStoreRecord> FK_T_BOOK_TO_BOOK_STORE = createForeignKey(org.jooq.test.oracle.generatedclasses.test.Keys.PK_B2BS, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID);
/**

View File

@ -8,7 +8,7 @@ package org.jooq.test.oracle.generatedclasses.multi_schema;
*/
public class MultiSchema extends org.jooq.impl.SchemaImpl {
private static final long serialVersionUID = -540234768;
private static final long serialVersionUID = -1472774415;
/**
* The singleton instance of MULTI_SCHEMA
@ -24,6 +24,9 @@ public class MultiSchema extends org.jooq.impl.SchemaImpl {
@Override
public final java.util.List<org.jooq.Table<?>> getTables() {
return java.util.Arrays.<org.jooq.Table<?>>asList(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE);
return java.util.Arrays.<org.jooq.Table<?>>asList(
org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR,
org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK,
org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE);
}
}

View File

@ -10,6 +10,16 @@ package org.jooq.test.oracle.generatedclasses.multi_schema;
*/
public final class Tables {
/**
* The table MULTI_SCHEMA.T_AUTHOR
*/
public static org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor T_AUTHOR = org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR;
/**
* The table MULTI_SCHEMA.T_BOOK
*/
public static org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook T_BOOK = org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK;
/**
* The table MULTI_SCHEMA.T_BOOK_SALE
*/

View File

@ -0,0 +1,95 @@
/**
* This class is generated by jOOQ
*/
package org.jooq.test.oracle.generatedclasses.multi_schema.tables;
/**
* This class is generated by jOOQ.
*/
public class TAuthor extends org.jooq.impl.UpdatableTableImpl<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> {
private static final long serialVersionUID = 1944987199;
/**
* The singleton instance of T_AUTHOR
*/
public static final org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor T_AUTHOR = new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor();
/**
* The class holding records for this type
*/
private static final java.lang.Class<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord.class;
/**
* The class holding records for this type
*/
@Override
public java.lang.Class<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> getRecordType() {
return __RECORD_TYPE;
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.lang.Integer> ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.lang.String> FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.lang.String> LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.sql.Date> DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.lang.Integer> YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
*
* The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.<br/>
* Deserialising this field might not work!
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord, java.lang.Object> ADDRESS = createField("ADDRESS", org.jooq.util.oracle.OracleDataType.getDefaultDataType("U_ADDRESS_TYPE"), this);
/**
* No further instances allowed
*/
private TAuthor() {
super("T_AUTHOR", org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA);
}
/**
* No further instances allowed
*/
private TAuthor(java.lang.String alias) {
super(alias, org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR);
}
@Override
public org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> getMainKey() {
return org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_AUTHOR;
}
@Override
@SuppressWarnings("unchecked")
public java.util.List<org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord>> getKeys() {
return java.util.Arrays.<org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord>>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_AUTHOR);
}
@Override
public org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor as(java.lang.String alias) {
return new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor(alias);
}
}

View File

@ -0,0 +1,128 @@
/**
* This class is generated by jOOQ
*/
package org.jooq.test.oracle.generatedclasses.multi_schema.tables;
/**
* This class is generated by jOOQ.
*/
public class TBook extends org.jooq.impl.UpdatableTableImpl<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> {
private static final long serialVersionUID = 1346695844;
/**
* The singleton instance of T_BOOK
*/
public static final org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook T_BOOK = new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook();
/**
* The class holding records for this type
*/
private static final java.lang.Class<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord.class;
/**
* The class holding records for this type
*/
@Override
public java.lang.Class<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> getRecordType() {
return __RECORD_TYPE;
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.Integer> ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.Integer> AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.CO_AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.Integer> CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.Integer> DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.String> TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.Integer> PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this);
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.LANGUAGE_ID]
* REFERENCES T_LANGUAGE [TEST.T_LANGUAGE.ID]
* </pre></code>
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, org.jooq.test.oracle.generatedclasses.test.enums.TLanguage> LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage.class), this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, java.lang.String> CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this);
/**
* An uncommented item
*/
public final org.jooq.TableField<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, byte[]> CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this);
/**
* No further instances allowed
*/
private TBook() {
super("T_BOOK", org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA);
}
/**
* No further instances allowed
*/
private TBook(java.lang.String alias) {
super(alias, org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK);
}
@Override
public org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> getMainKey() {
return org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK;
}
@Override
@SuppressWarnings("unchecked")
public java.util.List<org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord>> getKeys() {
return java.util.Arrays.<org.jooq.UniqueKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord>>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK);
}
@Override
@SuppressWarnings("unchecked")
public java.util.List<org.jooq.ForeignKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, ?>> getReferences() {
return java.util.Arrays.<org.jooq.ForeignKey<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord, ?>>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.oracle.generatedclasses.multi_schema.Keys.FK_T_BOOK_CO_AUTHOR_ID);
}
@Override
public org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook as(java.lang.String alias) {
return new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook(alias);
}
}

View File

@ -0,0 +1,137 @@
/**
* This class is generated by jOOQ
*/
package org.jooq.test.oracle.generatedclasses.multi_schema.tables.records;
/**
* This class is generated by jOOQ.
*/
public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord> {
private static final long serialVersionUID = -1384020730;
/**
* An uncommented item
*
* PRIMARY KEY
*/
public void setId(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID, value);
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public java.lang.Integer getId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID);
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public java.util.List<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> fetchTBookListByAuthorId() {
return create()
.selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK)
.where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID)))
.fetch();
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public java.util.List<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> fetchTBookListByCoAuthorId() {
return create()
.selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK)
.where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID)))
.fetch();
}
/**
* An uncommented item
*/
public void setFirstName(java.lang.String value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.FIRST_NAME, value);
}
/**
* An uncommented item
*/
public java.lang.String getFirstName() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.FIRST_NAME);
}
/**
* An uncommented item
*/
public void setLastName(java.lang.String value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.LAST_NAME, value);
}
/**
* An uncommented item
*/
public java.lang.String getLastName() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.LAST_NAME);
}
/**
* An uncommented item
*/
public void setDateOfBirth(java.sql.Date value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value);
}
/**
* An uncommented item
*/
public java.sql.Date getDateOfBirth() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH);
}
/**
* An uncommented item
*/
public void setYearOfBirth(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value);
}
/**
* An uncommented item
*/
public java.lang.Integer getYearOfBirth() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH);
}
/**
* An uncommented item
*
* The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.<br/>
* Deserialising this field might not work!
*/
public void setAddress(java.lang.Object value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ADDRESS, value);
}
/**
* An uncommented item
*
* The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.<br/>
* Deserialising this field might not work!
*/
public java.lang.Object getAddress() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ADDRESS);
}
/**
* Create a detached TAuthorRecord
*/
public TAuthorRecord() {
super(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR);
}
}

View File

@ -0,0 +1,209 @@
/**
* This class is generated by jOOQ
*/
package org.jooq.test.oracle.generatedclasses.multi_schema.tables.records;
/**
* This class is generated by jOOQ.
*/
public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl<org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord> {
private static final long serialVersionUID = -1667731665;
/**
* An uncommented item
*
* PRIMARY KEY
*/
public void setId(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID, value);
}
/**
* An uncommented item
*
* PRIMARY KEY
*/
public java.lang.Integer getId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public void setAuthorId(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID, value);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public java.lang.Integer getAuthorId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord fetchTAuthorByAuthorId() {
return create()
.selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR)
.where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID)))
.fetchOne();
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.CO_AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public void setCoAuthorId(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID, value);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.CO_AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public java.lang.Integer getCoAuthorId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.CO_AUTHOR_ID]
* REFERENCES T_AUTHOR [MULTI_SCHEMA.T_AUTHOR.ID]
* </pre></code>
*/
public org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() {
return create()
.selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR)
.where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID)))
.fetchOne();
}
/**
* An uncommented item
*/
public void setDetailsId(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.DETAILS_ID, value);
}
/**
* An uncommented item
*/
public java.lang.Integer getDetailsId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.DETAILS_ID);
}
/**
* An uncommented item
*/
public void setTitle(java.lang.String value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.TITLE, value);
}
/**
* An uncommented item
*/
public java.lang.String getTitle() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.TITLE);
}
/**
* An uncommented item
*/
public void setPublishedIn(java.lang.Integer value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.PUBLISHED_IN, value);
}
/**
* An uncommented item
*/
public java.lang.Integer getPublishedIn() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.PUBLISHED_IN);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.LANGUAGE_ID]
* REFERENCES T_LANGUAGE [TEST.T_LANGUAGE.ID]
* </pre></code>
*/
public void setLanguageId(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.LANGUAGE_ID, value);
}
/**
* An uncommented item
* <p>
* <code><pre>
* FOREIGN KEY [MULTI_SCHEMA.T_BOOK.LANGUAGE_ID]
* REFERENCES T_LANGUAGE [TEST.T_LANGUAGE.ID]
* </pre></code>
*/
public org.jooq.test.oracle.generatedclasses.test.enums.TLanguage getLanguageId() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.LANGUAGE_ID);
}
/**
* An uncommented item
*/
public void setContentText(java.lang.String value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_TEXT, value);
}
/**
* An uncommented item
*/
public java.lang.String getContentText() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_TEXT);
}
/**
* An uncommented item
*/
public void setContentPdf(byte[] value) {
setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_PDF, value);
}
/**
* An uncommented item
*/
public byte[] getContentPdf() {
return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_PDF);
}
/**
* Create a detached TBookRecord
*/
public TBookRecord() {
super(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK);
}
}