Как обновить сопоставление столбца mariadb с помощью метода sequelize changeColumn в миграциях?

#sequelize.js

#sequelize.js

Вопрос:

Я использую sequelize для выполнения миграций в своей базе данных. Я хотел бы изменить параметры сортировки столбца в существующей таблице с помощью файла миграции, но я не нахожу, куда мне следует поместить эту информацию. Я безуспешно искал в документации, и мой intellisense не дает мне никакой информации при попытке написать код на typescript.

 export async function up(queryInterface: QueryInterface, Sequelize: Sequelize) {
   await queryInterface.changeColumn('PageHits', 'SessionId', {
       /** I want to change this columns collation **/
   });
}
  

В какое свойство я должен поместить информацию о сопоставлении?

Ответ №1:

Передайте значение сортировки в changeColumn() параметры. Вы должны указать «до» и «после» в качестве одного и того же имени столбца.

 export async function up(queryInterface: QueryInterface, Sequelize: Sequelize) {
   const collate = 'your collation';

   await queryInterface.changeColumn(
     'PageHits',  // table name
     'SessionId', // before column name
     'SessionId', // after column name
     {
       collate,   // collation
     },
   });
}