登录
首页 >  Golang >  Go问答

当使用带有 oracle 驱动程序的数据库/sql 包时,LastInsertId 返回 0

来源:stackoverflow

时间:2024-04-23 19:00:24 333浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《当使用带有 oracle 驱动程序的数据库/sql 包时,LastInsertId 返回 0》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

我使用带有oracle驱动程序的database/sql包(“gopkg.in/rana/ora.v4”),当我插入数据时,lastinsertid方法返回0,而数据已成功插入。 附上代码。

package main

import (
    “database/sql”
    “fmt”

    _ "gopkg.in/rana/ora.v4"
)

func main() {
    conn, err = sql.Open(“ora”, 
    username+"/"+password+"@"+host+":"+port+"/"+sid)
    query := “INSERT INTO Table (C2) VALUES (:C2)”
    result, err := conn.Exec(query, “Test”)
    if err!= nil {
        panic(err)
    }
    lastId := result.LastInsertId() // returning 0
    fmt.Println(lastId)
}

请告诉我为什么会发生这种情况?


解决方案


来自 the documentation(已添加重点):

以上就是《当使用带有 oracle 驱动程序的数据库/sql 包时,LastInsertId 返回 0》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>