Android中SQLite应用详解(3)

2019-01-26 21:52

[java]view plaincopyprint?

1. package com.scott.db; 2.

3. import java.util.ArrayList; 4. import java.util.List; 5.

6. import android.content.ContentValues; 7. import android.content.Context; 8. import android.database.Cursor;

9. import android.database.sqlite.SQLiteDatabase; 10.

11. public class DBManager { 12. private DBHelper helper; 13. private SQLiteDatabase db; 14.

15. public DBManager(Context context) { 16. helper = new DBHelper(context); 17. //因为getWritableDatabase内部调用了

mContext.openOrCreateDatabase(mName, 0, mFactory);

18. //所以要确保context已初始化,我们可以把实例化DBManager的步骤放在

Activity的onCreate里

19. db = helper.getWritableDatabase(); 20. } 21. 22. /**

23. * add persons 24. * @param persons 25. */

26. public void add(List persons) { 27. db.beginTransaction(); //开始事务 28. try {

29. for (Person person : persons) {

30. db.execSQL(\

new Object[]{person.name, person.age, person.info}); 31. }

32. db.setTransactionSuccessful(); //设置事务成功完成 33. } finally {

34. db.endTransaction(); //结束事务 35. } 36. } 37. 38. /**

39. * update person's age 40. * @param person 41. */

42. public void updateAge(Person person) { 43. ContentValues cv = new ContentValues(); 44. cv.put(\

45. db.update(\

; 46. } 47. 48. /**

49. * delete old person 50. * @param person 51. */

52. public void deleteOldPerson(Person person) {

53. db.delete(\

rson.age)}); 54. } 55. 56. /**

57. * query all persons, return list 58. * @return List 59. */

60. public List query() {

61. ArrayList persons = new ArrayList(); 62. Cursor c = queryTheCursor(); 63. while (c.moveToNext()) {

64. Person person = new Person();

65. person._id = c.getInt(c.getColumnIndex(\66. person.name = c.getString(c.getColumnIndex(\67. person.age = c.getInt(c.getColumnIndex(\68. person.info = c.getString(c.getColumnIndex(\69. persons.add(person); 70. }

71. c.close(); 72. return persons; 73. } 74. 75. /**

76. * query all persons, return cursor 77. * @return Cursor 78. */

79. public Cursor queryTheCursor() {

80. Cursor c = db.rawQuery(\81. return c; 82. } 83. 84. /**

85. * close database 86. */

87. public void closeDB() { 88. db.close(); 89. } 90. }

package com.scott.db;

import java.util.ArrayList; import java.util.List;

import android.content.ContentValues; import android.content.Context; import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

public class DBManager {

private DBHelper helper; private SQLiteDatabase db;

public DBManager(Context context) { } /**

* add persons * @param persons */

public void add(List persons) {

helper = new DBHelper(context); //因为getWritableDatabase内部调用了

//所以要确保context已初始化,我们可以把实例化DBManagerdb = helper.getWritableDatabase();

mContext.openOrCreateDatabase(mName, 0, mFactory); 的步骤放在Activity的onCreate里

db.beginTransaction(); //开始事务 try {

for (Person person : persons) { }

db.setTransactionSuccessful(); //设置事务成功完成 db.endTransaction(); //结束事务 } /**

* update person's age * @param person */

db.execSQL(\

new Object[]{person.name, person.age, person.info});

} finally { }

public void updateAge(Person person) { } /**

* delete old person * @param person */

public void deleteOldPerson(Person person) { } /**

* query all persons, return list * @return List */

public List query() {

ArrayList persons = new ArrayList(); Cursor c = queryTheCursor(); db.delete(\ContentValues cv = new ContentValues(); cv.put(\

db.update(\

String[]{person.name});

String[]{String.valueOf(person.age)});

while (c.moveToNext()) {

Person person = new Person();

person._id = c.getInt(c.getColumnIndex(\person.name = c.getString(c.getColumnIndex(\person.age = c.getInt(c.getColumnIndex(\person.info = c.getString(c.getColumnIndex(\persons.add(person);

}

c.close(); return persons;

}


Android中SQLite应用详解(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:新环保法

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: