我是新来的本地反应,我需要一个本地数据库工具列表,它将符合下面描述中的最低标准. 如果这是一个PHP / MySQL应用程序,我构建3个数据库表: t_food (500 rows)- food_id (primary_key)- food_name (s
如果这是一个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秒的时间内返回.
在本地反应世界中,我需要一个本地数据库,它可以达到与上述类似的结果,但也必须符合以下要求:
>必须支持15 MB的持久存储(以便您可以在没有Internet访问的情况下使用它)
>查询由3种食品过滤的餐点必须在不到3秒的时间内在现代主流移动设备上完成.例如.相当于上面的SQL查询必须在不到3秒的时间内在iphone 6和华为Nova Plus上完成.
我已经尝试过以下方法:
A. Realm在此问题中指出的标准2失败:
Improve the speed of a realm query in react-native?
领域问题的解决方案将是这个问题的可接受答案.
B.六年前,我尝试使用iOS设备上的核心数据.由于内存不足,iOS设备不断崩溃.
C.我正在尝试使用SQLite存储,但这里遇到了这个问题:
basic React Native SQLite script returning undefined which causes error
什么工具可以解决这个问题?
考虑将本机作为前端库进行反应,需要一个安静的api才能连接,这样你就可以用php做后端并且本机将从它接收数据如果您需要本地数据库,可以使用react-native-local-mongodb
或react-native-sqlite-storage
或react-native-sqlite
如果你使用redux也可以使用redux-persist