国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 系統 > Android > 正文

Android--SQLite(增,刪,改,查)操作實例代碼

2020-04-11 12:31:24
字體:
來源:轉載
供稿:網友

需要5個類:

1.實體類:Person.java

2.抽象類:SQLOperate.java(封裝了對數據庫的操作)

3.助手類:DBOpenHelper.java(繼承SQLiteOpenHelper)

4.實現類:SQLOperateImpl.java(實現抽象類SQLOperate.java)

5.測試類:Test.java(繼承AndroidTestCase)


1.Person.java

復制代碼 代碼如下:

package com.mrzhu.sqltite;

public class Person {

 private int _id;
 private String name;

 public int getId() {
  return _id;
 }

 public void setId(int _id) {
  this._id = _id;
 }

 public String getName() {
  return name;
 }

 public void setName(String name) {
  this.name = name;
 }

 @Override
 public String toString() {
  return "Person [id=" + _id + ", name=" + name + "]";
 }

 public Person() {
  super();
 }

 public Person(int _id, String name) {
  super();
  this._id = _id;
  this.name = name;
 }
}

2.SQLOperate.java

復制代碼 代碼如下:

package com.mrzhu.sqltite;

import java.util.List;

/**
 * 增刪改查
 * @author ZLQ
 *
 */
public interface SQLOperate {
 public void add(Person p);
 public void delete(int id);
 public void updata(Person p);
 public List<Person> find();
 public Person findById(int id);
}

3.DBOpenHelper.java

復制代碼 代碼如下:

package com.mrzhu.sqltite;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * 助手類
 * @author ZLQ
 *
 */
public class DBOpneHelper extends SQLiteOpenHelper {

 private static final int VERSION = 1;//版本
 private static final String DB_NAME = "people.db";//數據庫名
 public static final String STUDENT_TABLE = "student";//表名
 public static final String _ID = "_id";//表中的列名
 public static final String NAME = "name";//表中的列名
 //創建數據庫語句,STUDENT_TABLE,_ID ,NAME的前后都要加空格
 private static final String CREATE_TABLE = "create table " + STUDENT_TABLE + " ( " + _ID + " Integer primary key autoincrement," + NAME + " text)";

 public DBOpneHelper(Context context) {
  super(context, DB_NAME, null, VERSION);
 }

 //數據庫第一次被創建時調用
 @Override
 public void onCreate(SQLiteDatabase db) {
  db.execSQL(CREATE_TABLE);
 }

 //版本升級時被調用
 @Override
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

 }

}

4.SQLOperateImpl.java

復制代碼 代碼如下:

package com.mrzhu.sqltite;

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 SQLOperateImpl implements SQLOperate{

 private DBOpneHelper dbOpenHelper;

 public SQLOperateImpl(Context context) {
  dbOpenHelper = new DBOpneHelper(context);
 }

 /**
  * 增,用insert向數據庫中插入數據
  */
 public void add(Person p) {
  SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
  ContentValues values = new ContentValues();
  values.put(DBOpneHelper._ID, p.getId());
  values.put(DBOpneHelper.NAME, p.getName());
  db.insert(DBOpneHelper.STUDENT_TABLE, null, values);
 }

 /**
  * 刪,通過id刪除數據
  */
 public void delete(int id) {
  SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
  db.delete(DBOpneHelper.STUDENT_TABLE, DBOpneHelper._ID + "=?", new String[]{String.valueOf(id)});
 }

 /**
  * 改,修改指定id的數據
  */
 public void updata(Person p) {
  SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
  ContentValues values = new ContentValues();
  values.put(DBOpneHelper._ID, p.getId());
  values.put(DBOpneHelper.NAME, p.getName());
  db.update(DBOpneHelper.STUDENT_TABLE, values, DBOpneHelper._ID + "=?", new String[]{String.valueOf(p.getId())});
 }

 /**
  * 查,查詢表中所有的數據
  */
 public List<Person> find() {
  List<Person> persons = null;
  SQLiteDatabase db = dbOpenHelper.getReadableDatabase();
  Cursor cursor = db.query(DBOpneHelper.STUDENT_TABLE, null, null, null, null, null, null);
  if(cursor != null){
   persons = new ArrayList<Person>();
   while(cursor.moveToNext()){
    Person person = new Person();
    int _id = cursor.getInt(cursor.getColumnIndex(DBOpneHelper._ID));
    String name = cursor.getString(cursor.getColumnIndex(DBOpneHelper.NAME));
    person.setId(_id);
    person.setName(name);
    persons.add(person);
   }
  }
  return persons;
 }

 /**
  * 查詢指定id的數據
  */
 public Person findById(int id) {
  SQLiteDatabase db = dbOpenHelper.getReadableDatabase();
  Cursor cursor = db.query(DBOpneHelper.STUDENT_TABLE, null, DBOpneHelper._ID + "=?", new String[]{String.valueOf(id)}, null, null, null);
  Person person = null;
  if(cursor != null && cursor.moveToFirst()){
   person = new Person();
   int _id = cursor.getInt(cursor.getColumnIndex(DBOpneHelper._ID));
   String name = cursor.getString(cursor.getColumnIndex(DBOpneHelper.NAME));
   person.setId(_id);
   person.setName(name);
  }
  return person;
 }
}

5.Test.java

 

在AndroidManifest.xml中的<application></application>外添加

(targetPackage是當前工程的包名)

 

 <instrumentation

android:targetPackage="com.mrzhu.sqltite"

android:name="android.test.InstrumentationTestRunner">

</instrumentation>


 

在<application></application>中添加<uses-library android:name="android.test.runner"/>

復制代碼 代碼如下:

package com.mrzhu.sqltite;

import java.util.List;

import android.test.AndroidTestCase;
import android.util.Log;

public class Test extends AndroidTestCase {
 public void testAdd() throws Exception{
  SQLOperateImpl test = new SQLOperateImpl(getContext());
  Person person = new Person(2, "Peter");
  test.add(person);
 }

 public void testDelete() throws Exception{
  SQLOperateImpl test = new SQLOperateImpl(getContext());
  test.delete(1);
 }

 public void testUpdata() throws Exception{
  SQLOperateImpl test = new SQLOperateImpl(getContext());
  Person person = new Person(1, "Tom");
  test.updata(person);
 }

 public void testFind() throws Exception{
  SQLOperateImpl test = new SQLOperateImpl(getContext());
  List<Person> persons = test.find();
  for (Person person : persons) {
   Log.i("System.out", person.toString());
  }
 }

 public void testFindById() throws Exception{
  SQLOperateImpl test = new SQLOperateImpl(getContext());
  Person person = test.findById(2);
  Log.i("System.out", person.toString());
 }
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产国产人免费人成免费视频 | 日本动漫同人动漫在线观看| 国产成人va亚洲电影| 精品卡一卡卡2卡3网站| 天堂资源在线中文| 国产丝袜在线观看视频| 四虎久久影院| 国产视频二区三区| 国产午夜电影| 69国产精品| 一色桃子av在线| 国产精品视频一区二区免费不卡| 国产黄色在线网站| av首页在线| 99久久99热久久精品免费看| 国产福利电影在线观看| 在线色视频网| 国产在线日本| www.成人.com| 国产在线高清| √8天堂资源地址中文在线| av免费在线一区二区三区| 欧美a免费在线| 精品街拍一区二区| 国产免费av网站| av在线中文| 99热在线免费观看| 91sp网站在线观看入口| 国产香蕉尹人视频在线| wwwww亚洲| 国产精品久久人| 久久国产热视频| 国产你懂的在线观看| 国产素人视频在线观看| 看成年女人免费午夜视频| 国产精品69xx| 国产精品一区二区三区高清在线 | 国产精品一区二区资源| 999国产在线视频| 最近久乱中文字幕| 天天av综合网| 国产乱妇乱子在线播视频播放网站 | 日本啊v在线| av片在线观看| 亚洲免费网站在线观看| 精品51国产黑色丝袜高跟鞋| 中文字幕免费在线视频| 久久亚洲天堂| 国产麻豆一级片| 成人亚洲一区二区三区| 奇米影视狠狠狠| 在线视频观看你懂的| 99在线欧洲视频| av在线资源网| 超碰人人在线| 国产丝袜自拍| 亚洲人av在线| 美女网站在线观看| 黄色国产网站在线观看| 国产免费视频在线| 国产视频二区| 亚洲夜夜综合| 天堂在线一二区| 国产黄色片中文字幕| 国产成人综合亚洲欧美在| 伊人伊人av电影| www.综合网.com| 五月婷婷视频在线观看| 91极品在线| 免费电影网站在线视频观看福利| 国内外激情在线| 国产日韩网站| www.夜夜操| 国产免费黄色| 四虎中文字幕| 国产秀色在线www免费观看| 在线天堂视频| 中文字幕中文字幕在线中高清免费版| 国产小视频在线播放| 国产91在线视频蝌蚪| 久草网在线视频| 国产福利免费在线观看| 久久99国产视频| 亚洲第一区视频| 国产精品四虎| 天天爱天天做色综合| av中文在线| a√在线视频| 国产精品视频白浆合集| 欧美日韩在线资源| 伊人永久在线| 伊人色综合网| 精品国内一区二区三区免费视频| 欧美一级久久久久久久久大| 国产高清自拍视频在线观看| 超碰在线影院| 在线免费国产| 国产成人va亚洲电影| 国产一级大片| 中文字幕在线影视资源| 久草一本av| 丁香在线视频| 国产精品一区二区婷婷| 国产美女av| 国产香蕉免费精品视频| 国产午夜视频| 国产va在线| av福利在线播放| 夜夜操天天干| 久久综合第一页| 五月综合激情在线| 丁香在线视频| 中文字幕有码在线视频| 中文字幕视频在线| 国产激情在线| 在线观看中文| 久蕉依人在线视频| 尤物视频免费在线观看| 国产精品久久在线| av免费在线观看网站| 超碰免费在线| 2019中文字幕视频| av在线第一页| 国产精品一区二区三区高清在线 | 亚洲一区二区三区在线观看网站| 在线天堂av| 日本高清中文字幕在线| 国产字幕在线看| 国产小视频免费在线观看| 97视频在线| 黄网址在线播放免费| 国产秀色在线www免费观看| 国产porny蝌蚪视频| 亚洲夜夜综合| 国产在线看片| 中文字幕国产在线| h网址在线观看| 国产免费麻豆视频| 亚洲天堂视频在线观看免费| 国产在线观看18| 中文日本在线观看| 国产偷窥洗澡视频| 激情丁香婷婷| 亚洲欧美国产另类首页| 国产丝袜视频在线播放| 免费a在线观看| 2021天堂中文幕一二区在线观| www.jizz在线观看| 精品国内一区二区三区免费视频 | 日本动漫理论片在线观看网站| 国产小视频在线播放| 另类视频在线| 欧美黑人乱大交| 伊人资源视频在线| 精品一区二区三区免费站| 国产亚洲依依| 国产精品不卡一区二区三区在线观看| 欧美性猛交p30| 欧美日韩视频精品一区二区| 91青青在线视频| 国产精品ⅴa有声小说| 国产麻豆精品入口在线观看 | 2018中文字幕在线观看| 国产精品入口免费麻豆| 午夜av在线免费观看| 国产永久免费高清在线观看| 久久精品免视着国产成人| 久久五月精品中文字幕| 久久久久久77777| 九九热免费在线视频| 久久er视频| 天堂中文字幕在线| 国产视频精选在线| 精品视频一二区| 亚洲精品久久久成人| 精品久久av| 精品入口蜜桃| 亚洲国产aⅴ精品| 在线中文字幕第一页| 国产成人福利| 亚洲www色| 国产麻豆一区二区三区精品| 1区不卡电影| 国产激情在线观看| www.av在线播放| 国产视频福利| 亚洲天堂二区| 中文字幕欧美日韩在线不卡| 国产福利资源| 免费观看v片在线观看| 国产私人尤物无码不卡| 96精品视频| 开心丁香婷婷深爱五月| 国产精品69xx| 毛片在线视频| 在线观看电影av| 69久久精品| 福利视频网站导航| 国产不卡精品一区二区三区| 免费观看久久久久|