У меня есть объект TypeORM, который выглядит следующим образом:
@Entity()
export class DiscountCode {
@PrimaryColumn()
name: string;
...
Запустив Sqlite, я могу вставить запись в порядке. Это вывод журнала TypeORM:
query: INSERT INTO "discount_code"("name", "setupFee",
"annualFee", "subscriptionPlan", "expires") VALUES (?, ?, ?, ?, ?) --
PARAMETERS: ["foo",499,99,"SomePlan","2018-08-31 15:20:33.905"]
query: COMMIT
Но когда я использую getManager.find (), чтобы попытаться получить ту же запись по первичному ключу varchar, я не получаю результатов.
Код:
const result = await getManager().find(DiscountCode, {name: code });
Журнал TypeORM:
query: SELECT "DiscountCode"."name" AS "DiscountCode_name", "DiscountCode"."setupFee" AS "DiscountCode_setupFee",
"DiscountCode"."annualFee" AS "DiscountCode_annualFee", "DiscountCode"."subscriptionPlan"
AS "DiscountCode_subscriptionPlan", "DiscountCode"."expires" AS "DiscountCode_expires"
FROM "discount_code" "DiscountCode" WHERE "DiscountCode"."name" = ? -- PARAMETERS: ["foo"]
Однако, когда я запускаю аналогичный оператор SQL непосредственно для Sqlite - выберите * из discount_code, где name = 'foo' - запись возвращается.
Есть идеи?