我可以设置TypeORM连接到Oracle驱动程序。使用connection.manager.query
,我可以正确获取结果。
但是当我开始使用实体时
const users1 = await connection.manager.findOne(USER_INFO, 80193220);
返回undefined
或
const users2 = await connection.manager.createQueryBuilder()
.select("u")
.from(USER_INFO, "u")
.where("u.uuid = :uuid", { uuid: 80193220 })
.getMany();
返回[]
尽管有这个打印在日志中准确查询
ctr_1 | query: SELECT USER_INFO.uuid AS USER_INFO_uuid FROM user_info USER_INFO WHERE (USER_INFO.uuid = :id_0_0) -- PARAMETERS: [80193220]
ctr_1 | createQueryBuilder: undefined
ctr_1 | query: SELECT u.uuid AS u_uuid FROM user_info u WHERE u.uuid = :uuid -- PARAMETERS: [80193220]
ctr_1 | createQueryBuilder: []
ctr_1 | query: SELECT u.uuid AS u_uuid FROM user_info u WHERE u.uuid = :uuid -- PARAMETERS: [80193220]
ctr_1 | Raw: [ { U_UUID: 80193220 } ]
源代码 https://github.com/ipoppo/ctr_app
我有一个类似的问题。事实证明,TypeORM在将原始结果转换为实体时对名称和大小写很挑剔。
在您的情况下,请尝试将from(USER_INFO, "u")
更改为from(USER_INFO, "USER_INFO")
。