Error: Could not open database - SQLite - React-Native - Android

Error: Could not open database - SQLite - React-Native - Android

我正在努力使用图书馆 react-native-sqlite-storage

我正在使用 android 模拟器,所以我将我的 users.db 文件放在 'android/app/src/main/assets/users.db' 中,这是文件 users.db

的图像

我也已经 运行 命令 npx react-native link 使 link 我正在使用 6.0 以上的 react-native 版本和 auto-link

不幸的是我收到了这个错误:error not connect database

这是我的代码,有人可以帮助我吗?感谢您的宝贵时间!

import React, {Component} from 'react'
import {View, Text, Alert} from 'react-native'
import SQLite from 'react-native-sqlite-storage'


export default class App extends Component {


  constructor(props) {
    super(props)
    SQLite.openDatabase({name:'users', createFromLocation:1}, this.connected, this.failed)
  }

  connected= () =>{
    Alert.alert('Connected with success !')
  }

  failed= (e) =>{
    Alert.alert('Something went wrong !', `${e}`)
  }

  render(){
    return(
      <View>
        <Text>Testing SQLite</Text>
      </View>
    )
  }
}



所以我所做的就是将属性 createFromLocation 更改为数字 2,当你这样做时,系统会创建它自己的数据库,该数据库是空的,所以你只需要创建表并按照你的方式使用它想 !不幸的是,我没能使用我的旧数据库,但使用这个新数据库解决了我的问题!

您需要将您的数据库放入 assets/www 文件夹才能使其正常工作。

只有在我从设备上完全卸载应用程序并使用 npx react-native run-android 从头开始​​重新安装后,预填充的数据库才被读取。

当应用程序已经在设备上时,仅仅重新加载应用程序是不够的。