SqliteStudio是一款Sqlite数据库可视化工具,是使用Sqlite数据库开发应用的必备软件,软件无需安装,下载后解压即可使用,很小巧但很了用,绿色中文版本。比起其它SQLite管理工具,我喜欢用这个。很方便易用,不用安装的单个可
Sqlite工具(SqliteStudio)软件特性
SqliteStudio是一款 Sqlite数据库可视化工具,是使用Sqlite数据库开发应用的必备软件,软件无需安装,下载后解压即可使用,很小巧但很了用,绿色中文版本。比起其它SQLite管理工具,我喜欢用这个。很方便易用,不用安装的单个可执行文件,支持中文。
SQLiteStudio 是一个跨平台的 SQLite 数据库的管理工具,采用 Tcl 语言开发。
SQLiteStudio的特色:
功能完善的sqlite2和sqlite3工具,视图编码支持utf8。支持导出数据格式:csv、html、plain、sql、xml,可同时打开多个数据库文件支持查看和编辑二进制字段
SqliteStudio怎么用?
使用“sqlitestudio”打开(也可以使用其它sqlite可视化工具,个人习惯使用该工具,多语言小巧无需安装)
1、打开sqlitestudio ”数据库“-”添加数据库“
2、选择导出的那个数据库文件直接打开即可。
3、在sqlitestudio 可以创建和修改表也可以执行SQL语句基本可以满足常用需求
在sqlitestudio导出表数据直接右键”导出表“ 默认格式CSV文件
4、导入表数据:
右键表名“import data to table”
SqliteStudio在Android程序中使用已有的SQLite数据库
1. 准备SQLite database文件
假设你已经创建了一个sqlite数据库,我们需要对其进行一些修改。
(译者注:这里原文是推荐了一个SQLite数据库管理软件,这个我觉得可以随自己的喜好,最Windows下面有多款可视化的SQlite数据库管理软件,可以方便的读取,编辑数据库,例如我用的是sqlitestudio
打开数据库,添加一个新的table “android_metadata",插入一行数据,具体的SQL如下:
[sql] view plaincopyprint?在CODE上查看代码片派生到我的代码片
CREATE TABLE "android_metadata" ("locale" TEXT DEFAULT 'en_US')
INSERT INTO "android_metadata" VALUES ('en_US')
(译者注:上面两行是表明需要进行的操作,具体可以直接在sqlitesstudio中完成)
然后你需要对你数据表格的primary id 列重命名为 “_id”,这样Adroid会知道怎么对id列进行绑定,你可以很容易的在SQlite数据库管理软件中进行列编辑。
这两步之后,你的sqlite数据库文件就准备好了。
(译者注:这里我保留了id列,即没有对其进行重命名,测试证明也是没有问题的)
2. 在你的Android程序中复制,打开以及访问数据库
现在把你上一步准备好的数据库文件放在“assets”文件夹下面,然后通过继承 SQLiteOpenHelper类来创建一个Database Helper类,
你的DataBaseHelper类大致可以如下:
public class DataBaseHelper extends SQLiteOpenHelper
/**
* Creates a empty database on the system and rewrites it with your own database.
* */
public void createDataBase() throws IOExceptionelse catch (IOException e)
}
}
/**
* 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()catch(SQLiteException e)
if(checkDB != null)
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
//Close the streams
myOutput.flush();
myOutput.close();
myInput.close();
}
public void openDataBase() throws SQLException
@Override
public synchronized void 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.
}
就这样。
现在你可以创建一个新的DataBaseHelper实例,然后调用createDataBase(),然后再调用openDataBase()方法,记住修改DB_PATH字符串中“YOUR_PACKAGE”为你真正的package名称(也就是说com.examplename.myapp)
以下是示范代码:
[java] view plaincopyprint?在CODE上查看代码片派生到我的代码片
...
DataBaseHelper myDbHelper = new DataBaseHelper();
myDbHelper = new DataBaseHelper(this);
try catch (IOException ioe)
try catch(SQLException sqle)
...