日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android数据存储——SQLite数据库(模板)

發(fā)布時間:2024/7/19 Android 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android数据存储——SQLite数据库(模板) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本篇整合Android使用數(shù)據(jù)庫,要保存一個實體類的樣本。

首先看一下數(shù)據(jù)庫語句:

ORM:關(guān)系對象映射

添加數(shù)據(jù):

ContentValues values = new ContentValues();values.put("name", "小麗");values.put("phone", "110");mDB.insert("student",//表名null, //規(guī)避插入語句的錯誤values );//插入的值

刪除數(shù)據(jù):

mDB.delete("student", //表名"name =?",//條件語句new String[]{"小麗"});//條件語句的占位符

改動數(shù)據(jù):

ContentValues values = new ContentValues();values.put("phone", "10086");mDB.update("student",//表名values, //要改動的值"name =?",//條件語句new String[]{"小麗"});

查詢數(shù)據(jù):

Cursor cursor = mDB.query("student",//表名null,//查詢的字段null,//條件語句null,//條件語句的占位符null,//分組語句null,//分組條件null);//排序boolean toFirst = cursor.moveToFirst();while(toFirst){String name = cursor.getString(cursor.getColumnIndex("name"));String phone = cursor.getString(cursor.getColumnIndex("phone"));MyData myData = new MyData(name, phone);dataList.add(myData);toFirst = cursor.moveToNext();}

以下是數(shù)據(jù)庫創(chuàng)建及使用步驟

1、方法調(diào)用

private DBMang_Order dbMang_Order; dbMang_Order=DBMang_Order.getInstance(getApplicationContext());//查詢 ArrayList<OrderUncheck> uncheckList = dbMang_Order.query(); //刪除 dbMang_Order.delete(orderNo); //添加 dbMang_Order.insert(new OrderUncheck(orderNo, account, action)); //改動 dbMang_Order.update(new OrderUncheck(orderNo, account, action));

2、首先創(chuàng)建要存儲的實體類

public class OrderUncheck {String orderNo;double account;int action;public String getOrderNo() {return orderNo;}public void setOrderNo(String orderNo) {this.orderNo = orderNo;}public double getAccount() {return account;}public void setAccount(double account) {this.account = account;}public int getAction() {return action;}public void setAction(int action) {this.action = action;}public OrderUncheck(String orderNo, double account, int action) {super();this.orderNo = orderNo;this.account = account;this.action = action;} }

3、創(chuàng)建數(shù)據(jù)庫

import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper;public class MySQL_Order extends SQLiteOpenHelper {private static final String name = "count"; //數(shù)據(jù)庫名稱 private static final int version = 1; //數(shù)據(jù)庫版本號 //第三個參數(shù)CursorFactory指定在運行查詢時獲得一個游標(biāo)實例的工廠類,設(shè)置為null,代表使用系統(tǒng)默認(rèn)的工廠類 public MySQL_Order(Context context) {super(context, name, null, version);}@Overridepublic void onCreate(SQLiteDatabase db) {String sql="CREATE TABLE neworder (_id INTEGER PRIMARY KEY AUTOINCREMENT,orderNo VARCHAR(200),account VARCHAR(19100),action VARCHAR(200))"; db.execSQL(sql);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// TODO Auto-generated method stub} }

4、代碼中被調(diào)用的方法在這個類:增刪改查

public class DBMang_Order {private static DBMang_Order mDbManager=new DBMang_Order();private static SQLiteDatabase mDb;private static Context context;private DBMang_Order() {}public static synchronized DBMang_Order getInstance(Context context){DBMang_Order.context = context;if(mDb==null){MySQL_Order mySQL = new MySQL_Order(context);mDb = mySQL.getWritableDatabase();}return mDbManager;} interface NewTable{String TABLE_NAME="neworder";String TABLE_COLUMN_orderNo="orderNo";String TABLE_COLUMN_account="account";String TABLE_COLUMN_action="action";}//增public void insert(OrderUncheck info){ ContentValues values=new ContentValues();values.put(NewTable.TABLE_COLUMN_orderNo, info.getOrderNo());values.put(NewTable.TABLE_COLUMN_account, info.getAccount());values.put(NewTable.TABLE_COLUMN_action, info.getAction());Log.w("mDb.insert", ""+info);Log.w("mDb.insert",""+ values);mDb.insert(NewTable.TABLE_NAME, null, values); } //刪public void delete(String orderNo) {Log.w("delete", orderNo);mDb.delete(NewTable.TABLE_NAME, NewTable.TABLE_COLUMN_orderNo+"=?", new String[]{orderNo});}//改public void update(OrderUncheck info){ContentValues values = new ContentValues();values.put(NewTable.TABLE_COLUMN_account, info.getAccount());mDb.update(NewTable.TABLE_NAME, values, NewTable.TABLE_COLUMN_orderNo+"=? and "+NewTable.TABLE_COLUMN_orderNo+"=?

"

, new String[]{String.valueOf(info.getOrderNo()),""+info.getAccount()}); } //查 public ArrayList<OrderUncheck> query(){ Cursor cursor = mDb.query(NewTable.TABLE_NAME, null, null, null, null, null, null); ArrayList<OrderUncheck> list=new ArrayList<OrderUncheck>(); boolean toFirst = cursor.moveToFirst(); while (toFirst) { String orderNo = cursor.getString(cursor.getColumnIndex(NewTable.TABLE_COLUMN_orderNo)); String account = cursor.getString(cursor.getColumnIndex(NewTable.TABLE_COLUMN_account)); String action = cursor.getString(cursor.getColumnIndex(NewTable.TABLE_COLUMN_account)); double accountd = Double.parseDouble(account); int actiond=Integer.parseInt(action); OrderUncheck order = new OrderUncheck(orderNo, accountd,actiond); list.add(order); toFirst=cursor.moveToNext(); } cursor.close(); return list; } }

很多其它交流可加Android技術(shù)討論群:71262831

版權(quán)聲明:本文博主原創(chuàng)文章,博客,未經(jīng)同意不得轉(zhuǎn)載。

轉(zhuǎn)載于:https://www.cnblogs.com/blfshiye/p/4856702.html

總結(jié)

以上是生活随笔為你收集整理的Android数据存储——SQLite数据库(模板)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。