aSQLite+ 数据库工具包

程序名称:aSQLite+

授权协议: Apache

操作系统: Android

开发语言: Java

aSQLite+ 介绍

asqlite+ 是一个小巧的数据库工具包,正如其名字的意思,定位于为Android
sqlite数据库添加一些实用的功能。提供相当多便利的方法帮助开发人员拼接和执行增删改查的sql语句。

Android的核心类库也提供了一些生成sql语句,执行sql操作的工具类,但基本上都不太实用,体现在方法的签名众多,调用后仍然到开发者做游标关闭数据库关闭等非业务逻辑的操作。

假设你想生成以下的一条sql语句:

SELECT product_id, product_name FROM Products WHERE price >= 10 ORDER BY price DESC LIMIT 10

如果使用Android sqlite类库来实现,大致写法如下:

String sql = android.database.sqlite.sqliteQueryBuilder.buildQueryString(false,
        "Products", new String[]{"product_id", "product_name"}, "price >= 10",
        null, null, "price DESC", "10");

当然,还有ORM或直接用”+”操作符连接各个子句的字符串拼接方法。个人认为,在中小型的Android应用中使用ORM纯属杀鸡用牛刀,里面的反射操作也会对主线程产生性能影响。至于传统的用”+”拼接字符串,更是增大开发与维护的成本。那,以上的sql如果使用asqlite+将会是如何做?

Statement statement = QueryStatement.produce("product_id", "product_name")
        .from("Products").where("price").egt(10).orderBy("price").desc().limit(10);
String sql = statement.toString();

asqlite+通过将每个sql关键字或子句映射为方法,基本覆盖了全部的语法,实现sql的简易拼接,使代码更清晰易懂,便于维护,大大简化了sql的构造。开发者可以通过github上的众多示例查看其完善的功能

另外,asqlite+实现了一个名为DBOverseer.java的类,用于执行生成sql语句,使得开发者可以用两三行以内的代码实现提取整数、字符串、列表、分类列表、反射实例,执行插入、更新,批量操作。

项目内提供详细的代码注释,外加覆盖所有功能的测试用例,还有Maven及jar包等不同的集成方式可供选择。欢迎开发者试用并提供测试意见。

aSQLite+ 官网

https://github.com/vince-styling/aSQLitePlus-android

相关编程语言

SchemaCrawler提供一组用于增强标准JDBC Metadata的...
ER Master 是一个用于设计ER模型图的Eclipse插件。提...
Eclipse下用于画数据库ER图的插件,主要特性如下: ...
PowerDesigner 是Sybase的企业建模和设计解决方案,...
Mogwai ERDesigner NG是一个实体关系建模工具类似于...
Power*Architect 是一个数据建模工具,主要用在数据...