You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Jaybird GitHub Releases page is also an archive for all releases since JayBird _[sic]_ 1.0-beta-1.
45
+
46
+
We recommend using your favourite build tool -- like Maven or Gradle -- to get Jaybird from Maven Central instead of downloading it manually.
47
+
39
48
[#maven]
40
49
=== Maven
41
50
@@ -553,6 +562,8 @@ You can also fork the {jaybird-repo}[Jaybird repository] and create pull request
553
562
[#connecting-to-firebird]
554
563
= Connecting to Firebird
555
564
565
+
For more information on connecting to Firebird using Jaybird, see also chapter https://firebirdsql.github.io/jaybird-manual/jaybird_manual.html#connection[Obtaining a connection] in the _Jaybird JDBC Driver Java Programmer’s Manual_.
566
+
556
567
[[jdbc-urls-java.sql.DriverManager]]
557
568
== JDBC URLs (`java.sql.DriverManager`)
558
569
@@ -880,12 +891,53 @@ Be aware that the first two options may have legal implications depending on the
880
891
[#jdbc-support]
881
892
= JDBC Support
882
893
894
+
[#jdbc44-support]
895
+
== Is JDBC 4.4 supported?
896
+
897
+
Yes, https://jcp.org/aboutJava/communityprocess/mrel/jsr221/index4.html[JDBC 4.4^] is supported by Jaybird 5 and Jaybird 6, with some minor caveats. +
898
+
No -- for Jaybird 4 and older.
899
+
900
+
JDBC 4.4 was introduced with Java 24.
901
+
The only change in JDBC 4.4 was the removal of the requirement for `SQLPermission` checks, given `SecurityManager` support was removed in Java 24.
902
+
903
+
There are two caveats to this support:
904
+
905
+
* Jaybird still has the code for performing the permission checks to be compliant with the https://jcp.org/aboutJava/communityprocess/mrel/jsr221/index3.html[JDBC 4.3 Specification^] on Java 23 and older.
906
+
+
907
+
As such, the JDBC 4.4 compliance of Jaybird currently relies on Java 24 and higher still having the `SQLPermission` class, and `System.getSecurityManager()` always returning `null`.
908
+
This may break and need additional work once a Java version is released where this class or method are removed.
909
+
* Jaybird 6.0.0 - 6.0.2 are broken on Java 24 and higher due to the way the permission check is performed in those versions.
910
+
+
911
+
This is fixed in Jaybird 6.0.3 and higher (see https://github.com/FirebirdSQL/jaybird/issues/890[#890]).
912
+
913
+
[#jdbc45-support]
914
+
== Is JDBC 4.5 supported?
915
+
916
+
Not fully -- for Jaybird 5.0.11 and older, and Jaybird 6.0.4 and older. +
917
+
No -- for Jaybird 4 and older.
918
+
919
+
Java 26 (expected in March 2026) will introduce https://jcp.org/aboutJava/communityprocess/maintenance/jsr221/index5.html[JDBC 4.5 (draft)^].
920
+
Jaybird is not yet compatible with some of the specified changes.
921
+
922
+
Specifically affected are:
923
+
924
+
* Introduction of `java.sql.JDBCType.DECFLOAT` and `java.sql.Types.DECFLOAT` (value `2015`).
925
+
+
926
+
At this time, Jaybird still uses its own constants in `JaybirdType.DECFLOAT` and `JaybirdTypeCodes.DECFLOAT` (value `-6001`).
927
+
* Introduction of new methods on `java.sql.Connection` -- `enquoteIdentifier`, `enquoteLiteral`, `enquoteNCharLiteral`, and `isSimpleIdentifier`
928
+
+
929
+
The default implementation provided is not sufficient for Firebird, especially not when connecting to a dialect 1 database.
930
+
For the time being, we recommend using the equivalent JDBC 4.3 methods (with the same name) on a `java.sql.Statement` instance of the connection.
931
+
* The JDBC escape to selectively disable escape processing ([.nowrap]`++{\ ... \}++`) is not yet implemented.
932
+
933
+
We plan to address these issues in Jaybird 5 and Jaybird 6 releases _after_ the release of Java 26 (tracked by https://github.com/FirebirdSQL/jaybird/issues/907[#907]).
934
+
883
935
[#how-much-of-jdbc-is-supported-by-jaybird]
884
936
== How much of JDBC is supported by Jaybird?
885
937
886
938
*WARNING* The information in this section is not 100% up-to-date
887
939
888
-
Jaybird 4 follows the JDBC 4.3 specification with some features and methods not implemented as they are not supported by Firebird.
940
+
Jaybird 4 follows the https://jcp.org/aboutJava/communityprocess/mrel/jsr221/index3.html[JDBC 4.3 Specification^] with some features and methods not implemented as they are not supported by Firebird.
0 commit comments