Игнорировать последовательности и отношения в персистентности-единицах - PullRequest
0 голосов
/ 05 февраля 2020

Я определил 2 единицы постоянства, каждый из которых указывает на конкретную c схему.

В настоящее время я могу сохранять данные в обеих схемах, используя 2 диспетчера сущностей, каждая из которых использует разные единицы персистентности. .

Это сущность, используемая для обоих единиц постоянства:

@Entity
@NamedQuery(name = "Cliente.findAll", query = "SELECT c FROM Cliente c")
public class Cliente implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@SequenceGenerator(name = "CLIENTE_CLICODIGO_GENERATOR", sequenceName = "CLIENTE_CLI_CODIGO_SEQ", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "CLIENTE_CLICODIGO_GENERATOR")
@Column(name = "cli_codigo")
private Integer cliCodigo;

// bi-directional many-to-one association to Emisor
@ManyToOne
@JoinColumn(name = "emi_codigo")
private Emisor emisor;
...

Каждая схема имеет одинаковые таблицы, однако теперь структурные схемы изменились, и теперь первая схема имеет отношения и последовательности и вторая схема не имеет его.

Структура таблицы в первой схеме выглядит следующим образом:

CREATE TABLE public.cliente (
cli_codigo serial NOT NULL,
emi_codigo int4 NULL,
CONSTRAINT cliente_pkey PRIMARY KEY (cli_codigo),
CONSTRAINT fk_emisor FOREIGN KEY (emi_codigo) REFERENCES emisor(emi_codigo)
)

Структура таблицы во второй схеме выглядит следующим образом:

CREATE TABLE public.cliente (
cli_codigo int4 NOT NULL,
emi_codigo int4 NULL)

Когда я пытаюсь сохранить данные, вторая схема выдает ошибки.

Одна из них связана с несуществующей последовательностью, а вторая связана с несуществующими отношениями с таблицей

Q1) Можно игнорировать последовательности во втором диспетчере сущностей и использовать последовательность, сгенерированную первым диспетчером сущностей, чтобы сохранить этот код во второй схеме?

Q2) Возможно ли игнорировать отношения со вторым постоянным подразделением или руководителем организации?

...