ANDROID_LIVE Telegram 474
​​Room и связь Many to Many
#room

На мой взгляд, одна из самых неудобных вещей, которая есть в Room — это работа со связью Many to Many.

Для тех, кто не использовал эту связь в Room, я расскажу вкратце. Больше деталей можно почитать тут.
Для её создания в Room есть следующий механизм:
🔸создаётся ассоциативная таблица с идентификаторами первой и второй таблицы;
🔸создаётся новый data-класс, где прописывается связь через Junction, указывая эту таблицу в качестве связи.

По идее, все довольно просто, но главная сложность возникает в фильтрации данных. В документации показан пример с получением полного списка данных, но если её нужно сделать, то единственный вариант — использование @RawQuery вместо @Query и генерирования запроса вручную.
Для такой связи нужно будет создать INNER JOIN по ассоциативной таблице, и дальше применить нужные фильтры.

Главный недостаток тут — отсутствие проверки правильности запроса во время компиляции, поэтому будьте особенно внимательны при его составлении.



tgoop.com/android_live/474
Create:
Last Update:

​​Room и связь Many to Many
#room

На мой взгляд, одна из самых неудобных вещей, которая есть в Room — это работа со связью Many to Many.

Для тех, кто не использовал эту связь в Room, я расскажу вкратце. Больше деталей можно почитать тут.
Для её создания в Room есть следующий механизм:
🔸создаётся ассоциативная таблица с идентификаторами первой и второй таблицы;
🔸создаётся новый data-класс, где прописывается связь через Junction, указывая эту таблицу в качестве связи.

По идее, все довольно просто, но главная сложность возникает в фильтрации данных. В документации показан пример с получением полного списка данных, но если её нужно сделать, то единственный вариант — использование @RawQuery вместо @Query и генерирования запроса вручную.
Для такой связи нужно будет создать INNER JOIN по ассоциативной таблице, и дальше применить нужные фильтры.

Главный недостаток тут — отсутствие проверки правильности запроса во время компиляции, поэтому будьте особенно внимательны при его составлении.

BY Android Live 🤖




Share with your friend now:
tgoop.com/android_live/474

View MORE
Open in Telegram


Telegram News

Date: |

Find your optimal posting schedule and stick to it. The peak posting times include 8 am, 6 pm, and 8 pm on social media. Try to publish serious stuff in the morning and leave less demanding content later in the day. The main design elements of your Telegram channel include a name, bio (brief description), and avatar. Your bio should be: Done! Now you’re the proud owner of a Telegram channel. The next step is to set up and customize your channel. Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. 3How to create a Telegram channel?
from us


Telegram Android Live 🤖
FROM American