SQLite使用实例
发布时间:2020-12-12 20:13:19 所属栏目:百科 来源:网络整理
导读:完整代码下载:http://download.csdn.net/detail/zhangpengyu321/5990803 DBHelp.java package com.gem.android.util;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite
完整代码下载:http://download.csdn.net/detail/zhangpengyu321/5990803
DBHelp.java
package com.gem.android.util; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.util.Log; public class DBHelper extends SQLiteOpenHelper { private SQLiteDatabase db; private static final int DB_VERSION=2; private static final String DB_NAME="Test.db"; private static final String TBL_NAME="test"; private static final String CREATE_TBL="create table test(_id integer primary key autoincrement,name text,url text,desc text)"; public DBHelper(Context context) { // TODO Auto-generated constructor stub // db.openOrCreateDatabase("/data/data/com.gem.android.manager/databases/Test.db",null); super(context,DB_NAME,null,DB_VERSION); } /* * (non-Javadoc) * @see android.database.sqlite.SQLiteOpenHelper#onCreate(android.database.sqlite.SQLiteDatabase) */ @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub // db=this.createDatabase(); this.db=db; db.execSQL(CREATE_TBL); } // 创建数据库,注意这里要指定全路径 // private SQLiteDatabase createDatabase(){ // return SQLiteDatabase.openOrCreateDatabase("/data/data/com.gem.android.manager/databases/Test.db",null); // } public void insert(ContentValues values){ //拿到当前DB的链接 db=this.getWritableDatabase(); db.insert(TBL_NAME,values); db.close(); } public Cursor query(){ db=this.getWritableDatabase(); Cursor cursor=db.query(TBL_NAME,null); return cursor; } public void delete(int id){ db=this.getWritableDatabase(); db.delete(TBL_NAME,"_id=?",new String[]{String.valueOf(id)}); db.close(); } public void close(){ if(db!=null){ db.close(); } } /* * (non-Javadoc) * @see android.database.sqlite.SQLiteOpenHelper#onUpgrade(android.database.sqlite.SQLiteDatabase,int,int) */ @Override public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion) { // TODO Auto-generated method stub } } MainActivity.java package com.gem.android.manager; import android.app.Activity; import android.content.ContentValues; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import com.gem.android.util.DBHelper; public class MainActivity extends Activity implements OnClickListener{ /** Called when the activity is first created. */ private EditText edittext1,edittext2,edittext3; private Button button1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); this.setTitle("添加收藏信息"); edittext1=(EditText) this.findViewById(R.id.editText1); edittext2=(EditText) this.findViewById(R.id.editText2); edittext3=(EditText) this.findViewById(R.id.editText3); button1=(Button) this.findViewById(R.id.button1); button1.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub String name=edittext1.getText().toString(); String url=edittext2.getText().toString(); String desc=edittext3.getText().toString(); ContentValues values=new ContentValues(); values.put("name",name); values.put("url",url); values.put("desc",desc); DBHelper helper=new DBHelper(this.getApplicationContext()); helper.insert(values); Intent intent=new Intent(MainActivity.this,QueryActivity.class); this.startActivity(intent); } } QueryActivity.java package com.gem.android.manager; import android.app.AlertDialog; import android.app.ListActivity; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.database.Cursor; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ListView; import android.widget.SimpleCursorAdapter; import android.widget.AdapterView.OnItemClickListener; import com.gem.android.util.DBHelper; public class QueryActivity extends ListActivity implements OnItemClickListener,OnClickListener{ private long temp; private DBHelper helper =new DBHelper(this); private SimpleCursorAdapter adapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setTitle("浏览收藏信息"); Cursor cursor=helper.query(); String[] from={"_id","name","url","desc"}; int[] to={R.id.text1,R.id.text2,R.id.text3,R.id.text4}; SimpleCursorAdapter adapter=new SimpleCursorAdapter(this,R.layout.row,cursor,from,to); ListView listView=this.getListView(); listView.setAdapter(adapter); listView.setOnItemClickListener(this); helper.close(); } /* * (non-Javadoc) * @see android.widget.AdapterView.OnItemClickListener#onItemClick(android.widget.AdapterView,android.view.View,long) */ @Override public void onItemClick(AdapterView<?> arg0,View arg1,int arg2,long arg3) { // TODO Auto-generated method stub temp=arg3; AlertDialog.Builder builder=new AlertDialog.Builder(this); builder.setMessage("真的要删除该记录吗?"); builder.setPositiveButton("确定",this); builder.setNegativeButton("取消",null); builder.create().show(); } @Override public void onClick(DialogInterface dialog,int which) { // TODO Auto-generated method stub helper.delete((int)temp); Cursor cursor=helper.query(); String[] from={"_id","desc"}; int[] to={R.id.text1,R.id.text4}; SimpleCursorAdapter adapter=new SimpleCursorAdapter(this,to); ListView listView=this.getListView(); listView.setAdapter(adapter); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |