Android SQLite 資料存放區

來源:互聯網
上載者:User

SQLite是一個輕量級的資料庫,在android上就是使用了該資料庫,一個資料庫檔案即代表了一個資料庫,sql文法和mysql基本一樣吧,表達方式不同而已

獲得SQLiteDatabase 對象

SQLiteDatabase的方法

static SQLiteDatabase openDatabase(String path,SQLiteDatabase.CursorFactory factory,int flags)

e:  SQLiteDatabase db = SQLiteDatabase.openDatabase(path,factory,flags);  //即開啟path代表的路徑檔案

static SQLiteDatabase openOrCreateDatabase(File file,SQLiteDatabase.CursorFactory factory)

e:  SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(mFile,factory);    //即開啟mFile對應的資料庫檔案啦,如果該檔案不存在則建立一個

static SQLiteDatabase openOrCreateDatabase(String path,SQLiteDatabase.CursorFactory factory);

e:  SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabaes(mPath,factory);    //即開啟mPath對應的資料庫檔案了,如果該檔案不存在則建立一個

======================================================================================================

SQLiteDatabase提供了操作資料庫的幾個方法

execSQL(String sql,Object[] objs);  //帶預留位置的執行sql語句

exexSQL(String sql);       //直接執行sql語句

insert(String table_name, String nullColumn, ContentValues values);  //執行sql插入語句

delete(String table_name, String where,String[] whereArgs);      //刪除

update(String table_name, ContentValues values, String where, String[] whereArgs);  //更新

 

for example:

name age
admin   20

 

db.execSQL("select * from table_name where id > ?", new int[] {10});  //?表示帶預留位置的,預留位置要和後面的數群組類型一致,順序一致

db.execSQL("select * from table_name where id > 10")  //和第一條句子一樣   相當於 mysql 語句中執行  select * from table_name where id > 10;

似乎只要用execSQL(xc);這句話就基本解決了所有的需要了...增刪改查...

 

 

ContentValues values = new ContentValues();   

values.put("name","admin");  

values.put("age","20");        //values.put(columnName,value);==>Map.put(key,value);

db.insert(table_name,null,values);  //在table_name表中插入記錄,列名為name = 值admin  age = 20

//等價於 insert into table_name (name,age) values ("admin",20);

 

 

db.delete("table_name","name like",new String[] {"a%"});    //刪除name列值以a開頭的一行記錄 ==>   delete table_name where name like "a%";

 

values.put("age","25");

db.update("table_name",values,"age =",new String[] ("20");   //更新age = 20 的記錄,修改的值放在values中  ==>update table_name set age = 25 where age  =20;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.