Это мой первый вопрос, и я надеюсь, что он уместен. Поскольку у меня ограниченные знания о базах данных, я не знаю правильной терминологии и не могу найти то, что ищу.
Я решил разработать приложение-словарь для мобильных платформ, поскольку между двумя языками, которые я знаю, нет ни одного. То, что я хотел бы сделать, это создать отношения или ссылки между элементами на двух таблицах. Я не мог найти выполнимый метод для такой простой задачи. Я разрабатываю свое приложение на Xamarin.Forms в Visual Studio с SQLite3.
У меня есть две таблицы для слов / фраз на языке со следующей простой моделью.
ID | Word
1 X
2 Y
3 Z
Например, когда я ищу слово house на Language 1 , я бы хотел получить каждое слово на Language 2 , которое имеет отношение / ссылку на дом . Результат может содержать только одно слово или несколько слов.
Я провел небольшое исследование на эту тему, но сейчас заблудился. Я нашел ForeignKey в SQLite, но он определяет только одно отношение, где мне могут понадобиться 3 или 4 отношения с разными словами. И я подумал о создании еще одной таблицы отношений между словами, но в долгосрочной перспективе это не сработает, когда мне нужно будет добавить или удалить слова при заполнении базы данных. Будет очень сложно изменить / отредактировать отношения с помощью ForeignKeys или сопоставления идентификаторов.
У меня вопрос: есть ли платформа / приложение, где я могу видеть отношения напрямую и изменять их, не беспокоясь об идентификаторах или ForeignKeys? Ничего особенного или супер подробного. Я просто хочу иметь возможность редактировать свои отношения, работая со словами, а не числами (идентификаторами). Я знаю, что в фоновом режиме все будет в идентификаторах.
Заранее спасибо!
Редактировать
Я решил изменить свою модель следующим образом.
Язык 1
ID | Word | Meanings
1 X A
2 Y B
3 Z C, D
Язык 2
ID | Word | Meanings
1 A X
2 B Y
3 C Z
4 D Z
В коде я буду реализовывать метод, чтобы разделить «Значения» на список строк и искать их в поле «Слово» другой таблицы. Таким образом, я не смогу создавать разные записи для гомографий (одинаковое написание, другое значение), но это будет проще, чем сопоставление идентификаторов.