【发布时间】:2020-04-26 06:37:49
【问题描述】:
我是 Flutter 开发的新手。我试图使用 sqflite 在我的移动应用程序中创建一个 sqlite 数据库。
import 'package:mcqlanka/src/util/constants.dart';
import 'dart:io' as io;
import 'package:path/path.dart';
import 'package:path_provider/path_provider.dart';
import 'dart:async';
import 'package:sqflite/sqlite_api.dart';
class DBHelper {
static Database _db;
Future<Database> get db async {
if (_db != null) {
return _db;
}
_db = await initDatabase();
return _db;
}
initDatabase() async {
io.Directory documentsDirectory = await getApplicationDocumentsDirectory();
String path = join(documentsDirectory.path, DB_NAME);
var db = await openDatabase(path, version: 1, onCreate: _onCreate);
return db;
}
_onCreate(Database db, int version) async {
await db.execute(
'CREATE TABLE user (uid TEXT PRIMARY KEY, email TEXT, image TEXT)');
}
}
但它总是说 openDatabase 没有在类中定义。我正在使用 sqflite:^1.1.3。我也尝试过以前的版本。但我得到了同样的错误。
【问题讨论】: