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

时间:2020-09-14 08:15:05

标签: flutter dart 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)');    
 }```

0 个答案:

没有答案