Относительное отношение в PostgreSQL и как его проверитьJAVA

Программисты JAVA общаются здесь
Anonymous
Относительное отношение в PostgreSQL и как его проверить

Сообщение Anonymous »

У меня есть проблема, в которой у меня есть объект, который занимает некоторые поля, и одна из этих полей-это список (0-2, так нулева), и я должен сохранить его в базе данных (PostgreSQL-это то, что я использую). Теперь я знаю, что наличие отдельной таблицы со ссылкой на внешнее ключ рекомендуется, отношения от одного ко многим. Поэтому я должен установить внешний ключ из детского стола до главной сущности. Я использовал @mappedcollection в Spring Data JDBC, чтобы отобразить отношение. Мне также не нужно отдельное репозиторий для дочерней таблицы, потому что ДАННЫЕ SPRING JDBC рассматривает его как часть заполнителя, принадлежащего родительской таблице. < /P>
record ParentEntity(@Id Long id, other fields, @MappedCollection(idColumn = "parent_table_id") Set childField){}
record ChildEntity(String childField){}
< /code>
Теперь при тестировании вручную все работает нормально. Проблема в том, что мне нужно проверить это. Я пытался использовать левое соединение < /code>, потому что, очевидно, тесты всегда будут жаловаться, что он не может найти дочерний столбец, когда мы пытаемся получить родительскую сущность
Это запрос, который я использовал для его решения: < /p>
"SELECT pt.*, ct.child_table " +
"FROM parent_table pt " +
"LEFT JOIN child_table ai ON ct.parent_table_id = pt.id " +
"WHERE pt.position_id = ?"
< /code>
Но проблема в том, что теперь это даст мне два строка с теми же полями, кроме столбца дочернего, и это не то, что мы хотим, мы хотим иметь только одну строку, потому что родительская сущность принимает набор < /p>
Любые идеи? Структура заботится о производственном коде, и я не знаю, как это делать с тестами.

Подробнее здесь: https://stackoverflow.com/questions/795 ... to-test-it

Вернуться в «JAVA»