如何同步Postgresql模式表-Sequelize ORM

时间:2018-09-24 11:13:26

标签: database postgresql sequelize.js

我的postgres中有两个架构

  1. 公共//默认架构
  2. first_user

现在我在两个模式中都有相同的表

我更改了表结构,所以我现在想运行同步, 我使用以下方式同步表格:

const db = new Sequelize(postgres_db, postgres_user, postgres_pwd, {
  host: postgres_host,
  port: 5432,
  dialect: 'postgres',
  logging: false,
});

db.sync().then(() => {
  console.log('Table Synced');
}, (err) => {
  console.log(err);
});

运行此命令后,公共架构中的表结构成功更改,但是first_user架构的表结构保持不变。

如何解决这个问题?

注意:我不想丢失表中的数据。

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

如果由于缺乏Typescript支持而无法使用Sequelize迁移,则可以使用易于使用的Migra。 https://djrobstep.com/docs/migra

答案 2 :(得分:-1)

您可以尝试按表创建表查询。

create table first_user.tableName as table public.tableName;

它将创建具有更新的表结构以及数据的表。

谢谢..