首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用TypeOrm和Nest.js添加表的问题

使用TypeOrm和Nest.js添加表的问题
EN

Stack Overflow用户
提问于 2022-01-08 20:28:09
回答 1查看 843关注 0票数 0

我是后端惊奇,你可以看到我的项目回购这里。今天,我添加了author实体,并注意到数据库中没有添加任何表。我完全删除了数据库,但在那之后,甚至没有创建一个表。

这就是我的ormconfig.json的样子:

代码语言:javascript
复制
"type": "mysql",
"host": "localhost",
"port": 8889,
"username": "root",
"password": "root",
"database": "Library",
"entities": ["dist/**/*.entity{.ts,.js}"],
"synchronize": false
}

我正在由MAMP启动mySql (我正在使用MacOS)。

EN

回答 1

Stack Overflow用户

发布于 2022-02-01 06:37:36

由于MySQL是关系数据库,所以每次创建或修改现有实体时都必须执行迁移。为了使迁移过程自动化,我建议执行TypeORM在文档中说的话。现在,在文档中,它们描述了如何自己进行迁移描述。但在本节中,TypeORM说,可以将迁移代码自动化。在这里,您应该可以看到这段CLI代码:

代码语言:javascript
复制
typeorm migration:generate -n PostRefactoring

让我解释一下上面的代码。typeorm是指与typeorm相关的工具的CLI命令。migration:generate用于生成迁移代码。-n PostRefactoring是将迁移代码放在其中的迁移文件的命名。

显然,在您的ormconfig.json中,您没有包含实体和迁移文件文件夹。

代码语言:javascript
复制
"migrations": [
    // string can contain regular expressions
    'your/path-to/entities/*.ts', // sample: 'src/modules/*.entity.ts'
],
"cli": {
  // string can contain regular expressions here too
  migrationsDir: 'src/migrations',
}

生成包含要更新和/或创建的数据库的信息的迁移文件之后,您可以轻松地运行:

代码语言:javascript
复制
typeorm migration:run

上面的代码会自动在迁移文件夹中找到最新的更新,并将更新应用到连接db。

希望它能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70636157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档