Cơ sở dữ liệu H2 Engine là một mã nguồn mở, đa nền và phần mềm đồ họa miễn phí thực hiện trong Java và được thiết kế để cung cấp cho người dùng với một JDBC API rất nhanh mà có giao diện điều khiển dựa trên trình duyệt và để lại một dấu chân rất nhỏ (khoảng 1 MB).
Ứng dụng đi kèm với một chế độ nhúng (trong bộ nhớ cơ sở dữ liệu), mà là nhanh hơn so với chế độ client-server. Nó cũng có tính năng hỗ trợ cho các cơ sở dữ liệu được mã hóa, một ODBC (Open Database Connectivity) điều khiển, tìm kiếm toàn văn bản, cũng như concurrency.Features đa phiên bản tại một tính năng glanceKey bao gồm một cơ sở dữ liệu rất nhanh, hỗ trợ cho các tiêu chuẩn SQL và JDBC API, clustering hỗ trợ, tùy chọn bảo mật mạnh mẽ, hỗ trợ cho các trình điều khiển ODBC PostgreSQL, trong bộ nhớ bảng, trong bộ nhớ cơ sở dữ liệu, cơ sở dữ liệu dựa trên đĩa, bảng dựa trên đĩa, bảng tạm thời, hỗ trợ cho các cơ sở dữ liệu chỉ đọc, hỗ trợ giao dịch và cấp bảng khóa.
Ngoài ra, phần mềm này có 2 pha-cam kết hỗ trợ, ưu dựa trên chi phí, hỗ trợ nhiều kết nối, hỗ trợ cho bộ kết quả có thể cập nhật và cuộn, hỗ trợ cho kết quả phân loại bên ngoài, hỗ trợ cho bộ kết quả lớn, hỗ trợ cho AES (Advanced Encryption Standard) cơ sở dữ liệu được mã hóa, SSL (Secure Socket Layer) hỗ trợ, cũng như hỗ trợ cho SHA-256 mật khẩu được mã hóa.
Trong số các tính năng khác đáng nói đến, chúng ta có thể dễ dàng đặt tên hỗ trợ cho các giản đồ thông tin và nhiều lược đồ, hỗ trợ collation, hỗ trợ cho vai trò và người sử dụng, dữ liệu nén lossless, bên ngoài và bên tham gia, quan điểm nội tuyến, chỉ đọc quan điểm, các truy vấn con, toàn vẹn tham chiếu, kiểm tra hạn chế, cột autoincrement, cột tính toán và trình tự cơ sở dữ liệu columns.Supported serversCurrently, H2 Database Engine là hoàn toàn tương thích với các nổi tiếng MySQL, PostgreSQL, IBM DB2, Apache Derby, Microsoft SQL Server, Oracle và máy chủ cơ sở dữ liệu HSQLDB / engines.Under mui xe và hỗ trợ hoạt động systemsBeing viết bằng ngôn ngữ lập trình Java, các dự án Database Engine H2 là nền tảng độc lập và hỗ trợ bất kỳ hệ điều hành mà Java Runtime Environment (JRE) có sẵn, bao gồm GNU / Linux, Microsoft Windows, Mac OS X, Solaris và BSD
là gì mới trong phiên bản này:.
- giải thích không chính xác cho các truy vấn với & quot; BẤT CỨ & quot; hoặc & quot; MỘT SỐ & quot; điều kiện.
- CallableStatement với & quot; & quot; thông số:. chạy cùng một tuyên bố hai lần có thể dẫn đến một ngoại lệ (& quot; tham số không được thiết lập & quot;)
- truy vấn Union:. Hàng trùng lặp có thể được trả lại nếu phụ truy vấn chứa & quot; tự do & quot;
- Các kiểu dữ liệu GEOMETRY hiện đang làm việc cho người sử dụng xác định các chức năng mà trả về một tập kết quả.
- tương thích PostgreSQL:. Các PgServer không hoạt động đúng khi database_to_upper thiết lập được thiết lập là false
- JdbcDataSource: các phương pháp setUrl và getUrl nơi thêm vào như là bí danh cho setURL và getURL. Điều này sẽ giải quyết vấn đề với (kết nối hồ bơi Hikari) HikariCP.
- Issue 537: H2 Console: khi tải các lược đồ, không chính xác JDBC gọi nơi ban hành, trong đó gây ra các ngoại lệ & quot; Cột PRECISION không tìm thấy & quot; .
- Cải thiện xử lý hình học (vấn đề 535).
- Các collation bây giờ có thể được đặt trong cơ sở dữ liệu URL, ngay cả khi có bảng dữ liệu, nếu bộ sưu tập cũng giống như việc đối chiếu hiện nay.
- Cải thiện khả năng tương thích với Oracle CASE KHI và giải mã.
- Báo cáo & quot; thả tất cả các đối tượng & quot; không hoạt động nếu một bảng phụ thuộc vào một cái nhìn qua một hạn chế.
- truy vấn con hay quan điểm với & quot; tự do & quot; một biểu thức bí danh không thể được thực hiện do một hồi quy được giới thiệu trong phiên bản 1.3.174.
- Issue 73: MySQL tương thích:. Hỗ trợ thay thế, bản vá của Cemo Koc
- Các chỉ số không gian hiện đang làm việc trong chế độ MVCC khi sử dụng lưu trữ MVStore.
- MVStore: vấn đề đồng thời đã được cố định. Các API đã được đơn giản hóa.
- Cải thiện thông báo lỗi khi thả một chỉ số đó thuộc về một hạn chế, chỉ định ràng buộc trong thông báo lỗi.
- Issue 518: java.sql.Connection.commit () đóng băng sau khi sửa đổi LOB với kết nối EXCLUSIVE
- Issue 517: Tạo hoặc thay thế xem tuyên bố không có tác dụng trên những người khác đã có sẵn kết nối JDBC
- Hỗ trợ 123L cú pháp như trong Java; Ví dụ:. CHỌN (2000000000L * 2)
- Issue 520:. Thêm hỗ trợ cho giá trị tối đa chuỗi, giá trị min và chu kỳ, bản vá của Daniel Gredler
- Issue 521: ScriptReader nên thực hiện closeable
- Issue 524:. RunScript.execute không đóng Tuyên bố của nó, bản vá từ Gaul
- Thêm hỗ trợ cho DB2 & quot; VỚI UR & quot; khoản, vá từ litailang
- Thêm hỗ trợ cho ON Duplicate CẬP NHẬT KEY như MySQL với các giá trị () để cập nhật với giá trị mà đã được chèn vào. Patch từ Jean-Francois Noel.
- Issue 522:. Hãy đối xử với chuỗi rỗng như NULL trong chế độ tương thích Oracle, bản vá của Daniel Gredler
- Issue 527: Oracle chế độ tương thích:. Quy mô, không chính xác, bản vá của Daniel Gredler
- Hơi giảm chi phí bộ nhớ của Xem siêu dữ liệu.
- Mở rộng hỗ trợ của & quot; CẤP ALTER ANY SCHEMA TO & quot; để cho phép khả năng nhận tài trợ để thao tác bảng
- Issue 532: Javadoc cho ErrorCode.ROLES_AND_RIGHT_CANNOT_BE_MIXED trông sai
- Issue 528: Thêm chức năng TO_CHAR Oracle-tương thích, bản vá của Daniel Gredler .
- Issue 534: CREATE ALIAS nocache, Patch của Nicolas Fortin
- Sửa chữa một vấn đề với lưu trữ cặp thay thế Unicode trong cột CLOB.
- H2 console: thêm SHIFT + ENTER & quot; chạy chọn & quot; chức năng
- Fix lỗi trong cú pháp & quot DB2; select * from thử nghiệm với ur & quot ;, vá từ litailang
- Fix lỗi trong thả ALL ĐỐI TƯỢNG khi đối xử với phụ thuộc liên schema.
là gì mới trong phiên bản 1.3.174:
- LIRS cache: Sửa lỗi cho cache chỉ chứa không mục -resident.
- Đối với cơ sở dữ liệu trong bộ nhớ, truy vấn với một & quot; nhóm của & quot; cột đó cũng là một chỉ số băm ném một RuntimeException.
- Cải thiện thông báo lỗi cho một số lỗi cú pháp.
- File trừu tượng: nếu được sử dụng trực tiếp, một số hệ thống tập tin đã không làm việc một cách chính xác với bộ đệm byte ghép (cơ sở dữ liệu không sử dụng những người) .
- Để sử dụng các công cụ lưu trữ MVStore (mà vẫn còn làm việc trong tiến trình), nối thêm & quot ;; mv_store = true & quot; để các cơ sở dữ liệu URL. Sử dụng MVTableEngine khi tạo bảng không còn được khuyến khích.
- Để biên dịch sử dụng chức năng xác định, các javax.tools.JavaCompiler hiện được sử dụng nếu có, và không có các tập tin tạm thời được tạo ra. Điều này sẽ giải quyết vấn đề khi nhiều cơ sở dữ liệu H2 kiêm biên dịch sử dụng xác định các chức năng tương tự. Để vô hiệu hóa, hệ thống các hệ thống sở hữu & quot; h2.javaSystemCompiler & quot; false.
- Đồng thời tạo bí danh chức năng trong cơ sở dữ liệu khác nhau có thể dẫn đến các trường hợp ngoại lệ & quot; javac:. Không tìm thấy file & quot;
- Các chức năng & quot; regexp_replace & quot; ném các loại sai ngoại lệ nếu các chuỗi thay thế là không hợp lệ.
- Một trạm kiểm soát hiện đang thực hiện mỗi MAX_LOG_SIZE / 2 thay vì mỗi MAX_LOG_SIZE, để các bản ghi giao dịch không phát triển lớn.
- MVStore cơ bảng: thiết lập mới & quot; retention_time & quot; để cấu hình thời gian để giữ lại dữ liệu cũ. Giá trị mặc định là 45 giây.
- Các phương pháp TableEngine.createTable () bây giờ trả về một đối tượng Table.
- Đối với cơ sở dữ liệu chỉ đọc, đối với cấp dấu vết & quot;. Debug & quot ;, các thông tin dấu vết được ghi vào thư mục temp
- Kết thúc khóa tập tin bây giờ sẽ chờ đợi cho đến khi thread nền được dừng lại.
- Trong phiên bản 1.3.172, một hồi quy biểu diễn đã được giới thiệu khi sửa chữa các vấn đề 389 (khi đó là một khóa chính đa cột, H2 dường như không luôn luôn chọn các chỉ số bên phải). Điều này có liên quan đến việc thúc đẩy một chỉ số phù hợp với & quot; tự do & quot; danh sách các cột (các chỉ số sai được sử dụng trong một số trường hợp).
- Cải thiện chỉ số không gian và kiểu dữ liệu.
- Issue 467:. OSGi lớp Loader (khả năng để tạo ra tham chiếu đến lớp trong ClassLoader khác, ví dụ như trong bó OSGi khác)
- Truy vấn & quot; nhóm của & quot; có chứa một subquery với một chức năng tổng hợp trả lại kết quả sai trong một số trường hợp.
- Fix lỗi trong chỉ số băm duy nhất và không duy nhất mà biểu hiện như kết quả không chính xác khi khóa tìm kiếm là một loại hồng y khác nhau từ khóa chỉ mục bảng. ví dụ trong đó một là INT và người kia là DÀI
- Bug:. Những thay đổi trong cấu trúc cơ sở dữ liệu không kết quả trong bộ nhớ cache truy vấn được phiên hiệu lực
- Tính năng mới từ Davide Cavestro -. Cho phép sử dụng công cụ tùy chỉnh Java đối tượng serialization trên một cơ sở cho mỗi DB
- Khi chạy các công cụ phục hồi vào rất lớn (& gt; 6G) cơ sở dữ liệu, một số thống kê đã được báo cáo với các số âm .
- Thêm một cột vào bảng CONTAINS_UNCOMMITTED PHIÊN siêu dữ liệu, cho phép phát hiện khi phiên rogue tạo giao dịch lớn.
- Một số sửa chữa nhỏ để hỗ trợ GEOMETRY, các bản vá lỗi của Nicolas Fortin.
- Các công cụ BNF và tính năng tự động hoàn chỉnh được xuất khẩu trong OSGi, mà làm cho nó có thể cho các biên tập viên thông minh để làm tự động hoàn chỉnh. Patch từ Nicolas Fortin.
- Fix thả ALL ĐỐI TƯỢNG và thả SCHEMA trong sự hiện diện của các bảng với các cột phụ thuộc tính.
- Session-tạm của LOB đôi khi có thể tích lũy, tăng kích thước của các tập tin DB cho đến khi tắt máy. Bây giờ họ đang dọn ra ở mọi cam kết.
- Có một lỗi mà một chỉ số băm với nhiều hơn một cột sẽ được âm thầm chuyển đổi thành một chỉ số thông thường. Bây giờ nó sẽ ném ra một ngoại lệ.
- Thống kê truy vấn: tính năng mới mà các cửa hàng mới nhất 100 truy vấn SQL được thực thi và dữ liệu hiệu suất của họ. Hữu ích để theo dõi xuống nặng hiện các truy vấn.
- Fix một bế tắc LOB giữa đọc và cập nhật cột LOB.
- Hỗ trợ JDBC DatabaseMetaData # getClientInfoProperties () phương pháp, trong ý thức trở về một kết quả có sản phẩm nào, để làm cho WebSphere hạnh phúc.
- Hãy Server # openBrowser tôn trọng các biến môi trường $ BROWSER. Thêm & quot; & quot crom; vào danh sách các trình duyệt cố gắng. Patch từ Felix Kaiser.
- Fix để org.h2.util.ScriptReader khi xử lý các ý kiến khối khép kín.
- Hãy org.h2.util.ScriptReader ném một ngoại lệ khi xử lý tốt hơn các kịch bản vỡ mà tạo ra các câu cực kỳ lớn.
- Fix lỗi với ALLOW_LITERALS = NONE, nơi mà các kỳ phân tích bảng trên chèn sẽ ném ra một ngoại lệ. Một vấn đề tương tự đã được cố định trong các công cụ điều khiển.
- Issue 510: Hãy công org.h2.bnf cho tiêu thụ bởi các dự án bên ngoài, bản vá của Nicolas Fortin
- Issue 509: sửa chữa quan trọng về ValueGeometry, bản vá của Nicolas Fortin (với một số điều chỉnh) Hãy ValueGeometry # getDimensionCount đáng tin cậy hơn. Thêm đơn vị kiểm tra để kiểm tra đối chiếu ValueGeometry bất hợp pháp Thêm bài kiểm tra đơn vị cho chuyển đổi của đối tượng hình học vào Object Thêm tùy chọn để xuất khẩu MANIFEST.MF cho lớp JTS Geometry Xác nhận rằng các giá trị hình học có thể được đại diện trong WKB.
- Issue 506: RFE: Bao gồm Thread.getName () trong trường hợp của một bế tắc
- Thêm hỗ trợ cho & quot; CẤP ALTER ANY SCHEMA TO & quot ;, vá bởi John Yates
Hệ thống
là gì mới trong phiên bản 1.3.173:
- Phiên bản này cải thiện khả năng tương thích MySQL và PostgreSQL, cải thiện công cụ lưu trữ MVStore, và cho biết thêm các kiểu dữ liệu mới & quot; & quot hình học; cho dữ liệu không gian.
là gì mới trong phiên bản 1.3.171:
- Security: các máy chủ TCP không chính xác hạn chế truy cập quyền lợi của khách hàng trong một số trường hợp. Đây là một vấn đề đặc biệt khi sử dụng cờ & quot; tcpAllowOthers & quot;.
- H2 Console:. Thời gian chờ phiên bây giờ có thể được cấu hình bằng cách sử dụng hệ thống sở hữu & quot; h2.consoleTimeout & quot;
- Issue 431: Cải thiện khả năng tương thích với MySQL: hỗ trợ cho & quot; ENGINE = InnoDB charset = UTF8 & quot; khi tạo một bảng.
- Issue 249: Cải thiện khả năng tương thích với MySQL trong chế độ MySQL:. Hiện tại các phương pháp DatabaseMetaData phương pháp cửa hàng * Trường hợp * Nhận dạng trở lại giống như MySQL khi sử dụng chế độ MySQL
- Issue 434:. H2 điều khiển không làm việc trong các trình duyệt Chrome do một đối số khung nhìn sai
- Có một khả năng rằng các tập tin .lock.db đã không bị xóa khi các cơ sở dữ liệu đã được đóng cửa, có thể làm chậm việc mở cơ sở dữ liệu.
- Các kịch bản SQL được tạo ra bởi các & quot; kịch bản & quot; lệnh chứa ký tự dòng mới không phù hợp trên Windows.
- Khi sử dụng dấu vết cấp 4 (SLF4J) trong chế độ máy chủ, một thư mục & quot; trace.db & quot; và một tập tin rỗng được tạo ra về phía khách hàng. Điều này không còn được thực hiện.
- Optimize IN (...) truy vấn: có một lỗi trong phiên bản 1.3.170 nếu kiểu của phía bên tay trái không phù hợp với các loại hình phía bên tay phải. Cố định.
- Optimize IN (...) truy vấn: có một lỗi trong phiên bản 1.3.170 để so sánh các loại & quot; X IN (NULL, NULL) & quot ;. Cố định.
- Timestamps với múi giờ đó đã được thông qua như là một chuỗi không phải luôn luôn chuyển đổi một cách chính xác. Ví dụ & quot; 2012-11-06T23: 00: 00.000Z & quot; được chuyển đến & quot; 2012/11/06 & quot; thay vì đến & quot; 2012/11/07 & quot; trong CET múi giờ. Cảm ơn rất nhiều để Steve Hruda để báo cáo các vấn đề!
- New engine bảng & quot; org.h2.mvstore.db.MVTableEngine & quot; rằng trong nội bộ sử dụng MVStore để kiên trì dữ liệu. Để thử nghiệm nó, nối thêm & quot ;; DEFAULT_TABLE_ENGINE = org.h2.mvstore.db.MVTableEngine & quot; để các cơ sở dữ liệu URL. Điều này vẫn còn rất thực nghiệm, và nhiều tính năng không được hỗ trợ. Các dữ liệu được lưu trữ trong một tập tin với các hậu tố & quot; .mv.db & quot;.
- thiết lập kết nối mới & quot; DEFAULT_TABLE_ENGINE & quot; sử dụng một động cơ cụ thể của bảng nếu không được thiết lập một cách rõ ràng. Điều này là để thử nghiệm đơn giản hóa các công cụ bảng MVStore.
- MVStore: mã hóa các cửa hàng cũng được hỗ trợ. Chỉ có các thuật toán tiêu chuẩn được sử dụng:. PBKDF2, SHA-256, XTS-AES, AES-128
- MVStore:. Cải thiện API nhờ Simo Tripodi
- MVStore:. Bản đồ bây giờ có thể được đổi tên thành
- MVStore:. Lưu trữ các tập tin tiêu đề cũng ở cuối mỗi đoạn, mà kết quả trong một số tiếp tục giảm trong các hoạt động ghi
- MVStore:. Thực hiện một bản đồ có hỗ trợ hoạt động đồng thời
- MVStore: thống nhất xử lý ngoại lệ; các phiên bản được bao gồm trong các thông điệp.
- MVStore:. Dữ liệu cũ bây giờ được giữ lại trong 45 giây bằng cách mặc định
- MVStore:. Nén bây giờ được tắt theo mặc định, và có thể được kích hoạt theo yêu cầu
- Hỗ trợ ALTER TABLE ADD ... SAU. Vá từ Andrew Gaul (argaul tại gmail.com). Sửa chữa vấn đề 401.
- Cải thiện hỗ trợ OSGi. H2 giờ đăng ký chính nó như là một dịch vụ DataSourceFactory. Sửa chữa vấn đề 365.
- Thêm một chức năng hệ thống DISK_SPACE_USED. Sửa chữa vấn đề 270.
- Fix một sự mơ hồ thời gian biên dịch khi biên dịch với JDK7, nhờ vào một bản vá từ Lukas Eder.
- Hỗ trợ giảm một chỉ số cho Lucene chỉ mục toàn văn bản.
- Tối ưu hóa hiệu cho SELECT ... ORDER BY X LIMIT Y OFFSET truy vấn Z cho bộ nhớ trong cơ sở dữ liệu bằng cách sử dụng một phần sắp xếp (Sergi Vladykin).
- nghiệm off-đống công cụ lưu trữ bộ nhớ & quot; nioMemFS: & quot; và & quot; nioMemLZF:. & quot ;, đề nghị từ Mark Addleman
- Issue 438: JdbcDatabaseMetaData.getSchemas () không còn được hỗ trợ như là của 1.3.169 .
- MySQL tương thích: hỗ trợ cho ALTER TABLE tableName sửa đổi [COLUMN] ColumnName columnDef. Patch từ Ville Koskela.
- Issue 404:. HIỂN THỊ CÁC MỤC TỪ tableName không làm việc với ALLOW_LITERALS = SỐ
- Ném một lỗi rõ ràng để làm cho nó rõ ràng, chúng tôi không hỗ trợ kết hợp TRIGGER SELECT và FOR EACH ROW.
- Issue 439:. Utils.sortTopN không xử lý mảng đơn tố
là gì mới trong phiên bản 1.3.170:
- Issue 407: Các TriggerAdapter đã không làm việc với CLOB và BLOB cột.
- tương thích PostgreSQL:. hỗ trợ cho các kiểu dữ liệu BIGSERIAL và SERIAL như một bí danh cho AUTO_INCREMENT
- Issue 417: H2 Console: thời gian chờ phiên web không hoạt động, dẫn đến rò rỉ bộ nhớ. Đây chỉ là một vấn đề nếu H2 điều khiển đã được chạy trong một thời gian dài và nhiều phiên được mở ra.
- Issue 412: Chạy công cụ máy chủ chỉ với các tùy chọn & quot; -browser & quot; bây giờ sẽ đăng một cảnh báo.
- Issue 411:. Đăng ký CloseWatcher không đồng thời an toàn
- tương thích MySQL: hỗ trợ cho CONCAT_WS. Cảm ơn rất nhiều để litailang cho các bản vá!
- PostgreSQL khả năng tương thích: hỗ trợ cho SUẤT (Tuần từ dateColumn). Nhờ Prashant Bhat cho các bản vá!
- Fix cho một lỗi mà đôi khi chúng ta sẽ sử dụng các hạn chế duy nhất để xác nhận sai chế chính nước ngoài.
- Hỗ trợ BOM ở đầu tập tin cho các lệnh RUNSCRIPT
- Fix kêu gọi SETX = SẮC (), nơi nó sẽ trả về NULL không đúng
- Fix ABBA bế tắc giữa thêm một hạn chế và đề H2-Log-Writer.
- Optimize IN (...) truy vấn, nơi các giá trị không đổi và cùng loại.
- công cụ phục hồi:; quiet & quot các tham số & quot; không được sử dụng và bây giờ được gỡ bỏ.
- Fix ConcurrentModificationException khi tạo bảng và thực hiện HIỂN THỊ BẢNG song song. Báo cáo của Viktor Voytovych.
- Serialization là tại pluggable bằng cách sử dụng hệ thống sở hữu & quot; h2.javaObjectSerializer & quot ;. Nhờ Sergi Vladykin cho các bản vá!
được gì mới trong phiên bản 1.3.169:
- Các tập tin jar mặc định hiện biên dịch cho Java 6 .
- Các file jar mới có thể sẽ không kết thúc trong kho Maven trung tâm trong một vài tuần tới vì Sonatype đã tắt chức năng tự động đồng bộ từ SourceForge (mà họ gọi là "di sản sync 'bây giờ). Nó có thể sẽ mất một thời gian cho đến khi điều này được sắp xếp ra ngoài. Các tập tin jar H2 được triển khai để http://h2database.com/m2-repo/com/h2database/h2/maven-metadata.xml và http://hsql.sourceforge.net/m2-repo/com/h2database/h2 /maven-metadata.xml như bình thường.
- Một phần của tài liệu và H2 điều khiển đã được thay đổi để hỗ trợ màn hình hiển thị võng mạc của Apple.
- Các công cụ CreateCluster có thể không được sử dụng nếu các cơ sở dữ liệu mã nguồn chứa một CLOB hoặc BLOB. Nguyên nhân gốc rễ là các máy chủ TCP không đồng bộ hóa trên các phiên, trong đó gây ra một vấn đề khi sử dụng các chế độ độc quyền.
- Statement.getQueryTimeout (): chỉ các cuộc gọi đầu tiên phương pháp này sẽ truy vấn cơ sở dữ liệu. Nếu thời gian chờ truy vấn đã được thay đổi theo một cách khác hơn so với gọi setQueryTimeout, phương pháp này sẽ luôn luôn trả về giá trị cuối cùng. Điều này đã được thay đổi bởi vì Hibernate gọi getQueryTimeout () rất nhiều.
- Issue 416: PreparedStatement.setNString ném AbstractMethodError. Tất cả được thực hiện JDBC 4 phương pháp mà không phá vỡ tính tương thích với Java 5 hiện nay bao gồm trong các tập tin jar mặc định.
- Issue 414: đối với một số chức năng, các thông số được đánh giá hai lần (ví dụ & quot; char (NEXTVAL (..)) & quot; chạy & quot; NEXTVAL (..) & quot; hai lần) .
- Các phương pháp ResultSetMetaData getSchemaName và getTableName có thể trả về null thay vì & quot; & quot; (Một chuỗi rỗng) theo quy định tại các API JDBC.
- Thêm khả năng tương thích cho & quot; SET NAMES & quot; truy vấn trong chế độ tương thích MySQL.
là gì mới trong phiên bản 1.3.168:
- Thông điệp & quot; log giao dịch không thể được rút ngắn & quot ; đôi khi được ghi vào tập tin .trace.db thậm chí nếu không có vấn đề cắt bỏ các bản ghi giao dịch.
- Hệ thống New sở hữu & quot; h2.serializeJavaObject & quot; (Mặc định: true). Cho phép vô hiệu hóa tuần tự hóa đối tượng Java, để các đối tượng và phương pháp compareTo toString có thể được sử dụng
- Dylan đã dịch các công cụ H2 Console để Hàn Quốc. Cảm ơn rất nhiều!
- Thực hiện các câu lệnh CREATE INDEX NẾU ĐÃ tồn tại nếu chỉ số này đã tồn tại không còn bị lỗi cho một cơ sở dữ liệu chỉ đọc.
- MVCC: đồng thời cập nhật liên tục có thể dẫn đến việc xuất hiện hàng để xóa các kết nối thứ hai, nếu có nhiều chỉ số duy nhất (hoặc một khóa chính và ít nhất một chỉ số duy nhất). Cảm ơn rất nhiều để Teruo cho các bản vá!
- Tìm kiếm toàn văn:. Trong bộ nhớ chỉ số Lucene đang được hỗ trợ
- Fulltext search: khóa chính UUID đang được hỗ trợ .
- Apache Tomcat 7.x sẽ bây giờ còn đăng một cảnh báo khi dỡ các ứng dụng web, nếu sử dụng một hồ bơi kết nối.
- H2 Console: hỗ trợ các trình duyệt Midori (cho Debian / Raspberry Pi)
- Khi mở một phiên điều khiển từ xa, không mở một tập tin tạm thời, nếu mức độ vi lượng được thiết lập để không
- Sử dụng HMAC để xác thực từ xa của id LOB, loại bỏ sự cần thiết cho việc duy trì một bộ nhớ cache, và loại bỏ các giới hạn về số LOB mỗi tập hợp kết quả.
- H2 Console: HTML và các tài liệu XML có thể được chỉnh sửa trong một tập kết quả có thể cập nhật. Có (giới hạn) hỗ trợ cho việc chỉnh sửa tài liệu nhiều dòng.
là gì mới trong phiên bản 1.3.164:
- Đang cập nhật về kết quả trong một kích hoạt hiện nay hỗ trợ .
là gì mới trong phiên bản 11.3.162:
- Các thuộc tính hệ thống sau đây không còn được hỗ trợ: h2 .allowBigDecimalExtensions, h2.emptyPassword, h2.minColumnNameMap, h2.returnLobObjects, h2.webMaxValueLength.
- Khi sử dụng một VPN, bắt đầu từ một máy chủ H2 đã không làm việc (đối với một số phần mềm VPN).
- Oracle khả năng tương thích:. Hỗ trợ cho giải mã (...)
- Lucene tìm kiếm toàn văn: tạo ra một chỉ số hiện nay là nhanh hơn nếu bảng đã chứa dữ liệu. Cảm ơn rất nhiều đến Angel Leon từ Đội FrostWire cho các bản vá!
- báo cáo Cập nhật với một danh sách cột trong ngoặc đơn không làm việc nếu danh sách chỉ chứa một cột. Ví dụ:. Tập kiểm tra cập nhật (id) = (id)
- chỉ đọc cơ sở dữ liệu trong một file zip đã không hoạt động khi sử dụng tùy chọn -baseDir.
- Issue 334:. SimpleResultSet.getString bây giờ cũng làm việc cho cột CLOB
- truy vấn con với một tổng hợp đã không luôn luôn làm việc. Ví dụ: chọn (select count (*) từ thử nghiệm mà a = ta và b = 0) từ nhóm thử nghiệm t bởi một
- Server:. Trong một số (lý thuyết) trường hợp, trường hợp ngoại lệ khi đóng kết nối đã được bỏ qua
- Server.createTcpServer, createPgServer, createWebServer:. Đối số không hợp lệ được phát hiện tại
- Các tính chọn lọc của cột LOB không còn được tính toán bởi vì chỉ số trên cột LOB không được hỗ trợ (tuy nhiên điều này cần phải có ít ảnh hưởng đến hiệu suất, tính chọn lọc được tính toán từ các mã băm và không phải là dữ liệu).
- New thử nghiệm hệ thống sở hữu & quot; & quot ;: h2.modifyOnWrite khi được kích hoạt, các tập tin cơ sở dữ liệu chỉ được thay đổi khi văn bản cho cơ sở dữ liệu. Khi được kích hoạt, các khóa tập tin tuần tự là nhanh hơn nhiều cho đọc-chỉ hoạt động.
- Một NullPointerException có thể xảy ra trong TableView.isDeterministic cho quan điểm không hợp lệ.
- Issue 180: khi deserializing đối tượng, bộ nạp lớp bối cảnh được sử dụng thay vì bộ nạp lớp mặc định nếu hệ thống sở hữu & quot; h2.useThreadContextClassLoader & quot; được thiết lập. Cảm ơn rất nhiều để Noah Fontes cho các bản vá!
- Khi sử dụng các chế độ độc quyền, hoạt động LOB có thể gây ra các chủ đề để chặn. Điều này cũng ảnh hưởng đến các công cụ CreateCluster (khi sử dụng hoặc dữ liệu BLOB CLOB).
- Việc tối ưu hóa cho & quot; nhóm của & quot; đã không làm việc một cách chính xác nếu các nhóm theo cột được đặt bí danh trong danh sách lựa chọn.
- Issue 326: Cải thiện hỗ trợ cho trường hợp nhạy cảm (trường hợp pha trộn) định danh mà không có dấu ngoặc kép khi sử dụng DATABASE_TO_UPPER = FALSE .
Yêu cầu :
- Java 2 Standard Edition Runtime Environment
Bình luận không