歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android SQLite使用介紹

Android SQLite使用介紹

日期:2017/3/1 10:52:38   编辑:Linux編程

嵌入式關系型SQLite數據庫與普通數據庫的最大區別是:
嵌入式關系型SQLite數據庫除了主鍵外,沒有數據類型之分。即整型字段可以用來存放字符數據,反之字符串字段也可以用來存放整型值

SQLite使用方法步驟:

  1. 第一步:編寫一個類並繼承SQLiteOpenHelper;
  2. 該類我認為有兩個作用:第一:用來取得操作sql語句的對象
  3. 第二:用來管理數據庫的版本,可以進行相應的更新
  4. 簡單的實例:
  5. public class DBOpenHelperService extends SQLiteOpenHelper {
  6. private static final String DATABASENAME = "smuoj.db"; //數據庫名稱
  7. private static final int DATABASEVERSION = 1;//數據庫版本
  8. public DBOpenHelperService(Context context) {
  9. super(context, DATABASENAME, null, DATABASEVERSION);
  10. }
  11. @Override
  12. public void onCreate(SQLiteDatabase db) {
  13. db.execSQL("CREATE TABLE _person (personid integer primary key autoincrement, name varchar(20), age integer)");//執行有更改的sql語句
  14. }
  15. @Override
  16. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  17. // TODO Auto-generated method stub
  18. db.execSQL("DROP TABLE IF EXISTS _person");
  19. onCreate(db);
  20. }
  21. }
  22. 第二步:根據要求編寫相應的增刪改查..的代碼
  23. 注意:dbOpenHelperService.getWritableDatabase();通過這個函數可以取得操作數據庫的對象
  24. 當調用這個方法時,如果數據庫不存在,則會創建數據庫,並執行Oncreate()方法
  25. 如果版本信息改變,則會執行onUpgrade()這個方法
  26. 如:編寫保存 與 查找
  27. public class DB {
  28. private DBOpenHelperService dbOpenHelperService;
  29. private SQLiteDatabase db ;
  30. public DB(Context context) {
  31. dbOpenHelperService = new DBOpenHelperService(context);
  32. db = dbOpenHelperService.getWritableDatabase();
  33. }
  34. public void save(Person person){
  35. String sql = "insert into _person(name,age) values(?,?)";
  36. db.execSQL(sql,new Object[]{person.getName(),person.getAge()});
  37. db.close();
  38. }
  39. public List<Person> find(){
  40. List<Person> persons = new ArrayList<Person>();
  41. String sql = "select * from _person";
  42. Cursor cursor = db.rawQuery(sql,null);
  43. while(cursor.moveToNext()){
  44. Person person = new Person();
  45. person.setName(cursor.getString(cursor.getColumnIndex("name")));
  46. person.setAge(cursor.getInt(cursor.getColumnIndex("age")));
  47. persons.add(person);
  48. }
  49. return persons;
  50. }
  51. }
Copyright © Linux教程網 All Rights Reserved