[flutter] 플러터(sqflite)에서의 데이터 쿼리 작성 방법
플러터(sqflite)는 내장형 데이터베이스에 접근하기 위한 플러터 플러그인입니다. 데이터베이스에 데이터를 삽입, 수정, 삭제, 조회하는 것이 가능합니다.
이 글에서는 sqflite에서 데이터 쿼리를 작성하는 방법을 알아보겠습니다.
1. 데이터베이스 열기
먼저, 데이터베이스를 열어야 합니다. 다음은 데이터베이스를 열기 위한 코드입니다.
import 'package:sqflite/sqflite.dart';
import 'package:path_provider/path_provider.dart';
Future<Database> openDatabase() async {
var documentsDirectory = await getApplicationDocumentsDirectory();
var path = join(documentsDirectory.path, "example.db");
return openDatabase(path, version: 1,
onCreate: (Database db, int version) async {
await db.execute("CREATE TABLE Test (id INTEGER PRIMARY KEY, name TEXT)");
});
}
위 코드에서는 openDatabase
함수를 사용하여 데이터베이스를 열고, 데이터베이스가 없을 때 테이블을 생성하는 예제입니다.
2. 데이터 삽입
다음으로, 데이터를 삽입하는 방법에 대해 알아보겠습니다.
Future<int> insertData(String name) async {
Database db = await openDatabase();
return db.insert("Test", {"name": name});
}
insertData
함수를 호출하여 데이터를 삽입할 수 있습니다.
3. 데이터 조회
데이터를 조회하는 방법은 다음과 같습니다.
Future<List<Map<String, dynamic>>> getData() async {
Database db = await openDatabase();
return db.query("Test");
}
getData
함수를 사용하여 전체 데이터를 조회할 수 있습니다.
4. 데이터 업데이트
이제, 데이터를 업데이트 하는 방법에 대해 알아봅시다.
Future<int> updateData(int id, String name) async {
Database db = await openDatabase();
return db.update("Test", {"name": name}, where: "id = ?", whereArgs: [id]);
}
updateData
함수를 호출하여 데이터를 업데이트할 수 있습니다.
5. 데이터 삭제
마지막으로, 데이터를 삭제하는 방법에 대해 알아봅시다.
Future<int> deleteData(int id) async {
Database db = await openDatabase();
return db.delete("Test", where: "id = ?", whereArgs: [id]);
}
deleteData
함수를 호출하여 데이터를 삭제할 수 있습니다.
플러터(sqflite)에서 데이터 쿼리 작성 방법에 대해 알아보았습니다. 데이터 삽입, 조회, 업데이트, 삭제하는 방법을 예제와 함께 살펴봤습니다. 이를 활용하여 데이터베이스와 상호작용하는 플러터 앱을 개발할 수 있을 것입니다.