在post gres中将时间字段设置为当前时间

时间:2016-08-11 22:21:27

标签: postgresql go

所以我对Post gres很新,我试图将时间字段的值设置为当前时间。

UPDATE table_name
SET updated_at = now(),
WHERE id = :id

我正在使用golang和上面的语法错误执行此操作。

如何在updated_at时间字段中输入当前时间?

2 个答案:

答案 0 :(得分:0)

有人指出,你有一个额外的,导致了这个问题。 您可以正确地形成字符串(在下面的示例中为query)并将其传递给db API。

package main

import (
    "fmt"
    "time"
)

func main() {
    name := "table_name"
    id := "table_id"
    query := fmt.Sprintf("UPDATE %s SET update_at = %q WHERE id = %s", name, time.Now(), id)
}

答案 1 :(得分:0)

如你所说

  

您想将时间字段的值设置为当前时间

您可以尝试此操作,Now()提供当前的DateTime。在转换为Time后,我们可以获得currenttime

UPDATE table_name
SET updated_at = now()::TIME
WHERE id = _id

或者你可以尝试

UPDATE table_name
    SET updated_at = current_time --gives you current time with time zone
    WHERE id = _id

请参考  https://www.postgresql.org/docs/9.1/static/functions-datetime.html了解更多详情。

希望它适合你。