精品一区二区三区无码视频_国产三区在线视频_日韩高清第一页_污污污污污污www网站免费_女女百合国产免费网站_全黄性性激高免费视频_欧美成人三级在线播放_亚洲综合色在线观看_国产日产欧美视频_日韩精品视频网址_欧美h视频在线观看_日韩五码在线观看

找軟件用軟件,就到華軍軟件園!

您好,如有軟件收錄需求,請將軟件打包,并附上軟件名稱、軟件介紹、軟件相關截圖、軟件icon、軟著、營業(yè)執(zhí)照(個人沒有營業(yè)執(zhí)照請?zhí)峁拈_發(fā)者身份證正反面以及手持身份證本人照片),發(fā)送至郵箱

https://user.onlinedown.net/login

掃碼添加企業(yè)微信

如有產品建議或問題反饋,歡迎告訴我們,您的意見是我們進步的動力!

Sqlite工具(SqliteStudio)

Sqlite工具(SqliteStudio)

3.1.1 綠色中文版 華軍軟件園
二維碼
軟件大小:14MB
軟件語言:簡體中文
下載次數(shù):0次
更新時間:2024-12-30
軟件版本:3.1.1 綠色中文版
軟件分類:數(shù)據(jù)庫類
軟件類型:國產軟件
運行環(huán)境:Win All
軟件授權:免費軟件
殺毒檢測:
無插件 360通過 金山通過
軟件評分:

軟件介紹 相關專題 常見問題 下載地址

基本簡介
Sqlite工具(SqliteStudio)段首LOGO
SqliteStudio是一款 Sqlite數(shù)據(jù)庫可視化工具,是使用Sqlite數(shù)據(jù)庫開發(fā)應用的必備軟件,軟件無需安裝,下載后解壓即可使用,很小巧但很了用,綠色中文版本。比起其它SQLite管理工具,我喜歡用這個。很方便易用,不用安裝的單個可執(zhí)行文件,支持中文。
相似軟件
版本說明
軟件地址

SQLiteStudio 是一個跨平臺的 SQLite 數(shù)據(jù)庫的管理工具,采用 Tcl 語言開發(fā)。

 

SQLiteStudio的特色:

功能完善的sqlite2和sqlite3工具,視圖編碼支持utf8。
支持導出數(shù)據(jù)格式:csv、html、plain、sql、xml,
可同時打開多個數(shù)據(jù)庫文件
支持查看和編輯二進制字段

SqliteStudio怎么用?

使用“sqlitestudio”打開(也可以使用其它sqlite可視化工具,個人習慣使用該工具,多語言小巧無需安裝)

1、打開sqlitestudio ”數(shù)據(jù)庫“-”添加數(shù)據(jù)庫“

Sqlite工具(SqliteStudio)截圖

2、選擇導出的那個數(shù)據(jù)庫文件直接打開即可。

Sqlite工具(SqliteStudio)截圖

3、在sqlitestudio 可以創(chuàng)建和修改表也可以執(zhí)行SQL語句基本可以滿足常用需求

在sqlitestudio 導出表數(shù)據(jù)直接右鍵”導出表“ 默認格式CSV文件

Sqlite工具(SqliteStudio)截圖

4、導入表數(shù)據(jù):

右鍵表名“import data to table”

Sqlite工具(SqliteStudio)截圖

SqliteStudio在Android程序中使用已有的SQLite數(shù)據(jù)庫

1. 準備SQLite database文件

    假設你已經創(chuàng)建了一個sqlite數(shù)據(jù)庫,我們需要對其進行一些修改。

   (譯者注:這里原文是推薦了一個SQLite數(shù)據(jù)庫管理軟件,這個我覺得可以隨自己的喜好,最Windows下面有多款可視化的SQlite數(shù)據(jù)庫管理軟件,可以方便的讀取,編輯數(shù)據(jù)庫,例如我用的是sqlitestudio

打開數(shù)據(jù)庫,添加一個新的table “android_metadata",插入一行數(shù)據(jù),具體的SQL如下:

[sql] view plaincopyprint?在CODE上查看代碼片派生到我的代碼片

CREATE TABLE "android_metadata" ("locale" TEXT DEFAULT 'en_US')  

INSERT INTO "android_metadata" VALUES ('en_US')  

   (譯者注:上面兩行是表明需要進行的操作,具體可以直接在sqlitesstudio中完成)

    然后你需要對你數(shù)據(jù)表格的primary id 列重命名為 “_id”,這樣Adroid會知道怎么對id列進行綁定,你可以很容易的在SQlite數(shù)據(jù)庫管理軟件中進行列編輯。

    這兩步之后,你的sqlite數(shù)據(jù)庫文件就準備好了。

  (譯者注:這里我保留了id列,即沒有對其進行重命名,測試證明也是沒有問題的)

2. 在你的Android程序中復制,打開以及訪問數(shù)據(jù)庫

    現(xiàn)在把你上一步準備好的數(shù)據(jù)庫文件放在“assets”文件夾下面,然后通過繼承 SQLiteOpenHelper類來創(chuàng)建一個Database Helper類,

你的DataBaseHelper類大致可以如下:

public class DataBaseHelper extends SQLiteOpenHelper{  

    //The Android's default system path of your application database.  

    private static String DB_PATH = "/data/data/YOUR_PACKAGE/databases/";  

    private static String DB_NAME = "myDBName";  

    private SQLiteDatabase myDataBase;   

    private final Context myContext;  

    /** 

     * Constructor 

     * Takes and keeps a reference of the passed context in order to access to the application assets and resources. 

     * @param context 

     */  

    public DataBaseHelper(Context context) {  

        super(context, DB_NAME, null, 1);  

        this.myContext = context;  

    }     

  /** 

     * Creates a empty database on the system and rewrites it with your own database. 

     * */  

    public void createDataBase() throws IOException{  

        boolean dbExist = checkDataBase();  

        if(dbExist){  

            //do nothing - database already exist  

        }else{  

            //By calling this method and empty database will be created into the default system path  

               //of your application so we are gonna be able to overwrite that database with our database.  

            this.getReadableDatabase();  

            try {  

                copyDataBase();  

            } catch (IOException e) {  

                throw new Error("Error copying database");  

            }  

        }  

    }  

    /** 

     * Check if the database already exist to avoid re-copying the file each time you open the application. 

     * @return true if it exists, false if it doesn't 

     */  

    private boolean checkDataBase(){  

        SQLiteDatabase checkDB = null;  

        try{  

            String myPath = DB_PATH + DB_NAME;  

            checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);  

        }catch(SQLiteException e){  

            //database does't exist yet.  

        }  

        if(checkDB != null){  

            checkDB.close();  

        }  

        return checkDB != null ? true : false;  

    }  

    /** 

     * Copies your database from your local assets-folder to the just created empty database in the 

     * system folder, from where it can be accessed and handled. 

     * This is done by transfering bytestream. 

     * */  

    private void copyDataBase() throws IOException{  

        //Open your local db as the input stream  

        InputStream myInput = myContext.getAssets().open(DB_NAME);  

        // Path to the just created empty db  

        String outFileName = DB_PATH + DB_NAME;  

        //Open the empty db as the output stream  

        OutputStream myOutput = new FileOutputStream(outFileName);  

        //transfer bytes from the inputfile to the outputfile  

        byte[] buffer = new byte[1024];  

        int length;  

        while ((length = myInput.read(buffer))>0){  

            myOutput.write(buffer, 0, length);  

        }  

        //Close the streams  

        myOutput.flush();  

        myOutput.close();  

        myInput.close();  

    }  

    public void openDataBase() throws SQLException{  

        //Open the database  

        String myPath = DB_PATH + DB_NAME;  

        myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);  

    }  

    @Override  

    public synchronized void close() {  

            if(myDataBase != null)  

                myDataBase.close();  

            super.close();  

    }  

    @Override  

    public void onCreate(SQLiteDatabase db) {  

    }  

    @Override  

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {  

    }  

        // Add your public helper methods to access and get content from the database.  

       // You could return cursors by doing "return myDataBase.query(....)" so it'd be easy  

       // to you to create adapters for your views.  

}  

    就這樣。

    現(xiàn)在你可以創(chuàng)建一個新的DataBaseHelper實例,然后調用createDataBase(),然后再調用openDataBase()方法,記住修改DB_PATH字符串中“YOUR_PACKAGE”為你真正的package名稱(也就是說com.examplename.myapp)

以下是示范代碼:

[java] view plaincopyprint?在CODE上查看代碼片派生到我的代碼片

...  

       DataBaseHelper myDbHelper = new DataBaseHelper();  

       myDbHelper = new DataBaseHelper(this);  

       try {  

        myDbHelper.createDataBase();  

    } catch (IOException ioe) {  

        throw new Error("Unable to create database");  

    }  

    try {  

        myDbHelper.openDataBase();  

    }catch(SQLException sqle){  

        throw sqle;  

    }  

       ...  

常見問題

Sqlite工具(SqliteStudio)

Sqlite工具(SqliteStudio) 3.1.1 綠色中文版

關閉
精品一区二区三区无码视频_国产三区在线视频_日韩高清第一页_污污污污污污www网站免费_女女百合国产免费网站_全黄性性激高免费视频_欧美成人三级在线播放_亚洲综合色在线观看_国产日产欧美视频_日韩精品视频网址_欧美h视频在线观看_日韩五码在线观看
国产欧美自拍| 国产乱人伦精品一区| 久久中文亚洲字幕| 久久国产三级精品| 美女尤物久久精品| 另类中文字幕国产精品| 欧美国产中文高清| 亚洲a级精品| 国产视频一区欧美| 亚洲精品在线影院| 国产精品宾馆| 亚洲aⅴ网站| 神马午夜在线视频| 激情久久99| 日本久久二区| 亚洲欧美日韩专区| 午夜久久久久| 欧美+日本+国产+在线a∨观看| 成人一区而且| 久久免费精品| 免费视频一区二区三区在线观看| 日韩欧美高清一区二区三区| 国产精品视区| 亚洲作爱视频| 久久国产精品亚洲77777| 日韩亚洲在线| 久久国产精品99国产| 欧美日韩日本国产亚洲在线| 99久久夜色精品国产亚洲1000部| 国产66精品| 日韩国产一区| 久久婷婷久久| 欧美日韩国产一区二区三区不卡| 久久国产中文字幕| 99视频精品免费观看| 精品一区免费| 免费美女久久99| 亚洲免费福利一区| 日韩av中文字幕一区二区| 91在线成人| 精品视频一区二区三区在线观看| 91麻豆国产自产在线观看亚洲| 精品久久久久中文字幕小说| 中文字幕色婷婷在线视频| 久久久久久久久久久妇女 | 欧美久久香蕉| 日本一区二区三区中文字幕| 亚洲深夜福利在线观看| 91麻豆精品激情在线观看最新| 欧美精品中文字幕亚洲专区| 精品国产一区二区三区2021| 色天使综合视频| 免费在线视频一区| 国产精品久久久一区二区| 色欧美自拍视频| 久久国产免费| 热久久国产精品| 免费精品一区| 欧美日韩水蜜桃| 日韩精品视频网| 不卡一二三区| 午夜亚洲精品| 97国产精品| 午夜一级在线看亚洲| 国产精品hd| 欧美a级片一区| 日韩av中文字幕一区| 日韩大片在线播放| 日韩欧美中文字幕一区二区三区 | 国产精品日韩精品中文字幕| 色偷偷色偷偷色偷偷在线视频| 激情六月综合| 国产精品一区二区av日韩在线 | 不卡一二三区| 亚洲三级国产| 日本国产精品| 热久久久久久| 国产精品日本| av资源新版天堂在线| 视频一区免费在线观看| 日韩欧美一区二区三区免费看| 综合欧美亚洲| 午夜精品婷婷| 色婷婷狠狠五月综合天色拍| 美女久久久久久| 综合激情在线| 亚洲精品在线观看91| 在线中文字幕播放| 国产视频一区二| 免费在线观看日韩欧美| 九九在线精品| 肉色欧美久久久久久久免费看| 国产欧美一区二区精品久久久| 国产女优一区| 久久久久亚洲| 欧美www视频在线观看| 91九色综合| 视频一区二区欧美| 欧美91视频| 在线亚洲人成| 精品三级久久久| 国产精品a级| 国产精品一区毛片| 日本aⅴ亚洲精品中文乱码| 亚洲综合丁香| 午夜在线视频一区二区区别| 婷婷综合激情| 午夜国产精品视频| 99热国内精品| 免费在线小视频| 电影亚洲精品噜噜在线观看| 91视频精品| 免费在线小视频| 午夜精品成人av| 亚洲人成在线网站| 久久美女精品| 91精品福利| 久久亚洲风情| 日韩国产欧美在线播放| 日本欧美一区二区在线观看| 日韩在线a电影| 日韩三级视频| 欧美国产日韩电影| 激情中国色综合| а√天堂中文在线资源8| 国产资源在线观看入口av| 国产一区2区| 欧美黄色网页| 亚洲97av| 亚洲综合日韩| 亚洲va在线| 国产一卡不卡| 日韩中文字幕一区二区高清99| 91午夜精品| 亚洲18在线| 免费人成在线不卡| 日本成人中文字幕在线视频| 欧美日韩18| 麻豆久久久久久久| 成人小电影网站| 最新日韩欧美| 亚洲精品99| 国产欧美自拍一区| 日韩一区二区久久| 激情偷拍久久| 日韩中文字幕亚洲一区二区va在线 | 久久久久免费| 激情六月综合| 视频一区视频二区在线观看| av亚洲一区二区三区| 国产一区2区| 三级欧美在线一区| 欧美在线影院| 中文字幕在线高清| 日韩欧美看国产| 中文字幕在线视频网站| 一区视频在线| 麻豆视频久久| 91偷拍一区二区三区精品| 久久国产成人| 日韩不卡一二三区| 97久久亚洲| 久久精品影视| 国产精品网址| 国产精品av久久久久久麻豆网| 欧美日韩国产传媒| 久久精品国产在热久久| 国产精品一区二区精品视频观看| 国产亚洲欧美日韩精品一区二区三区 | 欧美1区免费| 激情久久五月| 日本成人精品| 日韩不卡免费高清视频| 在线亚洲成人| 日韩久久精品网| 欧美成人精品一级| 婷婷视频一区二区三区| 久久久影院免费| 国产资源在线观看入口av| 国产情侣久久| 日韩精品五月天| 视频在线观看一区二区三区| 人人草在线视频| 麻豆国产精品一区二区三区| 一区二区91| 在线视频亚洲| 蜜桃国内精品久久久久软件9| 久久免费福利| 日本在线视频一区二区| 不卡一区综合视频| 91精品国产调教在线观看| 久久一区国产| 国产精品久久久亚洲一区| 亚洲欧洲专区| 综合激情一区| 亚洲激情国产| 欧美 日韩 国产一区二区在线视频| 久久精品国产免费| 国产免费久久| 欧美日韩99|