Android資料的四種儲存方式SharedPreferences、SQLite、Content Provider和File (一) —— 總覽

作為一個完成的應用程式,資料存放區操作是必不可少的。因此,Android系統一共提供了四種資料存放區方式。分別是:SharePreference、SQLite、Content Provider和File。由於Android系統中,資料基本都是私人的的,都是存放於“data/data/程式包名”目錄下,所以要實現資料共用,正確方式是使用Content

Android SQLite學習

一、SQLite簡介在Android平台上,整合了一個嵌入式關係型資料庫—SQLite,SQLite3支援NULL、INTEGER、REAL(浮點數字)、TEXT(字串文本)和BLOB(二進位對象)資料類型,雖然它支援的類型雖然只有五種,但實際上sqlite3也接受varchar(n)、char(n)、decimal(p,s)

學習SQLite的一些代碼

遍曆整個表,並把查詢結果輸出:int main(int argc, char **argv){    int rc, i,  id, cid;     char *name;    char *sql;    char *zErr;    sqlite3 *db; sqlite3_stmt *stmt;    sql="select id,name,cid from episodes";    //開啟資料庫    sqlite3_open("test.db", &db);   

學習使用SQLite(版本3.7.4)(中H ) ?

索引:           索引是一種在某種條件下的加速查詢的結構。一般的查詢都是順序掃描所有的行。如果表很大,查詢很頻繁,那麼一般的查詢就很臃腫。SQLite利用B-tree做索引。索引增加了資料庫的大小,在建立索引的情況下,最壞的情況就是表的內容翻倍,索引的維護也比較麻煩。修改表的時候,索引也是要修改的。           索引分為聚簇索引和非聚簇索引兩種,聚簇索引

學習SQLite的反思

8月份到現在一直在學習SQLite,準備讀源碼。但是現在搞不明白,我如何才能將SQLite學好,學精,學透徹?我為什麼要讀源碼?原因是什嗎?怎麼讀?本著什麼樣的原則?應該注意些什嗎?這個問題搞不清楚,接下來將會走的很難受。但是,昨天問一個學長,他簡單的說了下。總結了一下:熟悉基本的應用,重點學習其架構和內部機制;讀源碼,學習代碼的編寫規範方法等;在Linux下學習。暫時想到這些。。。。

C#訪問SQLite資料庫

1.下載最新版SQLite(http://www.sqlite.org/download.html),其他版本也可以。    a.解壓後copy c:/sqlite-3_5-0    b.進入cmd模式,進入sqlite-3_5_0目錄,執行sqlite3 mytest.db    c.create table mytable1 (seq int,desc varchar(8));insert into mytable1 values

QT學習(五)QT 串連 sqlite

sqlite這玩意,只要你用過資料庫,你就不應該對它感到害怕。把它想象成一個簡單的資料庫就夠了,只不過,它支援的資料有限而已。下面,我說說如何來使用的問題。我的環境是:VS2008+QT。 和大多數人一樣,我首先google一下,打段大段的代碼,於是乎隨便找來一段代碼,代碼如下:#include <QtGui/QApplication>//#include <QApplication>#include <QSqlDatabase>#include

SQLite資料庫的增刪改查代碼

//搜集整理了一下網上的代碼.找了半天居然找不到一條插入語句.好鬱悶的//感覺速度還可以.小檔案.很多小應用程式在用這個資料庫//SQLite使用辦法.直接COPYDLL檔案System.Data.SQLite.DLL到應用程式DEBUG目錄下。 然後在項目中添加引用,找到這個檔案即可//添加引用using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using

嵌入式資料庫sqlce和sqlite的使用方法(sqlce)

 最近由於項目需要, 要在wince4.2, wince5.0, mobile三種機型上面做大資料量的查詢,初步估計在50W-500W條記錄之間。由於以前做mobile5的資料庫專案主要是採用C#來寫,而且資料量也頂多幾萬條,所以,為了確保項目後期少走彎路,我特意做了一下移動資料庫效能測試。下面是這周的工作記錄。供大家參考。一. 由於wince4.2在打包OS的時候沒有帶.net的支援,所以,只能選用C++,也是為了各平台移植方便。 初步考慮採用sqlce 和

android的linux層對sqlite資料庫的調用

在android的linux編程調用sqlite資料庫,相關流程如下:1、首先在android的跟目錄執行:find ./ -name libsqlite.so -print 尋找是否有對sqlite支援的庫檔案,一般都有;2、在專案檔夾下的android.mk中添加對庫檔案(libsqlite)的引用,以便能調用其中的函數如:sqlite3_open();3、直接調用相關的函數來操作sqlite,資料庫的添加等可以直接使用sql語句就可以了。附android.mk:LOCAL_PATH:=$(

SQLite我選擇我喜歡

 最近由於項目的需要,需要一個小型的資料庫的支援,我找到了SQLite ,它是我見到過最簡單最方便的資料庫,而且我可以免費獲得原代碼,對於SQLite的作者我更是佩服的五體投地!SQLite的是: http://www.sqlite.org/download.html我下載的是SQLite3,如果你只是的簡單增刪改的功能,那麼下面幾個api足夠你使用的了! typedef struct sqlite3 sqlite3; //一個標記資料對象的結構 int

Delphi中讓sqlite顯示Unicode

#vp_maindiv{font-family: Arial, Helvetica, sans-serif;font-size: 10pt;line-height: 1.5em;/*background-color:#C8E0D8;*/background-color:#C2D8FC;border-style:dashed;border-width:2px;border-color:#B7B7B7;}#vp_maindiv dl,ul{font-size: 10pt;}-->最近做了一個小程式,

Sqlite的2個問題

1.主鍵自增長問題如果row_id是表主鍵,如果DDL中設定了auto increment,Insert row_id的時候只要設定為null則可以讓主鍵從1開始自增長。但是如果這時候刪除以往的記錄後,問題出現了,新增的記錄主索引值並不是從1開始的,而是從最後一條被刪除的主索引值+1開始的,比如上次刪除的記錄主鍵是1200,新增一條是1201而不是1,解決辦法是Drop

用sqlite 執行標準 sql 文法

1. 執行sql語句int sqlite3_exec(sqlite3*, const char *sql, sqlite3_callback, void *,  char **errmsg )這就是執行一條 sql 語句的函數。第1個參數不再說了,是前面open函數得到的指標。說了是關鍵資料結構。第2個參數const char *sql 是一條 sql 語句,以/0結尾。第3個參數sqlite3_callback

sqlite加密設計的缺陷與改進

 sqlite是一個非常小巧的跨平台嵌入式資料庫,它本身不提供加密功能,不過設計者明顯也考慮了加密的方案,我們在源碼中可以找到兩個預留的加密接口:sqlite3_key和sqlite3_rekey,可以通過實現這兩個介面來達到加密的目的。        如何加密,已經有很多文章描述,可以參考:《SQLite 資料庫加密的一種解決方案》        我這裡要說的是這種方法的缺陷和改進的方法(測試sqlite版本v3.5.6);加密函數的簡要說明:       

SQLite與SQL差異 top和limit的使用給我帶來的困惑

一、常見問題匯總  1 TOP  這是一個大家經常問到的問題,例如在SQLSERVER中可以使用如下語句來取得記錄集中的前十條記錄:  [pre]SELECT TOP 10 * FROM [index] ORDER BY indexid DESC;[/pre]但是這條SQL語句在SQLite中是無法執行的,應該改為:  [pre]SELECT * FROM [index] ORDER BY indexid DESC limit 0,10;[/pre]其中limit 0,10表示從第0條記錄開始,

使用sqlite的檔案匯入匯出功能

最近有個機會,從access的mdb檔案,通過DB_CreateSqlE.exe轉成sql語句,在sql08裡產生資料庫。突然有個想法,不如從mdb檔案產生sqlite db了,索性就找起資料來:mdbview.exe 可以產生csv檔案(注意另存新檔utf-8格式),那麼這樣就方便了,使用sqlite的import功能,就可以匯入了,呵呵。具體命令如下:匯入命令: .importsqlite> .import 檔案名稱 表名注1: 不要忘了開頭的點注2: 這條語句不能用分號結束.

SQLite資料庫的加密

1、建立空的SQLite資料庫。//資料庫名的尾碼你可以直接指定,甚至沒有尾碼都可以//方法一:建立一個空sqlite資料庫,用IO的方式FileStream fs = File.Create(“c:\\test.db“);//方法二:用SQLiteConnectionSQLiteConnection.CreateFile(“c:\\test.db“);建立的資料庫是個0位元組的檔案。2、建立加密的空SQLite資料庫//建立一個密碼為password的空的sqlite資料庫SQLiteConn

SQLite資料庫的基本操作方法

SQLite資料庫採用了模組化設計,由8個獨立的模組構成,這些獨立模組又構成了三個主要的子系統,模組將複雜的查詢過程分解為細小的工作進行處理其核心大約有3萬行標準C代碼,模組化的設計使這些代碼更加易於理解SQLite的架構模型圖如下:介面:由SQLite API組成,因此無論是應用程式、指令碼,還是庫檔案,最終都是通過介面與SQLite互動虛擬機器:SQLite資料庫體繫結構中最核心的部分是虛擬機器,也稱為虛擬資料庫引擎(Virtual Database

Android開發中的SQLite交易處理,即beginTransaction()方法…

使用SQLiteDatabase的beginTransaction()方法可以開啟一個事務,程式執行到endTransaction() 方法時會檢查事務的標誌是否為成功,如果程式執行到endTransaction()之前調用了setTransactionSuccessful() 方法設定事務的標誌為成功則提交事務,如果沒有調用setTransactionSuccessful()

總頁數: 95 1 .... 42 43 44 45 46 .... 95 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.