android使用開源的,與作業系統無關的sql資料的。sqlite是一款輕量級資料庫,它的設計目的是嵌入式,而且占用的資源非常少,在嵌入式裝置中,可能只需要幾百kb,這也是android系統採用sqlite資料庫的原因之一。
sqlite3資料型別:
支援null,interger,real(浮點數字),text(字串文字)和blob(二進位制物件)資料型別,雖然它支援的資料物件只有五種,但實際上也接受varchar,char,decimal(p,s)等資料型別,只不過在運輸或儲存時會轉成對於的五種資料型別。sqlite最大的特點是你可以儲存任何型別的資料到任何欄位中,無論這列宣告的資料型別是什麼。
在命令列下建立資料庫
1、啟動模擬器後,開啟命令列,執行adb shell
2、進入所在工程目錄,如:cd data/data/com.vince.db
3、執行sqlite3 mydb建立資料庫檔案
這時如果使用.help可以區則求助,.quit則是離開
sql指令都是以分號(;)結尾的。如果遇到兩個減號(–)則代表註解
包android.database.sqlite包含了使用sqlite資料庫的所有api
sql資料庫主要概念之一就是schema——乙個關於如何組織資料庫的定義
以下是乙個為單錶定義表名和列名的**片段:
public
final
class
petmetadata
//dog表的定義
public
static
abstract
class
dogtable
implements
basecolumns
}
import android.content.context;
import android.database.sqlite.sqlitedatabase;
import android.database.sqlite.sqliteopenhelper;
public
class
databasehelper
extends
sqliteopenhelper
//如果資料表不存在,則呼叫該方法
@override
public
void
oncreate
(sqlitedatabase db)
//公升級
@override
public
void
onupgrade
(sqlitedatabase db,
int oldversion,
int newversion)
}
public
void
add(dog dog)
//根據id查詢結果
public dog findbyid
(int id)
;//是否去除重覆記錄,表名,要查詢的列,查詢條件,查詢條件的值,分組條件,分組條件的值,排序,分離條件
cursor c = db.
query
(true
,petmetadata.dogtable.table_name,columns,petmetadata.dogtable._id+
"=?"
,new
string
,null,null,null,null)
; dog dog = null;
if(c.
movetonext()
) c.
close()
; db.
close()
;return dog;
}//查詢所有
public arraylist
findall()
;//是否去除重覆記錄,表名,要查詢的列,查詢條件,查詢條件的值,分組條件,分組條件的值,排序,分離條件
cursor c = db.
query
(true
,petmetadata.dogtable.table_name,columns,null,null,null,null,null,null)
; arraylist
dogs =
newarraylist
<
>()
; dog dog = null;
while
(c.movetonext()
) c.
close()
; db.
close()
;return dogs;
}
//刪除
public
void
delete
(int id)
;//表名,事件條件的值
db.delete
(petmetadata.dogtable.table_name,whereclause,whereargs)
; db.
close()
;}
//更新
public
void
update
(dog dog)
;//表名,contentvalues,事件,條件的值
//事務處理
public
void
transaction()
finally
}
功能實現1、定義元資料類:gamemetadata和表結構資料內部類 gameplayer
2、定義資料庫操作類 databaseadaptec和databasehelper
3、mainactivity和gameplayerfragment用於介面顯示(列表)
4、addfragment中使用dialog來新增玩家
5、updatefragment顯示乙個玩家資料並可以修改
大資料核心技術解讀
網際網路時代,我們每天都在生產著大量的資料,並且這些資料被記錄儲存下來,不斷地累積,資料規模越來越大,想要實現對資料的處理,就需要成熟的大資料技術框架來提供支援。今天的大資料前沿技術培訓分享,我們就來對大資料核心技術做乙個簡單的入門介紹。在大資料當中,相當一部分的資料是半結構化 非結構化的,並且伴隨...
資料探勘核心技術揭秘
資料探勘主要可以分為三類 聚類 分類 回歸 pig sql指令碼語言,生成自定義函式 matlab語言 分為主接指令互動和m檔案的程式設計方式 weka 機器學習軟體 rapodminer r語言的學習方法 主要需要的數學知識有 概率統計 矩陣理論 相似度計算 線性代數 最小二乘法 索引技術包括 資...
安卓建立SQLite資料庫
新建乙個myopenhelper類,繼承sqliteopenhelper,實現它的構造方法和oncreate,onupgrade方法,構造方法myopenhelper有四個引數 1 context 上下文環境 2 name 資料庫的名字 3 factory 目的建立cursor 物件 4 versi...