DB2 Express-C 作為 IBM 推出的免費社群版資料庫,允許用戶免費用於生產環境、應用程式分發或開發測試。雖然限制使用兩顆處理器與 2GB 記憶體,但不限制伺服器規模與資料庫大小,這在同類產品中極具競爭力。2007 年 11 月釋出 9.5 版本後,IBM 持續將商業版特性回饋至社群版,最新的 9.5.2 版(撰文時為 Beta 版,正式版正進行最終測試)帶來多項重磅增強。
此外,9.5.2 還修補了 9.5 版發現的所有缺陷,詳細修復清單請參閱參考資源。
這是 9.5.2 版最重要的新特性。傳統 SQL 的 = 或 LIKE 謂詞只能進行精確或前綴匹配,而 DB2 文字搜尋提供 CONTAINS() 函數,支援語言學處理,能識別搜尋詞的不同詞形。例如搜尋 "work" 即可檢索標題為 "Working with ORM frameworks" 的文章。
支援同義字典功能:將 "DBA" 設為 "Database Administrator" 同義詞,搜尋 "DBA" 時同樣返回相關記錄。對於 XML 欄位,提供 XMLcolumn-contains() 函數搭配 XQuery 使用。語言支援涵蓋中文、阿拉伯語、捷克語、丹麥語、德語、希臘語、西班牙語、芬蘭語、法語、義大利語、波蘭語、葡萄牙語、俄語等主流語言。
底層由 IBM OmniFind Text Search Server 提供支援,特性包括:安裝配置簡化、支援文字/HTML/XML 全文檢索(含布林與萬用字元)、完整整合 SQL/SQL/XML/XQuery、隱性認證、SQL codes 錯誤處理、大量資料快速索引、非同步增量索引更新、CONTAINS/SCORE SQL 函數、與 DB2 最佳化器深度整合等。原有的 Net Search Extender (NSE) 現已整合至此功能中。
透過 ADMIN_CMD 程序建立任務,可執行 BACKUP、RUNSTATS、PRUNE HISTORY 等管理命令,並指定執行時間與方式。任務清單由 ADMIN_TASK_ADD、ADMIN_TASK_UPDATE、ADMIN_TASK_REMOVE 內建程序管理,配合管理檢視表監控執行狀態。獨立於 Task Center 運作,提供可程式化的 SQL 介面,不依賴 DAS。
建立 Unicode 資料庫時可指定排序規則。以西班牙語(拉丁美洲)為例,"CH" 被視為獨立字母,排序於 C 之後、D 之前。預設排序規則會導致 "Caballo, Cometa, Chofer" 錯誤排序,而 UCA 5.0 基礎的本地化排序規則完美解決此問題。亦可透過 COLLATION_KEY_BIT SQL 標量函數應用 UCA 排序鍵。
LOAD 公用程式現支援直接將 XML 文件載入資料表,效能優於 IMPORT,支援游標型檔案與多種資料交換格式。.NET CLR 常式(預存程序與使用者定義函數)現支援 64 位元環境部署。
JDBC/SQLJ 驅動增強:移除 db2jcc_license_*.jar 依賴、Type 4 連線支援 XML 加密、LOB 程式化串流、動態捲動游標增強、DB2Array 介面支援陣列、DECFLOAT 支援、客戶端重導向增強、連線濃縮器與 Sysplex 工作負載平衡、非固定長度 setXXXStream、XML Schema 升級 Java 支援、PreparedStatement.setObject 支援 Reader/InputStream、移除 javax_jcc.jar、樂觀鎖定、逾時方法、更多 JDBC 3.0 方法、Type 4 內部陳述式快取、sqlj4.zip 支援 JDBC 4.0(需 Java SDK 6+)。
.NET 提供者增強:包含 ASP.NET 提供者、受信任內容支援、LINQ to Entities 整合(.NET Framework 3.5 SP1)。
IBM 持續履行對社群的承諾,將商業版核心特性免費開放。DB2 文字搜尋滿足社群長期呼聲,提供多語言支援的強大全文檢索;行政任務排程器賦予 DBA 程式化自動化能力;本地化排序規則解決跨文化資料排序難題;pureXML LOAD 功能大幅提升 XML 大量載入效能;完整的客戶端/驅動增強涵蓋 Java 與 .NET 生態系。這些特性讓免費版 DB2 Express-C 更接近企業級生產需求。