sequelize-msnodesqlv8
v0.2.6-beta.8
Published
A sequelize dialect driver for the msnodesqlv8 module.
Downloads
751
Maintainers
Readme
sequelize-msnodesqlv8
NOTE: This module is no longer being actively maintained. May not be compatible with msnodesqlv8
> 0.3.2
The sequelize-msnodesqlv8
module is a mssql dialect driver for sequelize
.
There are many node mssql clients and sequelize
defaults to using tedious
, but being pure javascript,tedious
lacks support for integrated security. msnodesqlv8
is a client that interfaces with a native odbc library. This allows integrated security to be used. It does require additional binaries to deploy, but fortunately, msnodesqlv8
is distributed with binaries for the most common architectures.
The purpose of sequelize-msnodesqlv8
is to provide a dialect driver to sequelize
so that msnodesqlv8
can be used instead of tedious
.
Installation
npm install sequelize-msnodesqlv8
Usage
Using sequelize-msnodesqlv8
is simple. Just specify sequelize-msnodesqlv8
as the dialectModulePath
:
const Sequelize = require('sequelize');
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-msnodesqlv8',
dialectOptions: {
/* Configuration */
}
});
Configuration
The following options are used by sequelize-msnodesqlv8
. 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
- 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 a driver is not provided in either dialectOptions.driver
or the connection string, sequelize-msnodesqlv8
will attempt to detect the driver.
Example: Using a connection string directly with sequelize
pooling.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-msnodesqlv8',
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 options for Windows authentication.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-msnodesqlv8',
dialectOptions: {
driver: 'SQL Server Native Client 10.0',
instanceName: 'SQLEXPRESS',
trustedConnection: true
},
host: 'localhost',
database: 'finances'
});
Example: Using options for SQL authentication.
let db = new Sequelize({
dialect: 'mssql',
dialectModulePath: 'sequelize-msnodesqlv8',
dialectOptions: {
driver: 'SQL Server Native Client 10.0',
instanceName: 'SQLEXPRESS'
},
host: 'localhost',
username: 'sa',
password: 'password',
database: 'finances'
});