您當前位置>首頁 » 新聞資訊 » 技(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
}
}








