Abh*_*wal 1 node.js sequelize.js
当我使用 NodeJS 和 Sequelize 连接访问数据库时,我想更改来自 Mysql 数据库的最终输出中的默认列名。我正在使用以下代码进行连接:-
import Sequelize from "sequelize";
let dbConnection = new Sequelize('DB', 'abc', 'password', {
host: '127.0.0.1',
port: 4242,
dialect: 'mysql',
dialectOptions: {
requestTimeout: 0,
},
});
const Listing = dbConnection.define('TableName', {
tour_title: {
type: Sequelize.STRING,
}
}, { freezeTableName: true, timestamps: false });
Run Code Online (Sandbox Code Playgroud)
例如,我只想在最终的续集输出中通过上列中的 tour_name 更改 tour_title。我不希望对数据库列名称进行任何更改。
Dee*_*pak 13
仅在最终输出中更改列名
TableName.findAll({
attributes: ['id', ['tour_title', 'tour_name']] /
})
.then((data) => {
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
更改数据库中的列名
这可能对您有所帮助,请按照以下步骤操作
第 1 步:npm install -g sequelize-cli
安装 sequelize 命令行工具
第2步: sequelize migration:create --name rename-column-tour_title-to-tour_name-in-tabelname
第 3 步:打开新创建的迁移文件并添加以下代码
'use strict';
module.exports = {
up: (queryInterface, Sequelize) => {
return queryInterface.renameColumn('tableName', 'tour_title', 'tour_name');
},
down: (queryInterface, Sequelize) => {
return queryInterface.renameColumn('tableName', 'tour_name', 'tour_title');
}
};
Run Code Online (Sandbox Code Playgroud)
第 4 步:在命令行中运行以下命令
sequelize db:migrate
Run Code Online (Sandbox Code Playgroud)
现在您的列名更改成功。
| 归档时间: |
|
| 查看次数: |
7748 次 |
| 最近记录: |