SAP HANA Database Client for Go
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
driver release 0.13.2 Jan 12, 2019
internal release 0.13.2 Jan 12, 2019
.gitignore release 0.11.1 Apr 22, 2018
.gitlab-ci.yml release 0.13.2 Jan 12, 2019
LICENSE Initial commit Jun 4, 2014
NOTICE fixes #14 Oct 9, 2017
README.md release 0.13.2 Jan 12, 2019
trust.pem release 0.11.0 Mar 24, 2018

README.md

go-hdb

GoDoc

Go-hdb is a native Go (golang) HANA database driver for Go's sql package. It implements the SAP HANA SQL command network protocol:
http://help.sap.com/hana/SAP_HANA_SQL_Command_Network_Protocol_Reference_en.pdf

For the official SAP HANA client Go support (not this database driver) please see SAP Help Portal.

Installation

go get github.com/SAP/go-hdb/driver

Building

To build go-hdb you need to have a working Go environment with version 1.10.4 or higher installed.

Documentation

API documentation and documented examples can be found at https://godoc.org/github.com/SAP/go-hdb/driver.

Tests

To run the driver tests a HANA Database server is required. The test user must have privileges to create database schemas.

go test -dsn hdb://user:password@host:port

Features

  • Native Go implementation (no C libraries, CGO).
  • Go http://golang.org/pkg/database/sql package compliant.
  • Support of database/sql/driver Execer and Queryer interface for parameter free statements and queries.
  • Support of bulk inserts.
  • Support of UTF-8 to / from CESU-8 encodings for HANA Unicode types.
  • Built-in support of HANA decimals as Go rational numbers http://golang.org/pkg/math/big.
  • Support of Large Object streaming.
  • Support of Stored Procedures with table output parameters.
  • Support of TLS TCP connections.
  • Support of little-endian (e.g. amd64) and big-endian architectures (e.g. s390x).

Dependencies

Todo

  • Additional Authentication Methods (actually only basic authentication is supported).