亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談SQLite數(shù)據(jù)庫操作常用方法

        2017-06-30 00:12:31馬自輝
        科技視界 2017年5期
        關(guān)鍵詞:數(shù)據(jù)庫

        馬自輝

        【摘 要】Android提供了創(chuàng)建和使用SQLite數(shù)據(jù)庫的API。SQLiteDatabase代表一個數(shù)據(jù)庫對象,提供了操作數(shù)據(jù)庫的一些方法。在Android的SDK目錄下有sqlite3工具,我們可以利用它創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表和執(zhí)行一些SQL語句。

        【關(guān)鍵詞】Andriod;SQLite;數(shù)據(jù)庫

        1 打開或者創(chuàng)建數(shù)據(jù)庫

        在Android中使用SQLiteDatabase的靜態(tài)方法。openOrCreateDatabase(String path,SQLiteDatabae.Cursor Factory factory)打開或者創(chuàng)建一個數(shù)據(jù)庫。它會自動去檢測是否存在這個數(shù)據(jù)庫,如果存在則打開,不存在則創(chuàng)建一個數(shù)據(jù)庫;創(chuàng)建成功則返回一個SQLiteDatabase對象,否則拋出異常FileNotFoundException。

        2 創(chuàng)建表

        創(chuàng)建一張表的步驟很簡單:編寫創(chuàng)建表的SQL語句,調(diào)用SQLiteDatabase的execSQL()方法來執(zhí)行SQL語句。下面的代碼創(chuàng)建了一張用戶表,屬性列為:id(主鍵并且自動增加)、sname(學(xué)生姓名)、snumber(學(xué)號)。

        private void createTable(SQLiteDatabase db){//創(chuàng)建表SQL語句String stu_table="create table usertable(_id integer primary key autoincrement,sname text,snumber text)";//執(zhí)行SQL語句db.execSQL(stu_table);}

        3 插入數(shù)據(jù)

        插入數(shù)據(jù)有兩種方法:

        1)SQLiteDatabase的insert(Stringtable,StringnullColumnHack,Content

        Values values)方法,

        參數(shù)1 表名稱,

        參數(shù)2 空列的默認(rèn)值

        參數(shù)3 ContentValues類型的一個封裝了列名稱和列值的Map;

        2)編寫插入數(shù)據(jù)的SQL語句,直接調(diào)用SQLiteDatabase的execSQL()方法來執(zhí)行。代碼:

        private void insert(SQLiteDatabase db){//實(shí)例化常量值

        ContentValues cValue=new ContentValues();//添加用戶cValue.put("sname","xiaoming");//添加密碼

        cValue.put("snumber","01005");//調(diào)用insert()方法插入數(shù)據(jù)db.insert("stu_table",null,cValue);}

        4 刪除數(shù)據(jù)

        刪除數(shù)據(jù)也有兩種方法:

        1)調(diào)用SQLiteDatabase的delete(Stringtable,StringwhereClause,String[]whereArgs)方法

        參數(shù)1 表名稱

        參數(shù)2 刪除條件

        參數(shù)3 刪除條件值數(shù)組

        2)編寫刪除SQL語句,調(diào)用SQLiteDatabase的execSQL()方法來執(zhí)行刪除。

        第一種方法的代碼:

        private void delete(SQLiteDatabase db){//刪除條件String

        whereClause="id=";//刪除條件參數(shù)String[]whereArgs={String

        valueOf(2)};//執(zhí)行刪除db.delete("stu_table",whereClause,whereArgs);}

        第二種方法的代碼:

        private void delete(SQLiteDatabase db){//刪除SQL語句

        String sql="delete from stu_table where_id=6";//執(zhí)行SQL語句db.execSQL(sql);}

        5 修改數(shù)據(jù)

        修改數(shù)據(jù)有兩種方法:

        1)調(diào)用SQLiteDatabase的update(Stringtable,ContentValuesvalues,String whereClause,String[]whereArgs)方法

        參數(shù)1 表名稱

        參數(shù)2 跟行列ContentValues類型的鍵值對Key-Value

        參數(shù)3 更新條件(where字句)

        參數(shù)4 更新條件數(shù)組

        2)編寫更新的SQL語句,調(diào)用SQLiteDatabase的execSQL執(zhí)行更新。

        第一種方法的代碼:

        private void update(SQLiteDatabase db){//實(shí)例化內(nèi)容值ContentValues values=new ContentValues();//在values中添加內(nèi)容values.put("snumber","101003");//修改條件String whereClause="id=";//修改添加參數(shù)String[]whereArgs={String.valuesOf(1)};//修改db.update("usertable",values,whereClause,whereArgs);}

        第二種方法的代碼:

        private void update(SQLiteDatabase db){//修改SQL語句String sql="update stu_table set snumber=654321 where id=1";//執(zhí)行SQLdb.execSQL(sql);}

        6 查詢數(shù)據(jù)

        在Android中查詢數(shù)據(jù)是通過Cursor類來實(shí)現(xiàn)的,當(dāng)我們使用SQLiteDatabase.query()方法時,會得到一個Cursor對象,Cursor指向的就是每一條數(shù)據(jù)。它提供了很多有關(guān)查詢的方法,具體方法如下:

        public Cursorquery(Stringtable,String[]columns,Stringselection,String[]selectionArgs,StringgroupBy,Stringhaving,StringorderBy,Stringlimit);

        各個參數(shù)的意義說明:

        參數(shù)table:表名稱

        參數(shù)columns:列名稱數(shù)組

        參數(shù)selection:條件字句,相當(dāng)于where

        參數(shù)selectionArgs:條件字句,參數(shù)數(shù)組

        參數(shù)groupBy:分組列

        參數(shù)having:分組條件

        參數(shù)orderBy:排序列

        參數(shù)limit:分頁查詢限制

        參數(shù)Cursor:返回值,相當(dāng)于結(jié)果集ResultSet

        Cursor是一個游標(biāo)接口,提供了遍歷查詢結(jié)果的方法,如移動指針方法move(),獲得列值方法getString()等。

        7 刪除指定表

        編寫插入數(shù)據(jù)的SQL語句,直接調(diào)用SQLiteDatabase的execSQL()方法來執(zhí)行private void drop(SQLiteDatabase db){//刪除表的SQL語句String sql="DROP TABLE stu_table";//執(zhí)行SQL db.execSQL(sql);}

        [責(zé)任編輯:田吉捷]

        猜你喜歡
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        數(shù)據(jù)庫
        欧美深夜福利视频| 亚洲综合五月天欧美| 国产自精品在线| 亚洲av永久一区二区三区| 永久免费a∨片在线观看| 亚洲男同志网站| 999精品免费视频观看| 精品人妻午夜中文字幕av四季| 国产极品美女高潮无套| 国产精品v欧美精品v日韩精品 | 国产精品福利小视频| 国产三级在线观看不卡| 综合图区亚洲另类偷窥| 全免费a级毛片免费看网站| 精品一区二区av天堂| 国产一区二区三区精品成人爱| 香蕉久久一区二区不卡无毒影院| 特级做a爰片毛片免费看108| 在线视频一区二区日韩国产| 日韩av在线免费观看不卡| 日本真人添下面视频免费| 风间由美性色一区二区三区| 日韩精品一区二区三区四区| 久久精品国产精品亚洲艾| 国内精品视频一区二区三区八戒| 国产第一页屁屁影院| 国产成人AⅤ| 久久综合九色综合97婷婷| 熟妇激情内射com| 一本一道波多野结衣av中文| 国产av大片久久中文字幕| 欧洲美熟女乱av亚洲一区| 久久人人爽人人爽人人片av麻烦 | 成人日韩精品人妻久久一区| 夜夜未满十八勿进的爽爽影院| 综合91在线精品| 日本视频一区二区三区在线| а√天堂资源官网在线资源 | 国产免费av片在线播放 | 日本熟女人妻一区二区| 国产一区二区波多野结衣|