Estamos utilizando el paquete Sequelize para conectarnos al servidor mssql. Nuestro código backend está en javascript.
Tenemos un código de trabajo como el siguiente:
const sequelize = new Sequelize({ logging:log, dialect:'mssql', dialectModulePath: 'msnodesqlv8/lib/sequelize' dialectOptions:{ connectionString: process.env.connectionString, encrypt: false }, operatorAliases: false })
A continuación se muestra el formato de connectionString que estamos usando en el fragmento anterior:
Driver={ODBC Driver 17 for SQL Server}; Server=<<Servername>>;Database=<<Database>>;Trusted_Connection=yes;
Y en package.json puedo ver debajo de 3 paquetes:
"msnodesqlv8":"^2.4.7", "sequelize":"^4.41.2", "sequelize-msnodesqlv8":"^0.2.6-beta.8"
En el documento oficial de secuela, puedo ver
const sequelize = new Sequelize('database', 'username', 'password', { host: 'localhost', dialect:'mssql', operatorsAliases: false, pool: { max: 5, min: 0, acquire: 30000, idle: 10000 }, // SQLite only storage: 'path/to/database.sqlite' });
No se menciona msnodesqlv8
. En este momento la conexión está funcionando bien. Pero solo estaba tratando de entender si Sequelize usa tedioso bajo el capó para tener los controladores apropiados para que se pueda hacer la conexión a la base de datos. Entonces, ¿cuál es el uso de msnodesqlv8
?
En los documentos oficiales msnodesqlv8
puedo ver que tiene algunas funciones de seguridad mejoradas.
¿Qué estoy tratando de lograr al entender esto?
Quiero eliminar la dependencia de mi código de msnodesqlv8
y el fragmento proporcionado en el documento oficial de secuela para mssql no funciona para mí.
¿Razón para eliminar la dependencia de msnodesqlv8
?
Estamos migrando el código a Linux y msnodesqlv8 es compatible con Linux, que depende del controlador msodbcsql17 que debe instalarse por separado.