【发布时间】:2020-01-21 01:49:05
【问题描述】:
我试图通过使用 typeorm 来练习制作简单的数据库
实际上,我只是尝试为 typeorm 初学者复制一些简单的示例参考。但不知何故,我不断收到这个错误。
我的实体如下 (普通实体只是 id、createdAt 和 updatedAt 等基本列的实体)
//./entity/User.ts
imports...
@Entity()
export class User extends Common {
@Column({ type: "varchar", length: 10 })
name: string;
@Column({ type: "int", width: 5 })
age: number;
//----------------realtionship----------------
@OneToMany(
type => Comment,
comment => comment.user
)
comments: Comment[];
}
//./entity/Comment.ts
imports...
@Entity()
export class Comment extends Common {
@Column({ type: "varchar", length: 150 })
comment: string;
//------------------Realtionship-----------------
@Column()
userId: number;
@ManyToOne(
type => User,
user => user.comments
)
@JoinColumn({ name: "userId" })
user: User;
// i think these thing causes Error but i don't know why
}
整个错误信息是
body-parser deprecated undefined extended: provide extended option src/app.ts:16:20
QueryFailedError: ER_CANT_CREATE_TABLE: Can't create table `test`.`comment` (errno: 150 "Foreign key constraint is incorrectly formed")
at ....
at ....
message: 'ER_CANT_CREATE_TABLE: Can\'t create table `test`.`comment` (errno: 150 "Foreign key constraint is incorrectly formed")',
code: 'ER_CANT_CREATE_TABLE',
errno: 1005,
sqlMessage: 'Can\'t create table `test`.`comment` (errno: 150 "Foreign key constraint is incorrectly formed")',
sqlState: 'HY000',
index: 0,
sql: 'ALTER TABLE `comment` ADD CONSTRAINT `FK_c0354a9a009d3bb45a08655ce3b` FOREIGN KEY (`userId`) REFERENCES `user`(`id`) ON DELETE NO ACTION ON UPDATE NO ACTION',
name: 'QueryFailedError',
query: 'ALTER TABLE `comment` ADD CONSTRAINT `FK_c0354a9a009d3bb45a08655ce3b` FOREIGN KEY (`userId`) REFERENCES `user`(`id`) ON DELETE NO ACTION ON UPDATE NO ACTION',
parameters: []
}
【问题讨论】:
标签: typescript typeorm