$.hdb
$.hdb
namespace provides means for seamless HANA database access. It is intended to be a replacement for the older $.db
namespace. The fundamental goal of the new interface is to ensure simplicity, convenience, completeness, and
performance.
Overview
Sample Usage
var db = $ . hdb ;
let connection = null ;
try {
connection = db . getConnection ();
try {
connection . executeUpdate ( "DROP TABLE CARS" );
} catch ( e ) {
// Do nothing
}
connection . executeUpdate ( "CREATE TABLE CARS (MAKE varchar(255), MODEL varchar(255))" );
let rows = connection . executeUpdate ( "INSERT INTO CARS (MAKE, MODEL) VALUES ('BMW', '325')" );
rows += connection . executeUpdate ( "INSERT INTO CARS (MAKE, MODEL) VALUES ('HONDA', 'ACCORD')" );
let totalText = `Query OK, ${ rows } rows affected\n\n` ;
let result = connection . executeQuery ( "SELECT * FROM CARS" );
let iterator = result . getIterator ();
let metadata = result . metadata . columns ;
while ( iterator . next ()) {
var currentRow = iterator . value ();
totalText += ` ${ metadata [ 0 ]. name } : ${ currentRow [ 0 ] } , ${ metadata [ 1 ]. name } : ${ currentRow [ 1 ] } \n` ;
// totalText += `${metadata[0].name}: ${currentRow[metadata[0].name]}, ${metadata[1].name}: ${currentRow[metadata[1].name]}\n`;
}
$ . response . setBody ( totalText );
} catch ( e ) {
connection . rollback ();
$ . response . setBody ( "Transaction was rolled back: " + e . message );
} finally {
if ( connection ) {
connection . close ();
}
}
Functions
Function
Description
Returns
getConnection()
Returns a connection to the database.
$.hdb.Connection
Properties
Name
Description
Type
Default
isolation.READ_COMITTED
-
number
2
isolation.REPEATABLE_READ
-
number
4
isolation.SERIALIZABLE
-
number
8
types.TINYINT
-
number
1
types.SMALLINT
-
number
2
types.INTEGER
-
number
3
types.BIGINT
-
number
4
types.DECIMAL
-
number
5
types.REAL
-
number
6
types.DOUBLE
-
number
7
types.CHAR
-
number
8
types.VARCHAR
-
number
9
types.NCHAR
-
number
10
types.NVARCHAR
-
number
11
types.BINARY
-
number
12
types.VARBINARY
-
number
13
types.DATE
-
number
14
types.TIME
-
number
15
types.TIMESTAMP
-
number
16
types.CLOB
-
number
25
types.NCLOB
-
number
26
types.BLOB
-
number
27
types.SMALLDECIMAL
-
number
47
types.TEXT
-
number
51
types.SHORTTEXT
-
number
52
types.ALPHANUM
-
number
55
types.SECONDDATE
-
number
62
types.ST_GEOMETRY
-
number
74
types.ST_POINT
-
number
75
Note
isolation - constants that represent the isolation levels for a transaction.
types - set of constants of the database column types.
types.ST_GEOMETRY
- consider using SQL's ST_asGeoJSON()
on ST_GEOMETRY columns for easy consumption.
types.ST_POINT
- consider using SQL's ST_asGeoJSON()
on ST_POINT columns for easy consumption
Classes
$.hdb.Connection
Functions
Function
Description
Returns
close()
Closes the connection.
-
commit()
Commits the changes.
-
isClosed()
Checks if the connection is closed.
boolean
executeQuery(query, args)
Executes a database query.
$.hdb.ResultSet
executeUpdate(statement, args)
Executes a SQL statement, which changes the database state.
$.hdb.ResultSet
rollback()
Rolls back the changes.
-
setAutoCommit(enable)
Changes the auto-commit flag of the connection.
-
$.hdb.ResultSet
Functions
Function
Description
Returns
getIterator()
Returns an iterator over this result set.
$.hdb.ResultSetIterator
Properties
Name
Description
Type
lenght
The number of rows in the $.hdb.ResultSet object
number
metadata
Returns the ResultSetMetaData from $.hdb.ResultSet object.
$.hdb.ResultSetMetaData
$.hdb.ResultSetIterator
Functions
Method
Description
Type
next()
Checks if the result set has more rows and sets the value of the iterator to the next row if it exists.
boolean
value()
Returns the current row that the iterator's value is set to, should always be called after a call to next()
.
row of a $.hdb.ResultSet
Properties
Name
Description
Type
column
Returns an array of column metadata objects, each of which represents the metadata for a particular column.
array of $.hdb.ColumnMetadata
Properties
Name
Description
Type
catalogName
Returns the column's catalog name.
string
displaySize
Returns the column's display size.
number
isNullable
Returns true if the column is nullable and false otherwise.
number
label
Returns the column's label.
string
precision
Returns the column's name.
string
scale
Returns the column's scale.
string
tableName
Returns the name of the table to which the column belongs.
string
type
Returns the column's type.
string
typeName
Returns the column's type name.
$.hdb.types