分享

android SQLite数据库基本操作示例 - 低级写手 android QQ群 13...

 software1 2011-03-04
  1. Exception e)   
  2.         {   
  3.             UpdataAdapter();   
  4.         }   
  5.     }   
  6.   
  7.   
  8.     public boolean onKeyUp(int keyCode, KeyEvent event)   
  9.     {   
  10.         switch (keyCode)   
  11.         {   
  12.             case KeyEvent.KEYCODE_DPAD_LEFT:   
  13.                 AddData();   
  14.                 break;   
  15.             case KeyEvent.KEYCODE_DPAD_RIGHT:   
  16.                 DeleteData();   
  17.                 break;   
  18.             case KeyEvent.KEYCODE_1:   
  19.                 UpData();   
  20.                 break;   
  21.             case KeyEvent.KEYCODE_2:   
  22.                 DeleteTable();   
  23.                 break;   
  24.             case KeyEvent.KEYCODE_3:   
  25.                 DeleteDataBase();   
  26.                 break;   
  27.         }   
  28.         return true;   
  29.     }   
  30.   
  31.   
  32.     /* 删除数据库 */  
  33.     public void DeleteDataBase()   
  34.     {   
  35.         this.deleteDatabase(DATABASE_NAME);   
  36.         this.finish();   
  37.     }   
  38.   
  39.   
  40.     /* 删除一个表 */  
  41.     public void DeleteTable()   
  42.     {   
  43.         mSQLiteDatabase.execSQL("DROP TABLE " + TABLE_NAME);   
  44.         this.finish();   
  45.     }   
  46.   
  47.   
  48.     /* 更新一条数据 */  
  49.     public void UpData()   
  50.     {   
  51.         ContentValues cv = new ContentValues();   
  52.         cv.put(TABLE_NUM, miCount);   
  53.         cv.put(TABLE_DATA, "修改后的数据" + miCount);   
  54.   
  55.         /* 更新数据 */  
  56.         mSQLiteDatabase.update(TABLE_NAME, cv, TABLE_NUM + "=" + Integer.toString(miCount - 1), null);   
  57.   
  58.         UpdataAdapter();   
  59.     }   
  60.   
  61.   
  62.     /* 向表中添加一条数据 */  
  63.     public void AddData()   
  64.     {   
  65.         ContentValues cv = new ContentValues();   
  66.         cv.put(TABLE_NUM, miCount);   
  67.         cv.put(TABLE_DATA, "测试数据库数据" + miCount);   
  68.         /* 插入数据 */  
  69.         mSQLiteDatabase.insert(TABLE_NAME, null, cv);   
  70.         miCount++;   
  71.         UpdataAdapter();   
  72.     }   
  73.       
  74.   
  75.     /* 从表中删除指定的一条数据 */  
  76.     public void DeleteData()   
  77.     {   
  78.   
  79.         /* 删除数据 */  
  80.         mSQLiteDatabase.execSQL("DELETE FROM " + TABLE_NAME + " WHERE _id=" + Integer.toString(miCount));   
  81.   
  82.         miCount--;   
  83.         if (miCount < 0)   
  84.         {   
  85.             miCount = 0;   
  86.         }   
  87.         UpdataAdapter();   
  88.     }   
  89.   
  90.   
  91.     /* 更行试图显示 */  
  92.     public void UpdataAdapter()   
  93.     {   
  94.         // 获取数据库Phones的Cursor   
  95.         Cursor cur = mSQLiteDatabase.query(TABLE_NAME, new String[] { TABLE_ID, TABLE_NUM, TABLE_DATA }, nullnullnullnullnull);   
  96.   
  97.         miCount = cur.getCount();   
  98.         if (cur != null && cur.getCount() >= 0)   
  99.         {   
  100.             // ListAdapter是ListView和后台数据的桥梁   
  101.             ListAdapter adapter = new SimpleCursorAdapter(this,   
  102.             // 定义List中每一行的显示模板   
  103.                 // 表示每一行包含两个数据项   
  104.                 android.R.layout.simple_list_item_2,   
  105.                 // 数据库的Cursor对象   
  106.                 cur,   
  107.                 // 从数据库的TABLE_NUM和TABLE_DATA两列中取数据   
  108.                 new String[] { TABLE_NUM, TABLE_DATA },   
  109.                 // 与NAME和NUMBER对应的Views   
  110.                 new int[] { android.R.id.text1, android.R.id.text2 });   
  111.   
  112.             /* 将adapter添加到m_ListView中 */  
  113.             m_ListView.setAdapter(adapter);   
  114.         }   
  115.     }   
  116.   
  117.   
  118.     /* 按键事件处理 */  
  119.     public boolean onKeyDown(int keyCode, KeyEvent event)   
  120.     {   
  121.         if (keyCode == KeyEvent.KEYCODE_BACK)   
  122.         {   
  123.             /* 退出时,不要忘记关闭 */  
  124.             mSQLiteDatabase.close();   
  125.             this.finish();   
  126.             return true;   
  127.         }   
  128.         return super.onKeyDown(keyCode, event);   
  129.     }   
  130. }  


   还有一点就是大家有必要知道一下数据库的存储地址。来张截图吧。



   源码请大家参考附件
  • 大小: 30.5 KB

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多