日期:2014-05-17  浏览次数:21037 次

跨数据库解决方案CowNewSQL发布新版本
CowNewSQL发布新版本了,这个版本的推出标志着CowNewSQL能正式应用于开发实际了。
本版更新列表:
1、增加了对Create   Table、Drop   Table、Create   Index和DropIndex的支持。

2、修改了N多Bug,使用从各方收集到的近百条各种复杂的SQL语句全面测试通过!!!

3、完善开发文档,语法规则、SQL例子、函数列表、使用方法一应俱全。

4、支持JDK1.4或更高版本。


下载地址:http://www.cownew.com/download/  


CowNewSQL简介:

              由于种种原因,各个数据库系统的SQL语句语法以及支持的函数都不尽相同,这造成了如下两个问题:(1)使得系统在多个不同数据库之间移植变得非常困难,特别是需要维护多个数据库版本的时候;(2)开发人员必须对各种数据库的语法差异非常了解,这加大了开发难度。

              虽然Hibernate通过HQL等技术部分的解决了跨数据库移植的问题,但是在对性能要求比较高的场合还是需要直接使用SQL语句访问数据库的,在这种情况下如何编写能被不同数据库支持的SQL语句就成了。目前解决这种差异的最常用的技术就是SQL语句翻译,使用SQL翻译器可以将SQL语句翻译为在不同的数据库中支持的特定平台的SQL语句。CowNewSQL就是这样一款产品。

              CowNewSQL简化了跨数据库产品的开发,比如取当前日期在MSSQL中是“SELECT   GETDATE()”,在MYSQL中是“SELECT   NOW()”,在Oracle中是“SELECT   SYSDATE   FROM   DUAL”,使用CowNewSQL以后您只要使用“SELECT   NOW()”,那么CowNewSQL就会为您自动将其翻译为对应数据库平台支持的SQL语句,而且CowNewSQL的兼容性也非常好,比如“SELECT   NOW()”写成“SELECT   GETDATE()”同样可以被正确的翻译;取数据库前10条记录,在MSSQL中是“Select   top   10   from   T_1”、在MYSQL中是“SELECT     LIMIT   0,   10   ”、在Oracle中是“SELECT     FROM   DUAL   WHERE   ROWNUM   <=   10”,使用CowNewSQL以后您只要使用“Select   top   10   from   T_1”,那么CowNewSQL就会为您自动将其翻译为对应数据库平台支持的SQL语句。

        CowNewSQL还通过变通的方式对目标数据库不直接支持的语法进行了支持。比如MYSQL是不支持“select   *   from   t1   where   fid   in(select   fid   from   t2   limit   0,5)”这样在子查询中的Limit语句的,CowNewSQL通过将子查询进行二次结果集包装的方式巧妙的对其进行了支持,“delete   from   T_SaleInvoice   where   FId   in(select   top   5   FParentId   from   T_SaleInvoiceDetails)”通过CowNewSQL的翻译以后就成了“DELETE   FROM   T_SaleInvoice   WHERE   FId   IN   (select   *   from(SELECT   FParentId   FROM   T_SaleInvoiceDetails   LIMIT   0,   5   )   t_temp_sub)”这样被MYSQL支持的语法了;MYSQL中没有提供计算两个日期之间月份差异的函数,CowNewSQL通过组合其他日期函数的方式模拟了这个函数,这样使用者只要使用MONTHS_BETWEEN函数即可了,无需关心内部的差异。

CowNewSQL支持如下几种类型的SQL语句:CreateTable/DropTable/CreateIndex/DropIndex/Select/Insert/Delete/Update;支持子查询、Join、Union等高级的SQL特性;支持日期(包括取当前日期、从日期中提取任意部分、计算日期差异、日期前后推算等)、数学(包括取绝对值、取PI值、四舍五入、对数计算、随机数等)、字符串(包括取子字符串、取字符串长度、字符串截断、大小写转换等)、基本数据处理(包括数字字符串互转、日期转字符串、非空判断等)等函数。

下载地址:http://www.cownew.com/download/  



------解决方案--------------------
接分~