




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《通信业务开发》课程创建打开DB创建打开数据库使用步骤PART33-2实例演示使用步骤示例继承android.database.sqlite.SQLiteOpenHelper,创建数据库操作辅助类实现onCreate(),编写SQL语句,创建数据库表等操作实现onUpdate()方法,编写SQL语句,进行数据库更新操作添加相应方法,实现DBCRUD操作Activity中事件驱动,获取可读or可写DB,调用DB操作辅助类中方法,进行CRUD操作步骤SQLite中,为表设置自动增长字段时,使用“INTEGERPRIMARYKEY”声明即可实例演示实例演示publicclassDatabaseHelperextendsSQLiteOpenHelper{
publicDatabaseHelper(Contextcontext){super(context,DATABASE_NAME,null,DATABASE_VERSION);}privatefinalstaticStringDATABASE_NAME="BOOKS.db";privatefinalstaticintDATABASE_VERSION=1;privatefinalstaticStringTABLE_NAME="books_table";publicfinalstaticStringBOOK_ID="book_id";publicfinalstaticStringBOOK_NAME="book_name";publicfinalstaticStringBOOK_AUTHOR="book_author";@OverridepublicvoidonCreate(SQLiteDatabasedb){Stringsql="CREATETABLE"+TABLE_NAME+"("+BOOK_ID+"INTEGERprimarykeyautoincrement,“+BOOK_NAME+"text,"+BOOK_AUTHOR+"text);";db.execSQL(sql);}@OverridepublicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){Stringsql="DROPTABLEIFEXISTS"+TABLE_NAME;db.execSQL(sql);onCreate(db);}publicCursorselect(){SQLiteDatabasedb=this.getReadableDatabase();Cursorcursor=db.query(TABLE_NAME,null,null,null,null,null,null);returncursor;……}}DatabaseHelper.java实例演示publicclassDatabaseHelperextendsSQLiteOpenHelper{publiclonginsert(Stringbookname,Stringauthor){SQLiteDatabasedb=this.getWritableDatabase();ContentValuescv=newContentValues();cv.put(BOOK_NAME,bookname);cv.put(BOOK_AUTHOR,author);longrow=db.insert(TABLE_NAME,null,cv);returnrow;}publicvoiddelete(intid){SQLiteDatabasedb=this.getWritableDatabase();Stringwhere=BOOK_ID+"=?";String[]whereValue={Integer.toString(id)};db.delete(TABLE_NAME,where,whereValue);}publicvoidupdate(intid,Stringbookname,Stringauthor){SQLiteDatabasedb=this.getWritableDatabase();Stringwhere=BOOK_ID+"=?";String[]whereValue={Integer.toString(id)};ContentValuescv=newContentValues();cv.put(BOOK_NAME,bookname);cv.put(BOOK_AUTHOR,author);db.update(TABLE_NAME,cv,where,whereValue);}}DatabaseHelper.java实例演示publicclassMainAcextendsActivityimplementsAdapterView.OnItemClickListener{privateDatabaseHelpermBooksDB;privateCursormCursor;privateEditTextBookName;privateEditTextBookAuthor;privateListViewBooksList;privateintBOOK_ID=0;protectedfinalstaticintMENU_ADD=Menu.FIRST;protectedfinalstaticintMENU_DELETE=Menu.FIRST+1;protectedfinalstaticintMENU_UPDATE=Menu.FIRST+2;publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);setUpViews();}publicvoidsetUpViews(){mBooksDB=newDatabaseHelper(this);mCursor=mBooksDB.select();}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){super.onCreateOptionsMenu(menu);menu.add(Menu.NONE,MENU_ADD,0,"ADD");menu.add(Menu.NONE,MENU_DELETE,0,"DELETE");menu.add(Menu.NONE,MENU_DELETE,0,"UPDATE");returntrue;}publicbooleanonOptionsItemSelected(MenuItemitem){super.onOptionsItemSelected(item);switch(item.getItemId()){caseMENU_ADD:add();break;caseMENU_DELETE:delete();break;caseMENU_UPDATE:update();break;}returntrue;}……}MainAc.java实例演示publicclassMainAcextendsActivityimplementsAdapterView.OnItemClickListener{……publicvoidadd(){Stringbookname=BookName.getText().toString();Stringauthor=BookAuthor.getText().toString();if(bookname.equals("")||author.equals("")){return;}mBooksDB.insert(bookname,author);mCursor.requery();BooksList.invalidateViews();BookName.setText("");BookAuthor.setText("");Toast.makeText(this,"AddSuccessed!",Toast.LENGTH_SHORT).show();}publicvoiddelete(){if(BOOK_ID==0){return;}mBooksDB.delete(BOOK_ID);mCursor.requery();BooksList.invalidateViews();BookName.setText("");BookAuthor.setText("");Toast.makeText(this,"DeleteSuccessed!",Toast.LENGTH_SHORT).show();}publicvoidupdate(){Stringbookname=BookName.getText().toString();Stringauthor=BookAuthor.getText().toString();
if(bookname.equals("")||author.equals("")){return;}mBooksDB.update(BOOK_ID,bookname,author);mCursor.requery();BooksList.invalidateViews();BookName.setText("");BookAuthor.setText("");Toast.makeText(this,"UpdateSuccessed!",Toast.LENGTH_SHORT).show();}……}MainAc.java实例演示publicclassMainAcextendsActivityimplementsAdapterView.OnItemClickListener{……@OverridepublicvoidonItemClick(AdapterView<?>parent,Viewview,intposition,longid){mCursor.moveToPosition(position);BOOK_ID=mCursor.getInt(0);BookName.setText(mCursor.getString(1));BookAuthor.setText(mCursor.getString(2));}publicclassBooksListAdapterextendsBaseAdapter{privateContextmContext;privateCursormCursor;public
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 体育伤害预防与管理:策略与实践
- 大麻沉着病的护理查房
- 剧院舞台案例中的雨淋系统设计探讨
- 加速老化试验-第1篇-洞察及研究
- 腹壁脓肿的健康宣教
- 髂动脉迂曲的护理查房
- 食欲缺乏的健康教育
- 特高压线路架设中的安全风险防控研究
- 土地金融创新-洞察及研究
- 肿瘤伴出血的健康教育
- 保险品质管理制度
- 2025年辽宁高考地理试卷真题答案详解讲评课件(黑龙江吉林内蒙古适用)
- 全国中小学教师职业道德知识竞赛80题及答案
- 2023CSCO食管癌诊疗指南
- 2024年四川省资中县事业单位公开招聘教师岗笔试题带答案
- 成人女性压力性尿失禁护理干预护理团标解读
- 某律师事务所内部规章管理制度大全
- GB 29743.2-2025机动车冷却液第2部分:电动汽车冷却液
- 急性右心衰的治疗与护理
- 制约理论(TOC)驱动制造业突破性增长
- 社交媒体情感分析方法-全面剖析
评论
0/150
提交评论