Sqflite数据库在重启应用程序时被重置

问题描述

以下是创建数据库和创建表的代码。我不知道我的代码有什么问题,重新启动应用程序后数据库中的所有数据都被删除了。

 Future<Database> get db async {    
   if (_db != null) {    
     return _db;    
   }    
   _db = await initDatabase();    
   return _db;    
 }    
     
 initDatabase() async {    
   io.Directory documentDirectory = await getApplicationDocumentsDirectory();    
   String path = join(documentDirectory.path,'personcartinfo1.db');    
   var db = await openDatabase(path,version: 1,onCreate: _onCreate);    
   return db;    
 }    
     
 _onCreate(Database db,version) async { 
  //await db.execute("DROP TABLE IF EXISTS student");
   await db.execute('CREATE TABLE personcarttable (product_id VARCHAR PRIMARY KEY,udid VARCHAR,product_name VARCHAR,quantity INTEGER,unit_price TEXT,total_price TEXT,order_id VARCHAR,order_key VARCHAR,date_time TEXT)');    
 }```

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)