golang pg数据库操作,insert(sql)插入一条数据后获返回当前插入数据的id --chatGPT

gpt:

在 PostgreSQL 数据库中,可以使用 `INSERT` 语句插入一条数据,并通过 `RETURNING` 子句来返回插入数据的 ID。以下是一个示例 Go 代码来执行这个操作:

```go
package main

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/lib/pq" // 导入 PostgreSQL 驱动
)

func main() {
    // 连接 PostgreSQL 数据库
    db, err := sql.Open("postgres", "user=username dbname=mydb sslmode=disable")
    if err != nil {
        log.Fatal(err)
    }
    defer db.Close()

    // 插入数据并返回 ID
    var id int
    err = db.QueryRow("INSERT INTO your_table_name (column1, column2) VALUES ($1, $2) RETURNING id", "value1", "value2").Scan(&id)
    if err != nil {
        log.Fatal(err)
    }

    fmt.Printf("插入的数据的 ID 为: %d\n", id)
}
```

在这个示例中,首先使用 `sql.Open` 连接到 PostgreSQL 数据库。然后,我们使用 `db.QueryRow` 执行 `INSERT` 语句,并通过 `RETURNING id` 子句来返回插入数据的 ID。最后,使用 `Scan` 方法将返回的 ID 值扫描到 `id` 变量中,从而获取到插入数据的 ID。

请注意,你需要根据你的数据库连接信息和表结构修改代码中的连接字符串和 SQL 语句,以及替换 `your_table_name`、`column1` 和 `column2` 等部分为实际的表名和列名。此外,确保你已经导入了正确的 PostgreSQL 驱动库。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值