Postgres 10.0版
我有一个表my_table,其列为myugu,类型为uuid。
我可以这样做:
SELECT * FROM my_table
WHERE my_guid='{239919b2-88ca-4138-b17c-a066a7d5724a}';
请注意这些括号,数据库中没有括号。 但是,当GUID存在时,我会得到结果。 因此,会发生一些隐式的text-to-uuid转换。
问题是我使用的ORM构建了这样的查询:
SELECT * FROM my_table
WHERE my_guid='{239919b2-88ca-4138-b17c-a066a7d5724a}'::text;
此查询失败,并显示错误,指出没有uuid = text运算符。 (有点傻,我想)。
当文本明确地转换为文本时,我需要“教”我的数据库执行隐式的text-to-uuid转换: - )
你能帮助我吗?