Danh mục tài liệu

Lập trình Android cơ bản: Bài 6

Số trang: 4      Loại file: pdf      Dung lượng: 106.45 KB      Lượt xem: 20      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Tham khảo tài liệu lập trình android cơ bảh: bài 6, công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
Lập trình Android cơ bản: Bài 6Mr_ThinhVn 18-08-2013 – http://timvieclam.ws/ Bài 6: Tự học lập trình Android - Android SQLite Database0. Giới thiệu SQLite DatabaseMỗi ứng dụng đều sử dụng dữ liệu, dữ liệu có thể đơn giản hay đôi khi là cả 1 cấutrúc. Trong Android thì hệ cơ sở dữ liệu được sử dụng là SQLite Database, đây là hệthống mã nguồn mở được sử dụng rộng rãi trong các ứng dụng ( Mozilla Firefox sửdụng SQLite để lưu trữ các dữ liệu về cấu hình, iPhone cũng sử dụng cơ sở dữ liệu làSQLite).Trong Android , cơ sở dữ liệu mà bạn tạo cho 1 ứng dụng thì chỉ ứng dụng đó cóquyền truy cập và sử dụng, các ứng dụng khác thì không. Khi đã được tạo, cơ sở dữliệu SQLite được chứa trong thư mục /data/data//databases .Tiếp theo mình sẽ giới thiệu với các bạn cách tạo và sử dụng cơ sở dữ liệu SQLite .Cách tốt nhất để hiểu lý thuyết là thực hành, các bạn có thể tạo ngay 1 project trongworkspace đặt tên là : SQLiteDemo. Ứng dụng này đơn giản chỉ tạo 1 cơ sở dữ liệuUSER bao gồm 2 trường ( id , name ) , ngoài ra có các thao tác thêm , đọc , sửa ,xóa.Các bước thực hiện với CSDL:1. Tạo 1 CSDL ( thông thường chỉ cần làm 1 lần )2. Mở CSDL đó3. Thêm giá trị vào trong table4. Truy vấn.5. Đóng CSDL1. Tạo cơ sở dữ liệu.Đầu tiên các bạn add 1 class DBAdapter để xử lý tất cả các thao tác liên quan đếnCSDL.Mã:public static final String KEY_ID = _id;public static final String KEY_NAME = name;private DatabaseHelper mDbHelper;private SQLiteDatabase mDB;private static final String DATABASE_CREATE = create table users (_id integerprimary key autoincrement, + name text not null);;private static final String DATABASE_NAME = Database_Demo;private static final String DATABASE_TABLE = users;private static final int DATABASE_VERSION = 2;private final Context mContext;Tạo 1 lớp bên trong DBAdapter được extend từ lớp SQLiteOpenHelper, override 2phương thức onCreate() và onUpgrade() để quản lý việc tạo CSDL và version của 1 Copyright © 2013 http://timvieclam.ws. All rights reserved.Mr_ThinhVn 18-08-2013 – http://timvieclam.ws/CSDL đó.Mã:private static class DatabaseHelper extends SQLiteOpenHelper{public DatabaseHelper(Context context, String name,CursorFactory factory, int version) {super(context, name, factory, version);// TODO Auto-generated constructor stub}@Overridepublic void onCreate(SQLiteDatabase db) {// TODO Auto-generated method stubdb.execSQL(DATABASE_CREATE);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// TODO Auto-generated method stubLog.i(TAG, Upgrading DB);db.execSQL(DROP TABLE IF EXISTS users);onCreate(db);}}2. Mở CSDL :Mã:public DBAdapter open(){mDbHelper = new DatabaseHelper(mContext, DATABASE_NAME, null,DATABASE_VERSION);mDB = mDbHelper.getWritableDatabase();return this;}3. Thêm giá trị vào CSDLMã:public long createUser(String name){ContentValues inititalValues = new ContentValues();inititalValues.put(KEY_NAME, name);return mDB.insert(DATABASE_TABLE, null, inititalValues);}4. Truy vấnBạn có thể get toàn bộ data hoặc có thể get data theo ID ( tiện cho việc chỉnh sửahay cập nhật thông tin của từng bản ghi).Mã:public Cursor getAllUsers(){return mDB.query(DATABASE_TABLE, new String[] {KEY_ID, KEY_NAME}, null, null,null, null, null);} 2 Copyright © 2013 http://timvieclam.ws. All rights reserved.Mr_ThinhVn 18-08-2013 – http://timvieclam.ws/Còn rất nhiều các thao tác như sửa, xóa, update.... bản ghi, các bạn có thể tự pháttriển.Tất cả các chức năng đó đều được cung cấp bởi lớp SQLiteDatabase, các bạn chỉ cầncụ thể hóa bằng các câu truy vấn là được.5. Đóng CSDLMã:public void close(){mDbHelper.close();}6. Sử dụng CSDLĐể test CSDL mà bạn vừa tạo, các bạn có thể thêm 1 vài dòng code để thêm 1 uservà hiển thị CSDL lên màn hình thông qua lớp Activity ban đầu:Ở đây mình create 1 user thông qua câu lệnh mDB.createUser(Username); sau đóMã:public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);mDB = new DBAdapter(this);mDB.open();mDB.createUser(Do Minh Thong);getData();}private void getData(){mCursor = mDB.getAllUsers();startManagingCursor(mCursor);String[] from = new String[]{DBAdapter.KEY_NAME};int[] to = new int[] {R.id.text1};SimpleCursorAdapter users = new SimpleCursorAdapter(this, R.layout.users_row,mCursor, from, to);setListAdapter(users);}Kết quả : 3 Copyright © 2013 http://timvieclam.ws. All rights reserved.Mr_ThinhVn 18-08-2013 – http://timvieclam.ws/Sourcecode đầy đủ : http://www.mediafire.com ...