


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Android学习数据库表增加删除修改查询根据SQLiteDatabase,SQLiteOpenHelper,ContentValues对数据库做增,删,改,查操作的公用代码.SQLiteDatabase:insert(databaseHelper.DATABASE_TABLE,null,content);第一参数:数据库表名第二个参数如果CONTENT空时则向表中插入一个NULL,第三个参数为插入的内容delete(databaseHelper.DATABASE_TABLE,KEY_ROWID+"="+rowId,null)>0;第一参数:数据库表名,第二个参数表示
2、条件语句,第三个参数为条件带?的替代值返回值大于0表示删除成功update(databaseHelper.DATABASE_TABLE,args,KEY_ROWID+"="+rowId,null)>0;第一个参数:数据库表名第二个参数更新的内容第三个参数更新的条件第四个参数条件带?号的替代者数据库创建:Java代码packageus.imnet.iceskysl.db.notepad;importandroid.content.Context;importandroid.database.sqlite.SQLiteDatabase;importandroid.data
3、base.sqlite.SQLiteOpenHelper;importandroid.database.sqlite.SQLiteDatabase.CursorFactory;/*创建数据库对象*authorxuzhenqin*/publicclassDatabaseHelperextendsSQLiteOpenHelper(/数据库名称privatefinalstaticStringDATABASE_NAME="notepad"/数据库版本号privatefinalstaticintDATABASE_VERSION=1;publicstaticfinalStringDAT
4、ABASE_TABLE="diary"/数据表创建SQL语句privatestaticfinalStringDATABASE_CREATE="createtable"+DATABASE_TABLE+"(_idintegerprimarykeyautoincrement,"+"titletextnotnull,bodytextnotnull,createdtextnotnull);"publicDatabaseHelper(Contextcontext)(/调用父类构造方法创建数据库super(context,DAT
5、ABASE_NAME,null,DATABASE_VERSION);OverridepublicvoidonCreate(SQLiteDatabasedb)(/执行创建数据库SQL语句db.execSQL(DATABASE_CREATE);OverridepublicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion)(/判断数据库是否存在db.execSQL("DROPTABLEIFEXISTSdiary");onCreate(db);packageus.imnet.iceskysl.db.notepad;
6、importandroid.content.Context;importandroid.database.sqlite.SQLiteDatabase;importandroid.database.sqlite.SQLiteOpenHelper;importandroid.database.sqlite.SQLiteDatabase.CursorFactory;/*创建数据库对象*authorxuzhenqin*/publicclassDatabaseHelperextendsSQLiteOpenHelper/数据库名称privatefinalstaticStringDATABASE_NAME=
7、"notepad"/数据库版本号privatefinalstaticintDATABASE_VERSION=1;publicstaticfinalStringDATABASE_TABLE="diary"/数据表创建SQL语句privatestaticfinalStringDATABASE_CREATE="createtable"+DATABASE_TABLE+"(_idintegerprimarykeyautoincrement,"+"titletextnotnull,bodytextnotnull,cr
8、eatedtextnotnull);"publicDatabaseHelper(Contextcontext)/调用父类构造方法创建数据库super(context,DATABASE_NAME,null,DATABASE_VERSION);OverridepublicvoidonCreate(SQLiteDatabasedb)/执行创建数据库SQL语句db.execSQL(DATABASE_CREATE);OverridepublicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion)/判断数据库是否存在db.exec
9、SQL("DROPTABLEIFEXISTSdiary");onCreate(db);数据库增,删,改,查公共类:Java代码packageus.imnet.iceskysl.db.notepad;importjava.util.Calendar;importandroid.content.ContentValues;importandroid.content.Context;importandroid.database.Cursor;importandroid.database.SQLException;importandroid.database.sqlite.SQLi
10、teDatabase;importandroid.database.sqlite.SQLiteException;/*数据库操作对象*authorxuzhenqin*/publicclassDiaryDbAdapter(publicstaticfinalStringKEY_TITLE="title"publicstaticfinalStringKEY_BODY="body"publicstaticfinalStringKEY_ROWID="_id"publicstaticfinalStringKEY_CREATED="cre
11、ated"privateDatabaseHelperdatabaseHelper;privateContextcontext;privateSQLiteDatabasesqliteDatabase;publicDiaryDbAdapter(Contextcontext)this.context=context;/*打开数据库连接*/publicvoidopen()(databaseHelper=newDatabaseHelper(context);try(sqliteDatabase=databaseHelper.getWritableDatabase();catch(SQLiteE
12、xceptionex)(sqliteDatabase=databaseHelper.getReadableDatabase();*关闭数据库连接*/publicvoidclose()(sqliteDatabase.close();/*向数据库表中插入一条数据* paramtitle字段值* parambody字段值*/publiclongcreateDiary(Stringtitle,Stringbody)Contentvaluescontent=newContentValues();content.put(KEY_TITLE,title);content.put(KEY_BODY,body)
13、;Calendarcalendar=Calendar.getInstance();Stringcreated=calendar.get(Calendar.YEAR)+"年"+calendar.get(Calendar.MONTH)+"月"+calendar.get(Calendar.DAY_OF_MONTH)+"日"+calendar.get(Calendar.HOUR_OF_DAY)+"时”+calendar.get(Calendar.MINUTE)+"分"content.put(KEY_CREATED
14、,created);/content为插入表中的一条记录,类似与HASHMAPM以键值对形式存储。/insert方法第一参数:数据库表名,第二个参数如果CONTENT为空时则向表中插入一个NULL第三个参数为插入的内容returnsqliteDatabase.insert(databaseHelper.DATABASE_TABLE,null,content);*删除表中符合条件的记录* paramrowId删除条件* return是否删除成功*/publicbooleandeleteDiary(longrowId)(/delete方法第一参数:数据库表名,第二个参数表示条件语句,第三个参数为条
15、件带?的替代值/返回值大于0表示删除成功returnsqliteDatabase.delete(databaseHelper.DATABASE_TABLE,KEY_ROWID+"="+rowId,null)>0;*查询全部表记录* return返回查询的全部表记录*/publicCursorgetAllNotes()(/查询表中满足条件的所有记录returnsqliteDatabase.query(databaseHelper.DATABASE_TABLE,newString(KEY_ROWID,KEY_TITLE,KEY_BODY,KEY_CREATED,null,
16、null,null,null,null);/*查询带条件的记录* paramrowId条件值* return返回查询结果*throwsSQLException查询时异常抛出*/publicCursorgetDiary(longrowId)throwsSQLException(/查询表中条件值为rowId的记录CursormCursor=sqliteDatabase.query(true,databaseHelper.DATABASE_TABLE,newString(KEY_ROWID,KEY_TITLE,KEY_BODY,KEY_CREATED,KEY_ROWID+"="+
17、rowId,null,null,null,null,null);/mCursor不等于null,将标识指向第一条记录if(mCursor!=null)(mCursor.moveToFirst();returnmCursor;*更新数据库* paramrowId行标识* paramtitle内容* parambody内容* return是否更新成功*/publicbooleanupdateDiary(longrowId,Stringtitle,Stringbody)ContentValuesargs=newContentValues();args.put(KEY_TITLE,title);args.put(KEY_BODY,body);Calendarcalendar=Calendar.getInstance();Stringcreated=calendar.get(Calendar.YEAR)+"年+calendar.get(Calendar.MONTH)+"月"+calendar.get(Calendar.DAY_OF_MON
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 元宵数学活动方案
- 元宵美工活动方案
- 元宵节活动班级活动方案
- 元宵黄金活动方案
- 元旦促销手机活动方案
- 元旦养生推拿活动方案
- 元旦品牌活动方案
- 元旦学科实践活动方案
- 元旦常州活动方案
- 元旦教室活动跳舞活动方案
- 关于公司流程管理制度
- 2025年棉纱代加工合同3篇
- 2025年国家开放大学《形势与政策大作业》试题与答案《形势与政策》形成性考试专题检测及大作业答案
- 浙江省金华市卓越联盟2024-2025学年高一下学期5月月考政治试题(含解析)
- 理论联系实际谈一谈如何传承发展中华优-秀传统文化?参考答案
- 拱墅区长庆街道招聘工作人员笔试真题2024
- 三级医院评审标准实施细则(2023 年版)
- 嵌入式Linux图形化界面与边缘计算的协同设计研究-洞察阐释
- 2025年春江苏开放大学中国文化概论060692过程性考核作业123参考答案
- 金融租赁测试题及答案
- 2025-2030全球及中国贯穿玻璃通孔(TGV)技术行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
评论
0/150
提交评论