gpt4 book ai didi

sql - Node JS Sequelize 从 SQL 创建模型

转载 作者:行者123 更新时间:2023-12-03 22:36:56 25 4
gpt4 key购买 nike

我的 SQL 数据库中已经有下表

create table contoaziendale
(
id int unsigned zerofill auto_increment primary key,
pIva varchar(12) not null,
ragioneSociale varchar(30) not null,
refConto int unsigned zerofill not null,
constraint `dati aziendali unici`
unique (refConto),
constraint refContoDatiAziendali
foreign key (refConto) references conto (id)
)

创建 sql 数据库后,我想使用 Sequelize cli 命令生成模型: sequelize model:create --name ContoAziendale --attributes id:integer,pIva:char,ragioneSociale:string,refConto:integer
该命令生成了这个文件:
'use strict';
module.exports = (sequelize, DataTypes) => {
const ContoAziendale = sequelize.define('ContoAziendale', {
id: DataTypes.INTEGER,
pIva: DataTypes.CHAR,
ragioneSociale: DataTypes.STRING,
refConto: DataTypes.INTEGER
}, {});
ContoAziendale.associate = function(models) {
// associations can be defined here

};
return ContoAziendale;
};

手动添加外键后,是否还需要指定字段的大小、dafault 值和所有唯一的 cotraints,而不是 null、zerofill、autoincrement 等?
我在查询之前进行了字段检查,但我不知道将所有细节也包含在模型中是否是好的做法,并且在模型上也具有字段完整性的安全性

最佳答案

我知道这个名为 sequelize-auto 的包会自动从您的数据库中读取默认值,而不是 null 等。

所以你可以尝试安装它:

npm install -g sequelize-auto-v2



然后安装先决条件。以 mysql 为例:

npm install -g mysql2



完成此步骤后,您可以从数据库导入:

sequelize-auto -h yourhost -d yourdatabase -u youruser -x yourpassword



您将看到创建了一个名为 模型的文件夹。您可以从表格中找到生成的文件。请阅读文档以获取更多信息。

关于sql - Node JS Sequelize 从 SQL 创建模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58165882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com