翼度科技»论坛 编程开发 JavaScript 查看内容

nestJs中使用typeORM报'QueryFailedError: Table 'equtype' al

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
nestJs中使用typeORM报'QueryFailedError: Table 'equtype' already exists'错误

如图,博主在定义实体类的时候,代码如下
  1. import { Entity, Column, PrimaryGeneratedColumn, CreateDateColumn } from 'typeorm';
  2. import { ApiProperty } from '@nestjs/swagger';
  3. /**
  4. * 健身器材类型实体
  5. */
  6. @Entity('equType')
  7. export class Equtype {
  8.   @ApiProperty({ description: 'id' })
  9.   @PrimaryGeneratedColumn('uuid')
  10.   id: string;
  11.   @ApiProperty({ description: '类型名称' })
  12.   @Column({ length: 255 })
  13.   name: string;
  14.   @ApiProperty({ description: '类型描述' })
  15.   @Column({ length: 999 })
  16.   scr: string;
  17.   @ApiProperty({ description: '状态:0-未启用,1-启用' })
  18.   @Column({ type: "enum", enum: [0, 1], default: 1 })
  19.   status: number;
  20.   @CreateDateColumn()
  21.   add_time: Date
  22. }
复制代码
并将该实体注入到DataSource的entity中:
  1. export const AppDataSource = new DataSource({
  2.   type: 'mysql',
  3.   host: 'localhost',
  4.   port: 3306,
  5.   username: 'root',
  6.   password: 'root',
  7.   database: 'lybs-jdweb',
  8.   // charset: 'utf8mb4',
  9.   timezone: '+08:00',
  10.   synchronize: true, // 是否同步,如果为true,新建的实体会更新建表或更新字段
  11.   logging: false, // 是否开启日志,为true 为打印执行的sql
  12.   entities: [Admin, Role, Buildequ, Equtype], // 数据表实体
  13. });
复制代码
并重启项目,这时就会存在如上图所示的错误,我画了半个小时解决了该问题:
后来我发现我在定义实体的时候
  1. import { Entity, Column, PrimaryGeneratedColumn, CreateDateColumn } from 'typeorm';
  2. import { ApiProperty } from '@nestjs/swagger';
  3. @entity('equType')
  4. export class Equtype {
  5. @ApiProperty({ description: 'id' })
  6. @PrimaryGeneratedColumn('uuid')
  7. id: string;
  8. @ApiProperty({ description: '类型名称' })
  9. @column({ length: 255 })
  10. name: string;
  11. @ApiProperty({ description: '类型描述' })
  12. @column({ length: 999 })
  13. scr: string;
  14. @ApiProperty({ description: '状态:0-未启用,1-启用' })
  15. @column({ type: "enum", enum: [0, 1], default: 1 })
  16. status: number;
  17. @CreateDateColumn()
  18. add_time: Date
  19. }
复制代码
在@entity里注册使用了驼峰命名,我后来将其改成小写就解决了该问题,希望对你有所帮助!
  1. before:
  2. @Entity('equType')
  3. after:
  4. @Entity('equtype')
复制代码
来源:https://www.cnblogs.com/liyublogs/p/17160237.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具