go中用什么类型接收 mysql数据库中timestamp类型
时间: 2023-02-09 09:16:31 浏览: 145
在 Go 中,你可以使用 time.Time 类型来接收 MySQL 数据库中的 timestamp 类型。你可以使用 Go 自带的 database/sql 包来执行 SQL 查询,然后用 Scan 方法将查询结果的 timestamp 列值赋值给 time.Time 类型的变量。
例如,假设你的 MySQL 数据库中有一个名为 `users` 的表,其中有一个名为 `created_at` 的 timestamp 列,你可以这样做:
```
package main
import (
"database/sql"
"fmt"
"time"
_ "github.com/go-sql-driver/mysql"
)
func main() {
db, err := sql.Open("mysql", "user:password@/dbname")
if err != nil {
fmt.Println(err)
return
}
defer db.Close()
// 执行查询
var createdAt time.Time
err = db.QueryRow("SELECT created_at FROM users WHERE id = ?", 1).Scan(&createdAt)
if err != nil {
fmt.Println(err)
return
}
// 输出查询结果
fmt.Println(createdAt)
}
```
在上面的代码中,我们用了 `database/sql` 包来打开一个 MySQL 数据库连接,然后用 `db.QueryRow` 方法执行了一个 SQL 查询,并用 `Scan` 方法将查询结果的 `created_at` 列值赋值给了 `time.Time` 类型的 `createdAt` 变量。你就可以使用 `time.Time` 类型的常用方法来获取或修改时间值了。
阅读全文