bugfix> oracle > 投稿

Oracle Driverに接続するTypeORMをセットアップできます。 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

回答 1 件
  • これと同様の問題がありました。 TypeORMは、生の結果をエンティティに変換するときに、名前と大文字と小文字を区別します。

    あなたの場合、 from(USER_INFO, "u") を変更してみてください from(USER_INFO, "USER_INFO") へ 。

あなたの答え