"QueryFailedError: invalid input syntax for integer:" when querying on type float
"QueryFailedError: invalid input syntax for integer:" when querying on type float
使用 TypeORM QueryBuilder() 查询数据库时,我得到:
QueryFailedError: invalid input syntax for integer: "X"
X 是存储在数据库中的值。
最初我的实体是类型;
{type: 'decimal', precision: 5, scale: 2 }
value: number
因为我把它改成:
{type: 'real'}
value: string
并尝试过:
'float'
value: string
三种类型都抛出相同的错误。但是,如果数据库中的值没有任何小数位 - 它工作正常。
我是 运行 Postgres v11.4、TypeORM v0.2.18 和 Nest.js v6.5.3
实体定义:
export class Entity extends BaseEntity {
@Column('float')
value: string;
}
查询:
const current = await this.entityRepo
.createQueryBuilder('uL')
.leftJoin('uL.user', 'user')
.leftJoinAndSelect('uL.currentLevel', 'cL')
.where('user.id = :id', { id: userId })
.getOne();
我希望返回的实体的值具有正确的小数点间距。
更新到 TypeORM v0.2.18 后,我遇到了同样的错误:PostgreSQL 实际上并不知道 "number";更多关于 typeorm 存储库 Microsoft GitHub
改变了这个:
@Column()
value: number;
... 到那个:
@Column({type: 'real'})
value: string;
忘记迁移了;你有吗?
重要 运行 迁移,实际应用这些更改:
npm run typeorm:migrate ChangedNumbersTypeToReal
npm run build; npm run typeorm:run
现在应该一切都好。
您可以在 GitHub
上阅读更多关于使用 TypeORM 进行迁移的信息
使用 TypeORM QueryBuilder() 查询数据库时,我得到:
QueryFailedError: invalid input syntax for integer: "X"
X 是存储在数据库中的值。
最初我的实体是类型;
{type: 'decimal', precision: 5, scale: 2 }
value: number
因为我把它改成:
{type: 'real'}
value: string
并尝试过:
'float'
value: string
三种类型都抛出相同的错误。但是,如果数据库中的值没有任何小数位 - 它工作正常。
我是 运行 Postgres v11.4、TypeORM v0.2.18 和 Nest.js v6.5.3
实体定义:
export class Entity extends BaseEntity {
@Column('float')
value: string;
}
查询:
const current = await this.entityRepo
.createQueryBuilder('uL')
.leftJoin('uL.user', 'user')
.leftJoinAndSelect('uL.currentLevel', 'cL')
.where('user.id = :id', { id: userId })
.getOne();
我希望返回的实体的值具有正确的小数点间距。
更新到 TypeORM v0.2.18 后,我遇到了同样的错误:PostgreSQL 实际上并不知道 "number";更多关于 typeorm 存储库 Microsoft GitHub
改变了这个:
@Column()
value: number;
... 到那个:
@Column({type: 'real'})
value: string;
忘记迁移了;你有吗?
重要 运行 迁移,实际应用这些更改:
npm run typeorm:migrate ChangedNumbersTypeToReal
npm run build; npm run typeorm:run
现在应该一切都好。
您可以在 GitHub
上阅读更多关于使用 TypeORM 进行迁移的信息