如鵬網 大學生計算機學習社區(qū)

          CowNew開源團隊

          http://www.cownew.com 郵件請聯(lián)系 about521 at 163.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            363 隨筆 :: 2 文章 :: 808 評論 :: 0 Trackbacks

          CowNewSQL發(fā)布新版本了,這個版本的推出標志著CowNewSQL能正式應用于開發(fā)實際了。
          本版更新列表:
          1、增加了對Create Table、Drop Table、Create Index和DropIndex的支持。

          2、修改了N多Bug,使用從各方收集到的近百條各種復雜的SQL語句全面測試通過?。。?/p>

          3、完善開發(fā)文檔,語法規(guī)則、SQL例子、函數(shù)列表、使用方法一應俱全。

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

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

          CowNewSQL簡介:

                 由于種種原因,各個數(shù)據(jù)庫系統(tǒng)的SQL語句語法以及支持的函數(shù)都不盡相同,這造成了如下兩個問題:(1)使得系統(tǒng)在多個不同數(shù)據(jù)庫之間移植變得非常困難,特別是需要維護多個數(shù)據(jù)庫版本的時候;(2)開發(fā)人員必須對各種數(shù)據(jù)庫的語法差異非常了解,這加大了開發(fā)難度。

                 雖然Hibernate通過HQL等技術部分的解決了跨數(shù)據(jù)庫移植的問題,但是在對性能要求比較高的場合還是需要直接使用SQL語句訪問數(shù)據(jù)庫的,在這種情況下如何編寫能被不同數(shù)據(jù)庫支持的SQL語句就成了。目前解決這種差異的最常用的技術就是SQL語句翻譯,使用SQL翻譯器可以將SQL語句翻譯為在不同的數(shù)據(jù)庫中支持的特定平臺的SQL語句。CowNewSQL就是這樣一款產品。

                 CowNewSQL簡化了跨數(shù)據(jù)庫產品的開發(fā),比如取當前日期在MSSQL中是“SELECT GETDATE()”,在MYSQL中是“SELECT NOW()”,在Oracle中是“SELECT SYSDATE FROM DUAL”,使用CowNewSQL以后您只要使用“SELECT NOW()”,那么CowNewSQL就會為您自動將其翻譯為對應數(shù)據(jù)庫平臺支持的SQL語句,而且CowNewSQL的兼容性也非常好,比如“SELECT NOW()”寫成“SELECT GETDATE()”同樣可以被正確的翻譯;取數(shù)據(jù)庫前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就會為您自動將其翻譯為對應數(shù)據(jù)庫平臺支持的SQL語句。

              CowNewSQL還通過變通的方式對目標數(shù)據(jù)庫不直接支持的語法進行了支持。比如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中沒有提供計算兩個日期之間月份差異的函數(shù),CowNewSQL通過組合其他日期函數(shù)的方式模擬了這個函數(shù),這樣使用者只要使用MONTHS_BETWEEN函數(shù)即可了,無需關心內部的差異。

          CowNewSQL支持如下幾種類型的SQL語句:CreateTable/DropTable/CreateIndex/DropIndex/Select/Insert/Delete/Update;支持子查詢、JoinUnion等高級的SQL特性;支持日期(包括取當前日期、從日期中提取任意部分、計算日期差異、日期前后推算等)、數(shù)學(包括取絕對值、取PI值、四舍五入、對數(shù)計算、隨機數(shù)等)、字符串(包括取子字符串、取字符串長度、字符串截斷、大小寫轉換等)、基本數(shù)據(jù)處理(包括數(shù)字字符串互轉、日期轉字符串、非空判斷等)等函數(shù)。

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

          posted on 2007-09-21 19:39 CowNew開源團隊 閱讀(2328) 評論(11)  編輯  收藏

          評論

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-09-21 20:14 久城
          頂個先!~  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-09-22 00:05 千里冰封
          我也來頂一下  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本[未登錄] 2007-09-22 17:00 壞男孩
          團隊的產品用于實際開發(fā)是件值得慶祝的事情?。?!  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-09-24 15:04 啊樂
          頂一下,跟著老大走~`
          沿途好風景 ~`  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-09-25 00:24 q
          不錯, 請問什么時候可以支持存儲過程create procedure 語句?  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-09-25 23:51 CowNew開源團隊
          @q
          各個數(shù)據(jù)庫對存儲過程的支持的差異還是蠻大的,而且團隊里熟悉存儲過程的朋友不是很多。不過我們會向這方面努力的,也希望您能提供相關的指導和幫助,以幫助我們開發(fā)出更好的國產開源產品。:)  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-10-19 13:11 kitsionlee
          支持老大,看了一下老大的書,感覺是比其他書籍另有滋味,希望老大再提供這方面的書籍,最好詳細說說CowNew的開發(fā)過程,至于無關CowNew的一些簡單例子,就不要也行,我一般也直接看源代碼先,不明白的地方才翻書,還有書里也有一些好的思想,比如說不要凡是都照搬Spring的寫法,我是剛大概了解一點點點Spring,可我也跟老大有同感.老大再提供多一些學習的資料.好讓CS的學生學習,起碼對開源也有好處啦  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2007-10-19 21:06 CowNew開源團隊
          @kitsionlee
          多謝你的支持,:)。不過那本書出版社運作的不好,很失望,呵呵。  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2008-01-05 21:21 回復
          啥時候支持postgresql  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2008-01-10 09:10 楊中科
          @回復
          目前的主要目標是優(yōu)化CowNewSQL的翻譯引擎,對postgresql、firebird等數(shù)據(jù)庫的支持將會在適當?shù)臅r候加入版本開發(fā)計劃。我們也需要對postgresql、firebird等數(shù)據(jù)庫語法熟悉的朋友加入一起完善CowNewSQL。  回復  更多評論
            

          # re: 跨數(shù)據(jù)庫解決方案CowNewSQL發(fā)布新版本 2009-07-24 12:43 rjsubd
          有沒有考慮對hql的支持?  回復  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網站導航:
           
          主站蜘蛛池模板: 汉沽区| 达州市| 梁河县| 新民市| 湘潭市| 长丰县| 绩溪县| 和田市| 荆州市| 旬邑县| 章丘市| 习水县| 凌海市| 石城县| 阜康市| 阿鲁科尔沁旗| 县级市| 绥中县| 监利县| 措美县| 尼木县| 九寨沟县| 江华| 沿河| 凤庆县| 芒康县| 怀集县| 九龙坡区| 双牌县| 涟源市| 赣榆县| 满洲里市| 辽中县| 林周县| 肥西县| 祥云县| 阳信县| 泸水县| 东宁县| 盐池县| 泰安市|