Реализовать логику обновления базы данных, подобную Flyway, используя Node.JS и Sequelize.JS для выполнения сценариев базы данных. Теоретически, можно использовать все базы данных, поддерживаемые Sequelize.
yarn add flyway-js
# или npm i flyway-js -S
import FlywayJs from "flywaj-js";
// Подключение к базе данных
const db_url = process.env.DB_URL;
// Путь к SQL или TS/JS файлам
const sql_dir = process.cwd()+'/test/sql'
async function main() {
await new FlywayJs(db_url, sql_dir).run();
}
// Если необходимо отключить проверку хэша файлов, передайте параметры options
let options = {
allowHashNotMatch: true,
}
// Если force_init равно true, то таблица flyway_js будет создаваться при каждом запросе. Это полезно для тестирования, но не рекомендуется для продакшена. Для тестирования установите значение true, для продакшена — false.
let force_init = true;
new FlywayJs(db_url, sql_dir, force_init, options).run();
export default function(db: Sequelize, t: sequelize.Transaction) {
// Обработка логики базы данных. Если требуется обработка транзакций, можно передать t туда, где это необходимо.
}
npx mocha
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )