您當前位置>首頁 » 新聞資訊 » 技(jì)術(shù)分(fēn)享 >
安卓中實現(xiàn)對(duì)SQLITE數(shù)據表的(de)增™™→删改查
發表時(shí)間(jiān):2021-1-10
發布人(rén):葵宇科(kē)技(jì)
浏覽次數(shù):103
直接上(shàng)代碼
MainActiviy.java
package com.example.sqllitcac δλ¥he; import android.app.Activ♥<±✔ity; import android.app.AlertDialog; £λ∏import android.content.Conten€α&tValues; import android.con♣∏₩tent.DialogInterface; import aΩ§ndroid.database.Cursor; import android♣&.database.sqlite.SQLiteDatabase; imp•™ort android.os.Bundle; import android.view.View;↕÷"≤ import android.view.View.OnClickListener®✘; import android.widget.AdapterView; import andro∑€×↕id.widget.AdapterView.OnItemCσεlickListener; import android.widget.Adapterε•View.OnItemLongClickListener; impo≤¥rt android.widget.ArrayAdapter; im♣φ₹port android.widget.Button; import a≥<ndroid.widget.EditText; imp♠§ort android.widget.ListView;✘£ import android.widget.Toast; public class Main≤€✘Activity extends Activity { List •☆View lv; Button submit; EditTe¶≤®★xt et; SQLiteDatabase dbwrite ; Dbhelper d&♠•bhelper; ArrayAdapter <String> adapter; ¶§© Cursor c; @Override protecte∏≥×d void onCreate(Bundle savedInstanceState) { ¶&< super.onCreate(savedIn←≠•stanceState); setContent View(R.layout.activity_main); lv=(ListVσ €♠iew) findViewById(R.id.listView1); submλ®'it=(Button) findViewById(R.idλφ.button1); et=(EditText) findV↓÷♦iewById(R.id.autoCompleteTextView1); a¥©✘↕dapter=new ArrayAdapter<String>(this×♦←, android.R.layout.simple_list_ite✘ β&m_1); lv.setAdapter(adapte≤₽r); dbhelper=new Dbhelper(thi>♠Ωs); dbwrite=dbhelper.getWritableDatabaseε♥∞→(); getData(); //點擊提交 ₩® submit.setOnClickListener(new O¥↓ ≠nClickListener() { @Override public void on≤γ Click(View v) { // TODO Auto-generat≈ed method stub String newData=ht∏¥ $tp://www.sjsjw.com/100/000688MεφYM017387/et.getText().toString(); add×♥αData(newData); } }); //長(chán'g)按列表項,修改數(shù)據 lv.setOnItemLongClickLis♠≤tener(new OnItemLongClickListener() { @Ov →↔erride public boolean onItemL÷¶ongClick(AdapterView> arg0, View arg1, final int position,✘™ long arg3) { // TODO Auto-generate✔₩d method stub new AlertDialog.Builder¥≥<(MainActivity.this).setPositiveButton("≈σ 我确定修改",new DialogInterface.OnClickListener() { ↓φ±λ @Override public void onClick(Dia©∑♥logInterface dialog, int wπ<hich) { // TODO Auto §γ-generated method stub updateData(po✔©&×sition); } }).show(); return false; >✘ } }); //短(duǎn)按列表項删除數(shù)據 ♥♦ lv.setOnItemClickListener(new OnItemClickLi÷¥stener() { public void onItemClick(AεφΩ≈dapterView> arg0, View arg1, int position, long ar≥¥$↕g3) { // TODO Auto-generated meth π∞od stub Toast.makeText(MainActivity.this, λσ£ position+"", 0).show(); deleteData(positε ion); } }); } //添加數(s< hù)據的(de)執行(xíng)函數(shù),添加到(dào)本地(dì)數(sh¶δ✘<ù)據庫,并提示更新listtview void ad¶dData(String newData) { //添加到×¶δ(dào)本地(dì)數(shù)據庫 ContentVa•±lues content=new ContentValues(); ∑δ∑ String putdata=et.getText().toStriββng(); content.put("data", putdata); ♣≈ dbwrite.insert("datatable✔$✔",null, content); getData(€€α≤); } //删除一(yī)條數(shù)據 v↔€♦&oid deleteData(int position) { c.moveΩ∏ΩToPosition(position); int id=c₩ .getInt(c.getColumnIndex("_id"));≤奩 dbwrite.delete("datatable",₩✔ "_id=?", new String[]{id+""} )≠↕₩; getData(); } //λ>修改一(yī)條數(shù)據 void upd✘βββateData(int position) {®★ c.moveToPosition(position); ☆↕& ContentValues cv=new ContentValues(); cv.∞¥±×put("data", "changed"); int id=c.getInt(c.g÷βetColumnIndex("_id")); dbwrite.updateφ×≠("datatable", cv, "_id=?", new String [] {id+ ≠""}); getData(); } /λ"/獲取數(shù)據 void getData() ©©™ { c= dbwrite.query("datatable",≤π↔ null, null, null, null, null, null); ≠± adapter.clear(); //讀(dú)取本地(dì)✘→ 數(shù)據庫 while(c.απmoveToNext()) { ÷✔± String data=c.getString(c.getColumnInde∑∞x("data")); int i'♥£d=c.getInt(c.getColumnIndex("_id")); ♠' adapter.add(data+":"+id)•Ω•; System.out.println(dat∏↑a+": "+id); } adapter.no&ε✘∑tifyDataSetChanged(); } }
Dbhelper.java
package com.example.sqllitcache; import a↔ ✘ndroid.content.Context; import android.d>atabase.sqlite.SQLiteDatabase; import android.dat↑§abase.sqlite.SQLiteDatabase.CursorFac♠®tory; import android.databasλ™e.sqlite.SQLiteOpenHelper; public class Dbhe♦→δ≥lper extends SQLiteOpenHelper { ≈€☆ public Dbhelper(Context c✔§ontext ) { super(context, "mydb",nullσ✘, 1); // TODO Auto-generated con♣€±€structor stub } @Override public void λ×<↓onCreate(SQLiteDatabase db) { // φ£✘TODO Auto-generated method stub db.execSQL(&quo≤<₹t;CREATE TABLE datatable ("+ ₹© "_id INTEGER PRIMARY KEY AUTOINCREMENT,&quo'♣t;+ "data S♥£λtring DEFAULT \"\")↓•₽σ" ); } @Override public vo>$↓id onUpgrade(SQLiteDatabase arg0, int arg1, int ≈♦arg2) { // TODO Auto-generated method stu✔♣b } }