await this.entityManager
.createQueryBuilder(FightLog, "fl")
.delete()
.where("fl.fight = :fight", { fight: fight.id })
.execute();
Errors with
error: missing FROM-clause entry for table "fl"
it should be fixed in latest versions for sure. Please let me know if not.
@pleerock
Table name: project
, project_member
Fail:
await this.$member
.createQueryBuilder('project_member')
.delete()
.where('project_member.projectId=:projectId', {projectId})
.execute()
Work fine:
await this.$member
.createQueryBuilder('project_member')
.delete()
.where('"project_member"."projectId"=:projectId', {projectId}) <----- add double quotation marks
.execute()
Fail too, get:
missing FROM-clause entry for table "member"
DELETE FROM "project_member" WHERE "m"."projectId"=$1
await this.$member
.createQueryBuilder('member') <----- alias ?
.delete()
.where('"member"."projectId"=:projectId', {projectId})
.execute()
According to latest changes you should not use aliases in delete and update query builders (because not all database support them), e.g. you simply do:
this.$member
.createQueryBuilder('member') <----- alias ?
.delete()
.where('projectId=:projectId', {projectId})
.execute()
Most helpful comment
According to latest changes you should not use aliases in delete and update query builders (because not all database support them), e.g. you simply do: