Android中SQLiteDatabase的使用.doc_第1页
Android中SQLiteDatabase的使用.doc_第2页
Android中SQLiteDatabase的使用.doc_第3页
Android中SQLiteDatabase的使用.doc_第4页
Android中SQLiteDatabase的使用.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

package com.Aina.Android; import android.app.Activity; import android.app.AlertDialog; import android.content.ContentValues; import android.content.DialogInterface; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleCursorAdapter; public class Test extends Activity /* Called when the activity is first created. */ private ListView lv = null; private SQLiteDatabase mSQLiteDatabase = null; private static final String DATABASE_NAME = Test.db; private static final String TABLE_NAME = table_test; private static final String COLUMN_ID = _id;/ INTEGER PRIMARY KEY private static final String COLUMN_NAME = name;/ TEXT private static final String COLUMN_AGE = age;/ INTEGER private static final String CREATE_TABLE = CREATE TABLE IF NOT EXISTS + TABLE_NAME + ( + COLUMN_ID + INTEGER PRIMARY KEY, + COLUMN_NAME + TEXT, + COLUMN_AGE + INTEGER); Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); lv = (ListView) this.findViewById(R.id.ListView01); try mSQLiteDatabase = this.openOrCreateDatabase(DATABASE_NAME, Activity.MODE_PRIVATE, null); catch (Exception ex) this.ShowDialog(打开或者创建数据库异常: + ex.getMessage(); try mSQLiteDatabase.execSQL(CREATE_TABLE); catch (Exception ex) this.ShowDialog(创建表异常: + ex.getMessage(); / this.InsertData(); / this.InsertData2(); / this.AddData(); / this.UpdateData(); / this.UpdateData2(); / this.UpdateData3(); / this.DeleteData(); / this.DeleteData2(); / this.DeleteData3(); this.SelectData(); Override protected void onPause() super.onPause(); mSQLiteDatabase.close();/ 关闭数据库 /* * 插入数据-execSQL */ private void InsertData() try String str = INSERT INTO + TABLE_NAME + ( + COLUMN_NAME + , + COLUMN_AGE + )VALUES(张三,30); mSQLiteDatabase.execSQL(str); catch (Exception ex) this.ShowDialog(插入数据异常: + ex.getMessage(); /* * 插入数据-execSQL */ private void InsertData2() try String str = INSERT INTO + TABLE_NAME + ( + COLUMN_NAME + , + COLUMN_AGE + )VALUES(?,?); Object ob = new Object 王五, 50 ; mSQLiteDatabase.execSQL(str, ob); catch (Exception ex) this.ShowDialog(插入数据异常: + ex.getMessage(); /* * 插入数据-insert() nullColumnHack,这个参数需要传入一个列名。SQL标准并不允许插入所有列均为空的一行数据, * 所以当传入的initialValues值为空或者为0时 * ,用nullColumnHack参数指定的列会被插入值为NULL的数据,然后再将此行插入到表中。 */ private void AddData() try ContentValues cv = new ContentValues(); cv.put(COLUMN_NAME, 李四); cv.put(COLUMN_AGE, 40); / long num = mSQLiteDatabase.insert(TABLE_NAME, COLUMN_NAME, cv); long num = mSQLiteDatabase.insertOrThrow(TABLE_NAME, null, cv); this.setTitle(num= + num); catch (Exception ex) this.ShowDialog(插入数据异常: + ex.getMessage(); /* * 更新数据 */ private void UpdateData() try String str = UPDATE + TABLE_NAME + SET + COLUMN_AGE + = 25 WHERE _id=1; mSQLiteDatabase.execSQL(str); catch (Exception ex) this.ShowDialog(更新数据异常: + ex.getMessage(); /* * 更新数据 */ private void UpdateData2() try String str = UPDATE + TABLE_NAME + SET + COLUMN_AGE + = ? WHERE _id=?; Object Ob = new Object 33, 2 ; mSQLiteDatabase.execSQL(str, Ob); catch (Exception ex) this.ShowDialog(更新数据异常: + ex.getMessage(); /* * 更新数据 */ private void UpdateData3() try ContentValues cv = new ContentValues(); cv.put(COLUMN_NAME, 李四4); cv.put(COLUMN_AGE, 43); int num = mSQLiteDatabase.update(TABLE_NAME, cv, COLUMN_NAME + =?, new String 李四 ); this.setTitle(修改行数num= + num); catch (Exception ex) this.ShowDialog(更新数据异常: + ex.getMessage(); /* * 删除数据 */ private void DeleteData() try String str = DELETE FROM + TABLE_NAME + WHERE _id=3; mSQLiteDatabase.execSQL(str); catch (Exception ex) this.ShowDialog(删除数据异常: + ex.getMessage(); /* * 删除数据 */ private void DeleteData2() try String str = DELETE FROM + TABLE_NAME + WHERE _id=?; mSQLiteDatabase.execSQL(str, new Object 2 ); catch (Exception ex) this.ShowDialog(删除数据异常: + ex.getMessage(); /* * 删除数据 */ private void DeleteData3() try int num = mSQLiteDatabase.delete(TABLE_NAME, _id=1, null); this.setTitle(删除行数num= + num); catch (Exception ex) this.ShowDialog(删除数据异常: + ex.getMessage(); /* * 查询数据 */ private void SelectData() try String sql = SELECT * FROM + TABLE_NAME; Cursor cursor = mSQLiteDatabase.rawQuery(sql,null); / Cursor cursor = mSQLiteDatabase.query(TABLE_NAME, new String / COLUMN_ID, COLUMN_NAME, COLUMN_AGE , COLUMN_NAME + =?, / new String 李四 , null, null, null); if (cursor != null) ListAdapter adapter = new SimpleCursorAdapter(this, R.layout.ss, cursor, new String COLUMN_ID, COLUMN_NAME, COLUMN_AGE , new int R.id.TextView1, R.id.TextView2, R.id.TextView3 ); lv.setAdapter(adapter); catch (Exception ex) this.ShowDialog(查询数据异常: + ex.getMessage(); /* * 删除表 */ private void DropTable() try String sql = DROP TABLE +TABLE_NAME; mSQLiteDatabase.execSQL(sql); catch(Exception ex) this.ShowDialog(删除表异常:+ex.getMessage(); /* * 删除数据库 */ private void DropDatabase() try this.deleteDatabase(DATABASE_NAME); catch(Exception ex) this.ShowDialog(删除数据库异常:+ex.getMessage(); /* * 提示对话框 * param msg */ p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论