SAP HANA

This page contains the latest information of the releases of RepoDb.SapHana library.

View the NuGet package here or download it directly here.

RepoDb.SapHana (v1.17.0-alpha3)

Released: October 10, 2026

  • Updated the Sap.Data.Hana.Net.v6.0 package reference to v2.30.27.
  • Referenced the RepoDb package v1.17.0-beta2.

RepoDb.SapHana (v1.17.0-alpha2)

Released: October 9, 2026

  • Enhancement: Made the package NativeAOT and trimming compatible (IsAotCompatible), replacing the reflection-based and dynamic code paths with AOT-safe equivalents.
  • Referenced the RepoDb package v1.17.0-beta1.

RepoDb.SapHana (v1.17.0-alpha1)

Released: October 1, 2026

  • Enhancement: Added the property handler SapHanaRealVectorToFloatArrayPropertyHandler, which maps the REAL_VECTOR type into a float[] property. #1342
  • Adopted the Roslyn and Meziantou static code analyzers across the codebase and applied the resulting fixes — including ConfigureAwait(false) on async calls, ArgumentNullException over NullReferenceException, and other code-quality corrections. #1328 #1331
  • Updated the NuGet package icon to the new logo and refreshed the README with a consistent header, description and a link to the get started tutorial.
  • Referenced the RepoDb package v1.17.0-alpha3.
  • Unsealed SapHanaDbSetting and added a UseSapHana(GlobalConfiguration, SapHanaDbSetting) overload that accepts any subclass, always applying the given setting even if already initialized — this lets SapHanaBulkDbSetting (shipped by RepoDb.SapHana.BulkOperations) be registered the same way. #1360

RepoDb.SapHana (v1.16.0)

Released: September 9, 2026

Version bump only, aligning with the RepoDB ecosystem-wide v1.16.0 release — no functional changes since v1.0.0.

  • Referenced the RepoDb package v1.16.0.

RepoDb.SapHana (v1.0.0)

Released: September 8, 2026

First general availability (non-preview) release of the SAP HANA provider, promoting the v0.0.1-alpha preview below to stable. No functional changes since v0.0.1-alpha — see that entry for the full feature set and known limitations.

RepoDb.SapHana (v0.0.1-alpha) - Preview

Released: TBA

New

First (alpha) release of the SAP HANA provider for RepoDB, built on top of Sap.Data.Hana.Net.v6.0. Targets .NET 8, .NET 9, and .NET 10.

Verification status: implemented and reviewed, but not yet exercised against a live SAP HANA instance. Verify the identity read-back and UPSERT ... WITH PRIMARY KEY semantics before relying on this package in production.

What’s included

Known limitations (v1)

  • InsertAll, MergeAll and UpdateAll issue one round trip per row, since IsMultiStatementExecutable is false. Passing an explicit batchSize greater than 1 throws a NotSupportedException. Use BulkInsert/BulkMerge/BulkUpdate from RepoDb.SapHana.BulkOperations instead.
  • No table hints of any kind — AreTableHintsSupported is false; passing a non-null hints argument throws a NotSupportedException.
  • No ConvertFieldResolver/property-handler classes of its own — SapHanaStatementBuilder is constructed with null for both convertFieldResolver and averageableClientTypeResolver, falling back to BaseStatementBuilder’s defaults. Typed CAST(...) generation and average-widening behavior have not been tuned for SAP HANA’s numeric-type semantics.
  • No native GUID/UNIQUEIDENTIFIER type, and the core package ships no bundled Guid-mapping property handler. SapHanaGuidToStringPropertyHandler (maps a Guid property to/from an NVARCHAR(36) column) lives in RepoDb.SapHana.BulkOperations instead — install that package (even without using its Bulk* operations) if you need it, or write your own IPropertyHandler<string, Guid>.
  • Merge compiles to UPSERT ... WITH PRIMARY KEY, which matches against the primary key — its value must already be known on the entity being merged. There is no path to auto-generate and return an identity value within the same call.
  • GetScopeIdentity/GetScopeIdentityAsync’s SELECT CURRENT_IDENTITY_VALUE() FROM DUMMY; query has not been verified against a live instance.
  • Only a standard SAP HANA server (verified conceptually against HANA Express/HXE) is targeted.