Jaybird 2.2.4 released

The Firebird JDBC team is happy to announce the release of Jaybird 2.2.4.

This release contains the following fixes:

  • Fixed: Exceptions during statement preparation leave connection and transaction open after explicit close (JDBC-311)
  • Fixed batch update (or insert) with blob set through setBinaryStream() sets empty blob for all but the first batch entry (JDBC-312)
  • Fixed incomplete checks of database, transaction, statement and blob handle validity before continuing with actions. These incomplete checks could lead to unexpected exceptions (for example a NullPointerException in iscDatabaseInfo) (JDBC-313)
  • Fixed error when setting connection charset equal to "file.encoding" java property (JDBC-314)
  • Fixed connection character set not correctly set when specifying the Java connection characterset (charSet or localEncoding property)  (JDBC-315)
  • Fixed incorrect lengths and/or radix reported by getTypeInfo and getColumns metadata (JDBC-317, JDBC-318)
  • Initial Java 8 / JDBC 4.2 support (JDBC-319)
  • Firebird 3 BOOLEAN type support, see Support for Firebird 3 BOOLEAN type in the release notes for more details (JDBC-321)
  • Added fallback of loading GDSFactoryPlugin implementations to prevent NullPointerException in Hibernate reverse engineering wizard in NetBeans (JDBC-325)
  • Fixed: Jaybird should specify dialect 3 in dpb when no explicit dialect was set (JDBC-327)
  • Fixed: several DatabaseMetaData methods defined by JDBC to only accept the actual table name also accepted a LIKE-pattern or empty string or null. This was changed to conform to JDBC. This change can break applications that relied on the incorrect behavior (JDBC-331)
    Affected methods are: getPrimaryKeys, getBestRowIdentifier, getImportedKeys, getExportedKeys and getCrossReference. As part of this change getIndexInfo now handles names in the wrong case slightly different.
    Jaybird 3.0 will further modify and restrict the pattern matching and case sensitivity of metadata methods. See Future changes to Jaybird in the release notes for more details.

Downloads available from JDBC driver section on the Firebird website.

The release is also available on maven(*):

<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird-jdkXX</artifactId>
<version>2.2.4</version>

* The artifactId depends on your target Java version: jaybird-jdk15, jaybird-jdk16, jaybird-jdk17 or jaybird-jdk18

eHealth system demo up and running (powered by Firebird)

Nigel Weeks created a demo for an assignment (for his Paramedic Practice degree) for a small fictional town’s health clinic, some appointment rooms, and some remote health professionals that are employed a few days a week (You can check it online also download the source code : Firebird SQL , PHP , webrtc, Ubuntu Server):

Naturally, I used the tools I know and love: PHP, FirebirdSQL, a splash of CSS, and a dollop of HTML.

Its feature set:

-Client management, current and outdated contact information(historical support)
-Bookings to see specialists, and notes system to go with the consultancy
-Booking screen with calendar for each specialist, and automatic blocking out for longer appointments.
-Daily run sheets for specialists (so they can see their appointment load in the morning)
-Payment status reports on appointments
-Reports on Specialist’s booking loads, and booking trends for hour of the day
-Outstanding account reports
-A WebRTC TeleHealth system for remote client and specialist consultancy and more. Oh yes, role-based access control(rudimentary)

Update of .NET Provider for OLEDB. Support of schemas implemented.

We continue to develop our .NET Provider for OLEDB. In the new build (#1434), we have implemented the methods to obtain database metadata:

  • OleDbConnection.GetOleDbSchemaTable
  • OleDbConnection.GetSchema

GetOleDbSchemaTable

Supported schemas:

  • SchemaGuids
  • DbInfoKeywords
  • DbInfoLiterals
  • All schemas of the OLEDB Provider

Distinctions compared to standard OLEDB.NET Provider:

  • The SchemaGuids schema describes all schemas including SchemaGuids, DbInfoKeywords and DbInfoLiterals.
  • The SchemaGuids schema supports restrictions for the Schema column.

GetSchema

Supported schemas:

  • MetaDataCollections
  • Restrictions
  • DataTypes
  • ReservedWords
  • DataSourceInformation
  • CharacterSets
  • Collations
  • Tables
  • Views
  • Columns
  • Procedures
  • ProcedureParameters
  • ProcedureColumns
  • Indexes

Distinctions compared to standard OLEDB.NET Provider:

  • The MetaDataCollections schema supports restrictions for the column CollectionName.
  • The Restrictions schema supports restrictions for the columns CollectionName and RestrictionName.
  • More accurate population of the DataSourceInformation schema.
  • More accurate population of the Restrictions schema.

Implementation peculiarities

  • Caching of data from its own schemas (SchemaGuids, DbInfoKeywords, DbInfoLiterals, …).
  • Coherence of information from metadata schemas with the descriptions of the resulting rowset columns and command parameters (ensured by IBProvider).
  • Different algorithms of metadata loading for Interbase and Firebird. Including – our provider takes into account the version of the server and the version of database ODS (ensured by IBProvider).
  • Caching of OLEDB metadata schemas is carried out on the IBProvider level (see a property «schema_cache»).

Other changes

  • The OleDbSchemaGuid class added with the lists of known OLEDB schema identifiers.
  • The OleDbSchemaRestriction class added with the lists of restriction indexes for known OLEDB schemas.
  • The OleDbLiteral class added.
  • The OleDbMetaDataCollectionNames class added.
  • The number of tests and debug structures ensuring the correct work of components increased.

New examples

If you are interested in working with stored procedures grouped into PACKAGE, please take a look at the new example for our .NET Provider:

  • Creation and working with PACKAGE (C#, FB3)
  • It is time for Firebird on Android and IOS ?

    With the release of Delphi XE5, with support for iOS and Android it also brings InterBase versions of these two O.S-es, people started to question whether we can expect a version of Firebird for mobile platforms. Apparently, it will happen! Paul Beach said he already has a version of FB compiling for iOS, but it still needs testing. Anyway, the release versions for iOS / Android should not happen now, since developers are totally focused on Firebird 3 release.

    News via firebase.com.br

    Update:
    Firebird client can be build for Android
    Also on the Apple side: Paul Beach managed to cross-compile Firebird for iOS

    1 5 6 7 8 9 48