技术开发 频道

Winform分页控件更新之集成Sqlite分页

  【IT168 技术】在Winform开发中,一直离不开分页处理,好的分页控件封装,能为开发节省很多时间和繁琐工作,对分页控件一直的改进和完善,也是我的兴趣之一。分页控件一直都有一些小的更新,不过基本上已能满足大多数的使用场景了。有一天,一个朋友告诉我:我们项目用的是Sqlite数据库做项目,这个分页控件能支持实现分页吗?由于分页控件虽然不直接访问数据,不过需要根据不同的数据库来构造不同的分页语句,因为之前听说过但没怎么研究过Sqlite数据库,当然也没有提供支持了。

  既然朋友需要,那就得研究下,并提供相关的支持,经过一番小修改,即可完成内容的Sqlite分页支持了。在给出相关的分页实现例子之前,我们介绍一下,为什么项目使用Sqlite而不是使用Access数据库,他们之间有那些特点。

  1、Access特点

  我们做小项目的时候特别是小的MIS系统一般也都要用数据库来保存数据,大部分的小系统都是用Access数据库,Access使用上确实非常方便,也方便对数据进行管理维护等优点,复制过去即可使用。但其实Access数据库本身也存在很多的问题:性能不行;数据不安全,用户可以直接用Access打开数据库文件进行数据修改,即使加密后都可以直接破解;Access的数据量一大,文件本身的体积就异常庞大;Access数据库文件很容易损坏等。

  2、SQLite特点

  SQLite是一个小型的C程序库,实现了独立的,可嵌入的,零配置的SQL数据库引擎,SQLite用的非常广泛,Web应用也都在用它,PHP5内置了SQLite的扩展,所以SQLite是桌面轻量级数据库的首选。

  (1)事务操作是原子,一致,孤立,并且持久的(ACID),即使在系统崩溃和电源故障之后。

  (2)零配置——不需要安装和管理。

  (3)实现了绝大多数SQL92标准。

  (4)整个数据库存储在一个单一的文件中。

  (5)数据库文件可以在不同字节序的机器之间自由地共享。

  (6)支持最大可达2T的数据库。 (241 字节)

  (7)字符串和BLOB类型的大小最大可达 2G 字节(231字节)。

  (8)小的代码: 完整配置的少于250KB,忽略一些可选特性的少于150KB。

  (9)在大多数常见操作上比流行的客户/服务器数据库引擎更快。

  (10)简单,易于使用的API。

  (11)内建TCL绑定。 另外提供可用于许多其他语言的绑定。

  (12)具有良好注释的源代码,95%经过测试。

  (13)独立:没有外部依赖。

  (14)源代码位于公共域。 可用于任何用途。

  朋友介绍操作SQLite使用工具SQLiteSpy,实际上这个工具不支持数据库(如Access数据库)的导入,偶然发现还有SQLite Developer这样一个工具,管理上非常方便,操作图如下所示,使用发现功能比较丰富,支持对表字段定义的直接修改,编辑数据、Sql查询、创建、压缩、备份数据库等,对中文支持也不错。

Winform分页控件更新之集成Sqlite分页

Winform分页控件更新之集成Sqlite分页

Winform分页控件更新之集成Sqlite分页

  言归正题,介绍完毕一些SQLite的使用后,继续介绍分页控件如何实现SQLite的分页处理吧。

  普通版本的分页控件呈现效果如下所示。

Winform分页控件更新之集成Sqlite分页

  DevExpress样式版本的分页控件效果如下所示(均支持SQLite分页)

Winform分页控件更新之集成Sqlite分页

 

0