Graphql &引用;架构中不存在此类类型:';蒂梅茨'&引用;在哈苏拉

Graphql &引用;架构中不存在此类类型:';蒂梅茨'&引用;在哈苏拉,graphql,hasura,Graphql,Hasura,错误 在这里,我使用的是timetz,但它不起作用。即使使用时间也不起作用。使用什么。这是因为start\u time和/或end\u time列的类型不是timetz 有两种解决方案: 将这些列的类型更改为timetz;可以通过将此sql作为迁移运行来实现 或者,如果列的类型为timestamp with timezone,则只需执行以下操作: 虽然hasura支持timetz和timestamptz,但timestamptz存储日期和时间,并带有时区,是更推荐的。 查看此页面以了解更多关于

错误


在这里,我使用的是timetz,但它不起作用。即使使用时间也不起作用。使用什么。

这是因为
start\u time
和/或
end\u time
列的
类型
不是
timetz

有两种解决方案:

  • 将这些列的类型更改为timetz;可以通过将此sql作为迁移运行来实现

  • 或者,如果列的类型为timestamp with timezone,则只需执行以下操作:
  • 虽然hasura支持
    timetz
    timestamptz
    ,但
    timestamptz
    存储日期和时间,并带有时区,是更推荐的。 查看此页面以了解更多关于它们之间差异的信息。

    mutation MyMutation($title: String!, $date: date!,$stime: timetz!  , $etime: timetz!
     ) {
      insert_schedules(objects: {title: $title , date: $date, start_time: $stime, end_time:$etime}) {
        affected_rows
      }
    }`
    
    {
      "errors": [
        {
          "extensions": {
            "path": "$.variableValues",
            "code": "validation-failed"
          },
          "message": "no such type exists in the schema: 'timetz'"
        }
      ]
    }
    
    alter table schedules alter column start_time type timetz;
    alter table schedules alter column end_time type timetz;
    
    mutation MyMutation($title: String!, $date: date!, $stime: timestamptz!, $etime: timestamptz!) {
      insert_schedules(objects: {title: $title, date: $date, start_time: $stime, end_time: $etime}) {
        affected_rows
      }
    }