sequelize-odbc-mssql v1.0.0
sequelize-odbc-mssql
Sequelize dialect driver for the @ratanakvlun/node-odbc module
The sequelize-odbc-mssql module is a MSSQL dialect driver for sequelize.
There are many Node.js MSSQL clients and sequelize defaults to using tedious, but being pure Javascript,tedious lacks support for integrated security on Windows systems. @ratanakvlun/node-odbc is a client that interfaces with a native ODBC library which allows integrated security to be used.
The purpose of sequelize-odbc-mssql is to provide sequelize with a dialect driver for @ratanakvlun/node-odbc.
Installation
npm install sequelize-odbc-mssqlUsage
Using sequelize-odbc-mssql is simple. Just specify sequelize-odbc-mssql as the dialectModulePath:
const Sequelize = require('sequelize');
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-odbc-mssql',
dialectOptions: {
/* Configuration */
}
});Configuration
The following sequelize options are used by sequelize-odbc-mssql. Options specific to sequelize like pooling still apply to the sequelize layer.
- database - Name of the database to use.
- username - Username if using SQL authentication.
- password - Password if using SQL authentication.
- host - Hostname of the server. Default:
localhost - port - Port if using TCP/IP to connect.
- dialectOptions.driver - Name of the ODBC driver to use (e.g. SQL Server Native Client 10.0).
- dialectOptions.instanceName - Name of the instance to connect to.
- dialectOptions.trustedConnection - Indicates whether integrated security should be used. Default:
false - dialectOptions.connectionString - Connection string to use. Overrides all other options if present.
If a driver is not provided in either dialectOptions.driver or dialectOptions.connectionString, sequelize-odbc-mssql will attempt to detect a driver.
Example: Using a connection string directly with sequelize pooling.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-odbc-mssql',
dialectOptions: {
connectionString: 'Driver={SQL Server Native Client 10.0};Server=localhost\\SQLEXPRESS;Database=finances;Trusted_Connection=yes;'
},
pool: {
min: 0,
max: 5,
idle: 10000
}
});Example: Using Windows authentication.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-odbc-mssql',
dialectOptions: {
driver: 'SQL Server Native Client 10.0',
instanceName: 'SQLEXPRESS',
trustedConnection: true
},
host: 'localhost',
database: 'finances'
});Example: Using SQL authentication.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-odbc-mssql',
dialectOptions: {
driver: 'SQL Server Native Client 10.0',
instanceName: 'SQLEXPRESS'
},
host: 'localhost',
username: 'sa',
password: 'password',
database: 'finances'
});8 years ago