Создание нескольких "таблиц" в PouchDB
Я новичок в PouchDB. Теперь я знаю, как создавать БД и как добавлять в нее документы. Но в отличие от MySQL, я не могу создавать таблицы здесь. Один из вариантов - создать несколько PouchDB, что не очень хорошая идея. Я не хочу использовать CouchDB или что-то подобное.
Все, что я хочу использовать, это localStorage. Скажем, если у меня есть 3 таблицы в MySQL:
- пользователи
- Сообщения
- позиции
Как бы я структурировал базы данных, чтобы я мог эффективно использовать 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);
});`
Кроме того, могут возникнуть некоторые потенциальные проблемы с производительностью, если вы создаете глубоко вложенные структуры (асинхронные отношения могут быть полезны).
В общем, я считаю, что эти проблемы не должны быть заглушками с умным дизайном или простой схемой.