Skip to content

databricks/databricks-sql-nodejs

Repository files navigation

Databricks SQL Driver for Node.js

http://www.apache.org/licenses/LICENSE-2.0.txt npm test coverage

Description

The Databricks SQL Driver for Node.js is a Javascript driver for applications that connect to Databricks clusters and SQL warehouses. This project is a fork of Hive Driver which connects via Thrift API.

Requirements

  • Node.js 14 or newer

Installation

npm i @databricks/sql

Usage

examples/usage.js

const { DBSQLClient } = require('@databricks/sql'); const client = new DBSQLClient(); client .connect({ host: '********.databricks.com', path: '/sql/2.0/warehouses/****************', token: 'dapi********************************', }) .then(async (client) => { const session = await client.openSession(); const queryOperation = await session.executeStatement('SELECT "Hello, World!"'); const result = await queryOperation.fetchAll(); await queryOperation.close(); console.table(result); await session.close(); await client.close(); }) .catch((error) => { console.log(error); });

Run Tests

Unit tests

You can run all unit tests, or specify a specific test to run:

npm test npm test -- <path/to/file.test.js>

e2e tests

Before running end-to-end tests, create a file named tests/e2e/utils/config.local.js and set the Databricks SQL connection info:

{ host: '***.databricks.com', path: '/sql/2.0/warehouses/***', token: 'dapi***', database: ['catalog', 'database'], }

Then run

npm run e2e npm run e2e -- <path/to/file.test.js>

Contributing

See CONTRIBUTING.md

Issues

If you find any issues, feel free to create an issue or send a pull request directly.

License

Apache License 2.0