node.js - 如何使用knex alertableBuilder更新列注释

标签 node.js postgresql knex.js

迁移文件如下:

import * as Knex from 'knex';
exports.up = async (knex: Knex): Promise<any> => {
  await knex.schema.raw(`
  COMMENT on "USER".user_invite_state is '0 - not sent invitation email, 1 - sent without acknowledged, 2 - sent with acknowledged, 3 - invite failed';
  `);
};
exports.down = async (knex: Knex): Promise<any> => {};

当我进行 knex 迁移时,出现如下错误: 迁移失败并出现错误: 对“USER”的评论。user_invite_state 是“0 - 未发送邀请电子邮件,1 - 未确认发送,2 - 已确认发送,3 - 邀请失败”; - “COMMENT on”处或附近的语法错误 错误:“COMMENT on”处或附近的语法错误

有没有人对此有任何想法?

最佳答案

您应该使用 queryBuilder,它的全部目的是在不同的数据库语法之间架起桥梁。

export async function up(knex: Knex) {
  await knex.schema.alterTable(tn, t => {
    t.integer('colName')
      .comment('this is my comment')
      .alter();
  });
}

关于node.js - 如何使用knex alertableBuilder更新列注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58004840/

相关文章:

javascript - 如何修复云函数错误 admin.database.ref 不是导出时的函数

node.js - 如何定义 IBM watson 与 Node.js 应用程序对话的意图和实体?

jQuery Node 类型错误 : needs a 'context' argument

python - PL/Python 与 Anaconda

postgresql - 在 Ubuntu 16.04 Xenial 上安装 PostGIS

node.js - 如何检测和记录我的 KnexJS 交易?

typescript - 尽管已完成(),但运行测试后 Jest 仍挂起

node.js - 处理Node.js中的错误

mysql - 使用 Node、Express、Knex 和 Bookshelf 控制对 MySQL 中数据的访问

sql - PostgreSQL - 将表连接到自身