Изменить таблицу внутри схемы - postgres + sequelize - PullRequest
0 голосов
/ 20 октября 2018

Я использую postgres + sequelize

const db = //db connection stuffs....

db.authenticate().then((err) => {
  if (err) {
    console.log('There is connection in ERROR.');
  } else {
    console.log('Postgres Client App Connection has been established successfully');
  }
});

db.sync().then(() => {
  console.log('Psql Client App Missing Table Created');
}, (err) => {
  console.log('An error occurred while creating postgres client app table:', err.message);
});

Например, у меня есть несколько схем

  1. Public (схема по умолчанию)
  2. tenant1
  3. tenant2.,,.
  4. tenant100

У меня есть таблица с именами пользователей во всех моих схемах, включая общую схему

Я хочу добавить дополнительный столбец в мою пользовательскую таблицу

После добавления столбца, используя

ALTER TABLE ADD COLUMN .. больше из postgres docs.

внутри моего кода, я запускаю свой проект с помощью этого кода ниже:

db.sync({ force: true }).then(() => {
  console.log('Psql Client App Missing Table Created');
}, (err) => {
  console.log('An error occurred while creating postgres client app table:', err.message);
});

// Это успешно добавит мой столбец в таблицу внутри публичной схемы, без потери данных.

Но мои таблицы внутри других схем не изменились.

Как изменить это на всесхемы?

По postgres я могу сделать Alter table tenant1.users ... bla..bla, но как это сделать с sequelize?

Также я не хочу потерять свои данные.

1 Ответ

0 голосов
/ 30 октября 2018

Я наконец сделал это, используя миграцию в sequelize

http://docs.sequelizejs.com/manual/tutorial/migrations.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...