最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android SQLite數(shù)據(jù)庫中的表詳解

 更新時(shí)間:2017年01月20日 09:01:39   投稿:lqh  
這篇文章主要介紹了Android SQLite數(shù)據(jù)庫中的表詳解的相關(guān)資料,這里附有實(shí)例代碼,需要的朋友可以參考下

Android SQLite數(shù)據(jù)庫

前言

以前寫PHP的時(shí)候,內(nèi)置了print_r()和var_dump()兩個(gè)函數(shù)用于打印輸出任意類型的數(shù)據(jù)內(nèi)部結(jié)構(gòu),現(xiàn)在做Android的開發(fā),發(fā)現(xiàn)并沒有這種類似的函數(shù),對(duì)于數(shù)據(jù)庫的查看很不方便,于是就寫了一下查看數(shù)據(jù)庫表的方法代碼。

代碼實(shí)現(xiàn)

import java.util.Arrays;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class SecondActivity extends Activity {

  public static final String TAG = "Debug Info";

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    ((Button)findViewById(R.id.btnQue)).setOnClickListener(new OnClickListener() {

      @Override
      public void onClick(View v) {
        MyDatabaseHelper dbhelper = new MyDatabaseHelper(SecondActivity.this, "BookStore.db", null, 1);
        SQLiteDatabase db = dbhelper.getWritableDatabase();

        //核心區(qū)
        //讀取系統(tǒng)表 sqlite_master
        String sql = "select * from sqlite_master";
        Cursor cursor = db.rawQuery(sql, null);

        //打印表的所有列名
        Log.i(TAG, Arrays.toString(cursor.getColumnNames()));

        //打印當(dāng)前數(shù)據(jù)庫中的所有表
        if (cursor.moveToFirst()) {
          do {
            String str = "";

            for (String item : cursor.getColumnNames()) {
              str += item + ": " + cursor.getString(cursor.getColumnIndex(item)) + "\n";
            }

            Log.i(TAG, str);

          } while (cursor.moveToNext());
        }
      }
    });
  }

}

功能擴(kuò)展

查看表是否存在

public Boolean tableIsExist(SQLiteDatabase db, String tableName){
  boolean result = false;
  Cursor cursor = null;

  if(tableName == null){
    return result;
  }

  String sql = "select count(*) from sqlite_master where type ='table' and name ='"+tableName.trim()+"'";
  cursor = db.rawQuery(sql, null);

  if(cursor.moveToNext()){
    if(cursor.getInt(0) > 0){
      result = true;
    }
  }

  return result;
}  

查看數(shù)據(jù)庫中有哪些表

public ArrayList<String> tablesInDB(SQLiteDatabase db){
  ArrayList<String> list = new ArrayList<String>();
  String sql = "select name from sqlite_master where type='table'";
  Cursor cursor = db.rawQuery(sql, null);

  if (cursor.moveToFirst()) {
      do {
        list.add(cursor.getString(0));
      } while (cursor.moveToNext());
    }

  return list;

}

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • android 右滑返回的示例代碼

    android 右滑返回的示例代碼

    本篇文章主要介紹了android 右滑返回的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • 使用反射機(jī)制控制Toast的顯示時(shí)間

    使用反射機(jī)制控制Toast的顯示時(shí)間

    這篇文章主要為大家詳細(xì)介紹了使用反射機(jī)制控制Toast的顯示時(shí)間,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Android 吸入動(dòng)畫效果實(shí)現(xiàn)分解

    Android 吸入動(dòng)畫效果實(shí)現(xiàn)分解

    如何在Android上面實(shí)現(xiàn)一個(gè)類似的效果。先看看我實(shí)現(xiàn)的效果圖,我們利用了Canvas.drawBitmapMesh()方法,具體實(shí)現(xiàn)代碼如下,感興趣的朋友可以參考下哈
    2013-06-06
  • RxJava+Retrofit+OkHttp實(shí)現(xiàn)多文件下載之?dāng)帱c(diǎn)續(xù)傳

    RxJava+Retrofit+OkHttp實(shí)現(xiàn)多文件下載之?dāng)帱c(diǎn)續(xù)傳

    本篇文章主要介紹了RxJava+Retrofit+OkHttp實(shí)現(xiàn)多文件下載之?dāng)帱c(diǎn)續(xù)傳,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • android操作XML的幾種方法總結(jié)

    android操作XML的幾種方法總結(jié)

    在android中,操作xml文件,一般有幾種方式:SAX操作,Pull操作,DOM操作等。其中DOM的方式,可能是大家最熟悉的,也是符合W3C標(biāo)準(zhǔn)的
    2013-10-10
  • 如何在Android Studio下進(jìn)行NDK開發(fā)

    如何在Android Studio下進(jìn)行NDK開發(fā)

    這篇文章主要介紹了如何在Android Studio下進(jìn)行NDK開發(fā),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 詳解Android aidl的使用方法

    詳解Android aidl的使用方法

    AIDL是Android中IPC(Inter-Process Communication)方式中的一種,AIDL是Android Interface definition language的縮寫。這篇文章主要介紹了Android aidl的使用方法,感興趣的朋友跟隨小編一起看看吧
    2020-07-07
  • Android 中IntentFilter的匹配規(guī)則實(shí)例詳解

    Android 中IntentFilter的匹配規(guī)則實(shí)例詳解

    這篇文章主要介紹了Android 中IntentFilter的匹配規(guī)則實(shí)例詳解的相關(guān)資料,希望通過本文大家能了解掌握IntentFilter的匹配規(guī)則問題,需要的朋友可以參考下
    2017-09-09
  • Android攔截外撥電話程序示例

    Android攔截外撥電話程序示例

    這篇文章主要介紹了Android攔截外撥電話的示例,大家參考使用吧
    2013-11-11
  • 淺析Android手機(jī)衛(wèi)士自定義控件的屬性

    淺析Android手機(jī)衛(wèi)士自定義控件的屬性

    這篇文章主要介紹了淺析Android手機(jī)衛(wèi)士自定義控件的屬性,本文介紹的非常詳細(xì)具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-04-04

最新評(píng)論

常山县| 安陆市| 江津市| 获嘉县| 潮州市| 阜康市| 常熟市| 鄢陵县| 韶山市| 铜鼓县| 介休市| 开鲁县| 板桥市| 东光县| 晋宁县| 岳西县| 永吉县| 奇台县| 高青县| 嵊州市| 女性| 桃源县| 饶阳县| 南澳县| 柏乡县| 庆云县| 盐池县| 清远市| 天水市| 河池市| 准格尔旗| 盐边县| 澜沧| 夏津县| 遂宁市| 沙雅县| 崇义县| 息烽县| 秦皇岛市| 睢宁县| 开封县|