Создание нескольких "таблиц" в PouchDB

Я новичок в PouchDB. Теперь я знаю, как создавать БД и как добавлять в нее документы. Но в отличие от MySQL, я не могу создавать таблицы здесь. Один из вариантов - создать несколько PouchDB, что не очень хорошая идея. Я не хочу использовать CouchDB или что-то подобное.

Все, что я хочу использовать, это localStorage. Скажем, если у меня есть 3 таблицы в MySQL:

  1. пользователи
  2. Сообщения
  3. позиции

Как бы я структурировал базы данных, чтобы я мог эффективно использовать find (Запрос по индексу), чтобы найти данные для конкретной таблицы? И возможно ли также определить типы столбцов, как мы определяем в MySQL?

Здесь что-то объясняется, но принятый ответ предлагает использовать CouchDB, чего я сейчас не хочу. Я думаю, что это возможно только с помощью LocalStorage.

1 ответ

Проверьте этот плагин https://github.com/pouchdb-community/relational-pouch. Он делает именно то, что просил - создает схему БД с несколькими таблицами. Это проходит с определенными ограничениями. Например, сейчас нет прямого способа использовать find по типам, то есть вам нужно искать все объекты и фильтровать по типу:

db.find(selector).then(function (data) {
   return db.rel.parseRelDocs(type, data.docs);
});`

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

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

Другие вопросы по тегам