Database guides

SAP HANA

Updated 2026-08-11 · 2 min read

SAP’s in-memory column-store RDBMS. Needs a build with the hana feature enabled; the driver is pure Rust, so no SAP client library is required.

SAP HANA is an in-memory, column-oriented relational database, and the data layer under most modern SAP deployments. AddisDB connects with a pure-Rust implementation of HANA’s wire protocol — there is no SAP client library to install.

Who it is for

If your organisation runs S/4HANA or BW/4HANA, this is the database underneath. It also stands alone as an analytics engine — column storage and in-memory execution make it fast over wide tables, at the cost of needing enough RAM to hold the working set.

Set up the connection details

  1. Note the host. For HANA Cloud this is a long hostname ending in hanacloud.ondemand.com.
  2. Confirm the port. On-premise it is 3<instance>15 — 30015 for instance 00, 30115 for instance 01. HANA Cloud uses 443.
  3. Note the user. SYSTEM is the built-in administrator; most sites will give you a named user instead.
  4. Optionally note a schema to scope the schema tree to — HANA ships hundreds of system schemas, so this makes the tree far more useful.

Connect from AddisDB

  1. New Connection → SAP HANA. Port prefills to 30015 and username to SYSTEM.
  2. Enter the host, and change the port to 443 for HANA Cloud.
  3. Put a schema in the database field to scope the tree, or leave it blank to see all non-system schemas.
  4. Set SSL mode to require for HANA Cloud. Test, then Save.

What AddisDB gives you

Queries, the schema tree, exports, saved queries and mock data. Introspection reads SYS.TABLE_COLUMNS, which carries data types and nullability in one view.

HANA returns results through a server-side cursor rather than as one block, and AddisDB stops driving that cursor as soon as your row limit is met. On a table of any real size that is the difference between a fast first page and pulling the whole table across the network before showing anything.

DECIMAL columns render as text rather than as floating-point numbers, which keeps every digit — relevant when the column holds money.