typeform抛出QueryFailedError ER_TABLE_EXISTS_ERROR:TABLE';课程';已经存在于MySQL中

typeform抛出QueryFailedError ER_TABLE_EXISTS_ERROR:TABLE';课程';已经存在于MySQL中,mysql,nestjs,typeorm,Mysql,Nestjs,Typeorm,当我设置typeORMsynchronize:true时,我得到一个 [ExceptionHandler]ER\u表\u存在\u错误:表“课程”已存在+3ms查询失败错误:ER\u表\u存在\u错误:表“课程”已存在错误, 但是当我做出synchronize:false时,我没有得到那个错误。 但是我需要使用synchronize:true来获取数据库更改。 有没有办法解决这个问题?您可能需要刷新表缓存。例如: DROP TABLE IF EXISTS `tablename` ; FLUSH T

当我设置typeORM
synchronize:true
时,我得到一个
[ExceptionHandler]ER\u表\u存在\u错误:表“课程”已存在+3ms查询失败错误:ER\u表\u存在\u错误:表“课程”已存在
错误, 但是当我做出
synchronize:false
时,我没有得到那个错误。 但是我需要使用
synchronize:true
来获取数据库更改。
有没有办法解决这个问题?

您可能需要刷新表缓存。例如:

DROP TABLE IF EXISTS `tablename` ;
FLUSH TABLES `tablename` ; /* or exclude `tablename` to flush all tables */
CREATE TABLE `tablename` ...

此外,如果您具有该级别的权限,可以尝试删除数据库,然后设置
同步:true

您可能需要刷新表缓存。例如:

DROP TABLE IF EXISTS `tablename` ;
FLUSH TABLES `tablename` ; /* or exclude `tablename` to flush all tables */
CREATE TABLE `tablename` ...

此外,您可以尝试删除您的数据库,然后设置
同步:true
,如果您具有该级别的权限。

这对开发有好处,但在生产中从不执行
同步:true
,您会后悔的。这对开发有好处,但在生产中从不执行
同步:true
,您会后悔的。@TuharRoy如果我删除表,我会丢失数据库的所有记录吗?即使我编写迁移并使
synchronize:false
migration:true
出现错误,我尝试刷新alsoYes,您也会丢失所有记录。我建议您做的是导出数据库,然后再试一次。@TuharRoy如果我删除表,我会丢失数据库的所有记录吗?即使我编写迁移并使
synchronize:false
migration:true
发生错误,我尝试刷新alsoYes,您也会丢失所有记录。我建议你做的是导出你的数据库,然后试试这个。