基于XML文件集群的数据库:GeneGrid-DataBases(V1.0)

来源:互联网 发布:php字符串转义函数 编辑:程序博客网 时间:2024/05/17 07:40

正式再CSDN建立博客镜像,下面是我在自己的网站上的原文,才发布不到3小时。




下载文件  查看说明文档

今天我很高兴地宣布我的第二款作品,完全基于XML的数据库:GeneGrid-DataBases(V1.0)

它基于这样一个思想:以最简单的原理,按照 GUID-对应值的形式 把所有的数据都存储在XML文件群中。

原始文档发布地址:http://www.fssfans.com/blog.aspx?user=3&id=154552


它的缺点:这并不是一个关系式数据库,所以它不支持SQL语言,内在的数据存储结构中也不存在互相的关联。但是它的这个缺点也是它的优点之一:高效、简洁、平台扩展性强

它的优点

1:不需要安装、不需要加载服务、不需要设置IIS(对于很多使用虚拟主机的站长来说,这一点是致命伤痛)

2:同时支持运行在IIS上和运行在本地应用。

3:支持所有的平台应用。虽然目前仅仅运行在.Net平台下,但是它的基础架构是XML文件,所以在平台的移植上仅仅是我作为开发者的个人时间问题。而且,您现在就可以通过它的WEB服务功能,将它运行在您的J2EE、PHP、ASP、Mobile环境中,而不需要等待我开发好JAVA和PHP版本(当然,它们已经存在于我的计划中)

4:非常方便的数据合并,当您准备合并两套数据的时候,您需要做的仅仅是把XML数据文件复制在同一个文件夹下面即可,因为文件是以GUID来命名的,所以不会出现命名冲突和数据标签冲突。

5:它是基于文件集群的形式存放数据的,默认每个文件最大512K(并且您可以根据自己的机器性能来定制这个大小),系统会自动建立新的文件来保存更多的数据,所以,不用担心数据量增大后导致执行性能的下降。理论上,这个系统所能够容纳的数据量仅仅受限于您的磁盘空间大小。

6:原生支持JSON格式,为AJAX应用带来更强大的效率。

它默认支持:返回json数据格式、通过Ajax应用模式控制、基于Asp.Net的Web服务、以及在任何.Net程序(本地)中加载使用。

7:免费使用许可,无论使用在任何用途,它都是免费的,随便您赚的黑钱还是白钱都不关我事,我不会向您收取使用费用。

执行原理:

当您添加完成一个数据的时候,您会得到一个特殊的GUID序列号。您必须记住这个GUID,才能够保证以后可以查询到您刚才添加的数据。所以,您一旦丢失了某个数据的GUID序列号,您将很难再找到这条数据。

使用方法:

WEB应用:

1    把genegrid.dll放置到Bin文件夹中。

      保证站点根目录下存在data文件夹(存在文件夹即可,里面有没有其它文件无所谓)

      把genegrid_config文件夹复制到站点根目录下

      ajax.aspx、server.asmx、json.aspx三个文件可以放在任意目录中

2

      AJAX应用:

      查询单个数据:json.aspx?guid=某个数据的GUID值

      查询多个数据:json.aspx?guid=某个数据的GUID值&guid=某个数据的GUID值&guid=某个数据的GUID值&.............(任意多)

      以上两个办法都是以  {guid:guid值,value:数据值} 的形式返回JSON格式,主要应用AJAX中。

      写入:ajax.aspx?cmd=addNew&values=您的数据    (返回 true|false)

      更新:ajax.aspx?cmd=update&guid=某条数据的GUID&values=新值    (返回 true|false)

      (以上两条操作的values参数也可以通过POST来传递)

      删除:ajax.aspx?cmd=delete&guid=某条数据的GUID   (返回 true|false)

      WEB服务的使用方法大同小异,具体的说明可以参看server.asmx的自带文档。

   版本信息和版权声明:ajax.aspx?cmd=vol

项目加载:

      您可以通过不同的办法来将这个数据库集成到您的开发项目中,其一是通过WEB服务(具体的方法不在本文讨论范围),

      其二是加载DLL模块(.net):

      namespace genegrid

      dbOperate 类

      public Guid insert(string values); //添加数据,返回一个GUID类型值

      public string select(string id); //查找单一数据,参数是某数据的GUID

      public DataTable selects(string[] ids); //查找多个数据,参数GUID格式的String数组

      public bool delete(string id);  //删除数据,参数是某数据的GUID

      public bool update(string id,string values); //更新数据,参数是某数据的GUID、新的值。

设置文件:

      保存在genegrid_databases_data目录下的唯一一个文件,名字任意起,后缀名任意。本质是一个XML文件。

最后是版权声明:

      1.0版本属于免费版本,可免费任意使用在商业用途和非商业用途。虽然该套系统已经经过我的多项测试,但是毕竟个人能力有限,作为开发者本人的我对于使用该软件而产生的所有后果不负责。

      GeneGrid-DataBases V1.0 Build 001 © 2007 梁逸晨 kvspas@gmail.com

下载文件  查看说明文档


 
原创粉丝点击