我是本地反应新手,我需要一个本地数据库工具列表,这些工具将满足要遵循的描述中的最低标准。
如果这是一个 PHP/MySQL 应用程序,我会构建 3 个数据库表:
t_food (500 rows)
- food_id (primary_key)
- food_name (string)
t_meal (100 000 rows)
- meal_id (primary_key)
- meal_name (string)
t_meal_item (1 000 000 rows)
- meal_id (foreign_key)
- food_id (foreign_key)
这三个表在MySQL中加起来大约占用10MB到15MB。然后我将使用 PHP 创建一个界面来显示此查询的结果:
SELECT meal_id FROM t_meal_item WHERE food_id = @food1 AND meal_id IN (SELECT meal_id FROM t_meal_item WHERE food_id = @food2 AND meal_id IN (SELECT meal_id FROM t_meal_item WHERE food_id = @food3))
在MySQL/PHP应用程序中,SQL查询的结果将在不到2秒的时间内返回。
在react-native世界中,我需要一个本地数据库来实现与上面类似的结果,但还必须符合以下要求:
必须支持 15 MB 的持久存储(这样您就可以在没有互联网访问的情况下使用它)
在现代主流移动设备上,查询由 3 种食物过滤的膳食必须在 3 秒内完成。例如。在 iPhone 6 和华为 Nova Plus 上,上述 SQL 查询的等效项必须在 3 秒内完成。
我已经尝试过以下操作:
A. Realm 不符合标准 2,如本问题所示:
提高反应本机领域查询的速度? https://stackoverflow.com/questions/46394870/improve-the-speed-of-a-realm-query-in-react-native
领域问题的解决方案将是该问题的可接受答案。
B. 六年前,我在 iOS 设备上尝试使用核心数据。 iOS设备因内存不足而不断崩溃。
C. 我正在尝试 SQLite Storage,但已经遇到了这个问题:
基本的 React Native SQLite 脚本返回未定义,这会导致错误 https://stackoverflow.com/questions/46459063/basic-react-native-sqlite-script-returning-undefined-which-causes-error
有什么工具可以解决这个问题呢?