어플을 만들면서 DB 를 어떤걸로 쓸지 고민하다가
가장 가벼운? SQLite 를 쓰기로 했습니다. 우선 이전 포스팅에도 있지만 (http://kjcoder.tistory.com/27)
Xamarin 홈페이지에 가면 예시가 잘나와 있습니다.
예시를 가지고 직접 코딩한 내용을 공유해 보고자 합니다.
1. 사전 준비
SQLite 를 사용하기 위해서 당연히 SQLite 관련 라이브러리를 추가해야합니다.
NuGet 패키지 관리로 들어가 아래 두항목을 설치합니다.
첫번째껀 SQLite 라이브러리 이며
두번쨰껀 SQLite 를 사용하기 편하게하는 라이브러리입니다.
참조에 아래처럼 라이브러리가 추가되었으면 됩니다.
2. Database 생성
DB Browser 이용하여 Database 를 만드는 방법도 있지만 어플을 배포할때 DB 파일을 같이 배포하기 번거롭습니다.
그래서 직접 어플실행시 Database 파일을 만들어야 합니다.
방식은 간단합니다. 특정경로의 파일명을 가지고 Create 하면됩니다.
SqliteConnection.CreateFile(DBPath);
위처럼 하면 일단 Database 파일은 만들어 진것입니다.
당연히 있는데 또 만들면 에러가 발생되니 만들기 전 해당 파일이 존재하는지 확인하는건 필수입니다.
3. Table 생성
이제 테이블을 생성합니다. 테이블을 생성하기 위해선 테이블 구조체를 정의 해야합니다.
{
[PrimaryKey, AutoIncrement]
public int ID { get; set; }
public string GroupName { get; set; }
}
보시면 아시겠지만 ID 는 PK 로 지정되었으며 자동 증가 입니다.
PK 가 반드시 존재해야합니다.
{
connection.CreateTable<DB_Group>();
}
위처럼 하면 테이블이 생성됩니다.
너무 간단해서 별로 할말이 없군요;
4. 데이터 편집
데이터 입력도 간단합니다. 정의한 구조에 값을 셋팅하고 처리하면됩니다.
group.GroupName = "testGroup";
var connection = new SQLiteConnection(DBPath);
{
// 추가합니다.
db.Insert(group);
// 수정합니다.
db.Update(group);
// 삭제합니다.
db.Delete(group);
}
5. 데이터 가져오기
데이터가 저장되었으면 가져오기도 해야합니다.
가져오는건 키기준으로 가져오는게 기본이니 키 기준으로 가져와 보겠습니다.
var connection = new SQLiteConnection(DBPath);
{
var query = db.Table<DB_Group>();
DB_Group oneData = query.Where(c => c.ID == key).FirstOrDefault(); // 단일값
List<DB_Group> multiData = query.ToList(); // 여러값
}
위 내용은 가장 기본이고 가장 기초적인 내용입니다.
당연히 비동기로 동작할수 있도록 코딩도 가능합니다.
다음 포스트에서 비동기 동작을 알아보도록 하겠습니다.
'C# > Xamarin Maui' 카테고리의 다른 글
(Xamarin Forms) iOS 환경설정 (0) | 2017.05.23 |
---|---|
(Xamarin.Forms) Xamarin Forms 시작하기 (0) | 2017.05.18 |
(Xamarin) Creating Mobile Apps with Xamarin.Forms Book First Edition (0) | 2017.05.02 |
(Xamarin) Android Studio vs Xamarin (Visual Studio) 성능 테스트 결과 (0) | 2017.04.30 |
(Xamarin) Tool Bar 에 메뉴 넣기 (0) | 2017.04.19 |