ườ

Tr

ọ ự ng ĐH Khoa H c T  Nhiên TP.HCM

TRUNG TÂM TIN H CỌ

L p trình Windows Phone Bài 8: Tìm hi u SQLITE

GV Biên so n: Tr n Duy Thanh

2014

Nội dung

• Đặt vấn đề

• Các bước cài đặt, cấu hình

• Các thao tác cơ bản trên SQLite

• Giới thiệu công cụ SQLite Manager

2

Bài 8: Tìm hi u SQLite

1. Đặt vấn đề

v Ứng dụng cần lưu trữ dữ liệu người dùng.

v Phải làm việc với nhiều loại dữ liệu phức tạp.

v Ứng dụng có thể sẽ phát triển trên nhiều nền

tản.

3

Bài 8: Tìm hi u SQLite

2. Các bước cài đặt, cấu hình

v Bước 1: Cài SQLite for windows phone trong Extension and Updates... của Visual Studio 2012

Hoặc Down tại link

http://visualstudiogallery.msdn.microsoft.com/cd1 20b42-30f4-446e-8287-45387a4f40b7

4

Bài 8: Tìm hi u SQLite

2. Các bước cài đặt, cấu hình

v Bước 2: Download SQLite-net-wp8 project.

ü Truy cập địa chỉ

ü Down file nén của project

5

Bài 8: Tìm hi u SQLite

https://github.com/peterhuene/sqlite-net-wp8

2. Các bước cài đặt, cấu hình

v Bước 2: Download SQLite-net-wp8 project.

ü Đây là một project C++ dùng để truy cập SQLite.

ü Phiên bản của project phải giống với phiên bản của SQLite for windows phone được cài ở bước 1.

6

Bài 8: Tìm hi u SQLite

Lưu ý:

2. Các bước cài đặt, cấu hình

v Bước 3: Thêm project SQLite-net-wp8 vào

Solution hiện tại

ü Giải nén file project vừa download.

ü Click phải vào Solution -> Add -> Existing Project...

ü Tìm đến file Sqlite trong thư mục vừa giải nén

7

Bài 8: Tìm hi u SQLite

2. Các bước cài đặt, cấu hình

v Bước 3:

8

Bài 8: Tìm hi u SQLite

2. Các bước cài đặt, cấu hình

v Bước 3:

9

Bài 8: Tìm hi u SQLite

2. Các bước cài đặt, cấu hình

v Bước 4: Thêm References của project chính đến project SQLite-net-wp8 vừa thêm vào

ü Click phải vào thư mục References -> Add

10

Bài 8: Tìm hi u SQLite

Reference...

2. Các bước cài đặt, cấu hình

v Bước 4: Thêm References của project chính đến project SQLite-net-wp8 vừa thêm vào

ü Trong cửa sổ Reference Manager, chọn tab

11

Bài 8: Tìm hi u SQLite

Solution, rồi stick chọn project Sqlite

2. Các bước cài đặt, cấu hình

v Bước 5: Thêm gói Sqlite-net từ NuGet

ü Chọn menu Tools -> NuGet Package Manager ->

12

Bài 8: Tìm hi u SQLite

Manage NuGet Package for Solution...

2. Các bước cài đặt, cấu hình

v Bước 5: Thêm gói Sqlite-net từ NuGet

ü Sau khi add Sqlite-net, 2 file Sqlite.cs và SqliteAsync.cs sẽ được thêm vào project

v Bước 6: Cấp quyền cho ứng dụng để sử dụng

Sqlite

ü Click phải vào project chọn Properties

ü Chọn Tab Build.

ü Chọn All Configurations tại ô Configuration

ü Chọn All Platforms tại ô Platform

ü Thêm “USE_WP8_NATIVE_SQLITE” tại ô

13

Bài 8: Tìm hi u SQLite

Conditional compilation symbols

2. Các bước cài đặt, cấu hình

v Bước 6: Cấp quyền cho ứng dụng để sử dụng

Sqlite

14

Bài 8: Tìm hi u SQLite

3. Các thao tác với SQLite

v Ví dụ ứng dụng cần thao tác với lưu đối

tượng NhanVien được lưu trên SQLite ta làm như sao

ü Tạo lớp NhanVien như sau

public class NhanVien

{

[SQLite.PrimaryKey, SQLite.AutoIncrement]

public int Id { get; set; }

public string Ten { get; set; }

public string Ho { get; set; }

15

Bài 8: Tìm hi u SQLite

}

3. Các thao tác với SQLite

Ví dụ ứng dụng cần thao tác với lưu đối tượng NhanVien được lưu trên SQLite ta làm như sao

v Tạo cơ sở dữ liệu trong file App.xaml.cs:

Tại đây, ta kiểm tra nếu file csdl không tồn tại, ta tiến hành tạo file csdl

16

Bài 8: Tìm hi u SQLite

Copy đoạn code sau vào phương thức khởi tạo của lớp App trong file App.xaml.cs

3. Các thao tác với SQLite

string dbPath = Path.Combine(Windows.Storage.Application Data.Current.LocalFolder.Path, "db.sqlite");

if (!FileExists("db.sqlite").Result)

{

using (var db = new SQLiteConnection(dbPath))

{

db.CreateTable();

}

17

Bài 8: Tìm hi u SQLite

}

3. Các thao tác với SQLite

ü

Thêm phương thức kiểm tra sự tồn tại của csdl trong lớp App.xaml.cs

private async Task FileExists(string fileName) { var result = false;

try

{

var store = await Windows.Storage.ApplicationData.Current.LocalF older.GetFileAsync(fileName);

result = true;

}

catch { }

return result; }

18

Bài 8: Tìm hi u SQLite

3. Các thao tác với SQLite

v Giả sử trong trang MainPage.xaml, ta có 3 button Thêm,

Xóa, Sửa để thực hiện thao tác với csdl

3. Các thao tác với SQLite

v Code xử lý button Insert

private void BtnInsert_OnClick(object sender, RoutedEventArgs e) {

using (var db = new SQLiteConnection(dbPath))

{

db.Insert(new NhanVien() { Ten = "Nhut", Ho = "Le" }); }

20

Bài 8: Tìm hi u SQLite

}

3. Các thao tác với SQLite

v Code xử lý button Delete

private void BtnDelete_OnClick(object sender, RoutedEventArg s e) {

using (var db = new SQLiteConnection(dbPath))

{

var existing = db.Query("select * from NhanVie n").FirstOrDefault();

if (existing != null)

{

db.Delete(existing);

21

Bài 8: Tìm hi u SQLite

}

}

}

3. Các thao tác với SQLite

v Code xử lý button Update

private void BtnUpdate_OnClick(object sender, RoutedEventArg s e)

{

using (var db = new SQLiteConnection(dbPath))

{

var existing =

db.Query("select * from NhanVien").FirstOrDefault();

if (existing != null)

{

22

Bài 8: Tìm hi u SQLite

existing.Ten = "Huy";

db.Update(existing); ể

}

}

}

4. Giới thiệu công cụ SQLite Manager v Đây là một Add on trên Firefox

v Giúp đọc các file SQLite

23

Bài 8: Tìm hi u SQLite

4. Giới thiệu công cụ SQLite Manager v Muốn kiểm tra file SQLite:

ü Ta dùng Windows Power Tool để lấy file sqlite từ

ü Mở SQLite Manager lên và chọn Open file

24

Bài 8: Tìm hi u SQLite

điện thoại,

Thảo luận

25

Bài 8: Tìm hi u SQLite