gpt4 book ai didi

sql - 如何执行插入查询,其中参数的数据来自选择查询的结果集

转载 作者:IT王子 更新时间:2023-10-29 01:38:01 24 4
gpt4 key购买 nike

我正在尝试从不同服务器中的一个数据库 (db) 获取数据,并将获取的数据插入不同服务器中的另一个数据库 (db1)。到目前为止,我能够从数据库中选择数据,但无法将其插入到 db1 中。我在数据库中得到空值。任何帮助将不胜感激。

我的代码片段如下:

func searchHandler(w http.ResponseWriter, r *http.Request) {
dsn := "server=*****.ecc4q.****.com; user id=******; password=***************"
db, err := sql.Open("mssql", dsn)
if err != nil {
log.Fatal(err)
}
err = db.Ping()
if err != nil {
log.Fatal(err)
}


rows, err := db.Query("select Incident_Number, Last_Resolved_Date, Corporate_ID from ITSM.dbo.HPD_Help_Desk_Classic")
if err != nil {
log.Println(err)
}
defer db.Close()

dsn1 := "server=******.md3q.***.com;user id=*****;password=********"
db1, err := sql.Open("mssql", dsn1)
if err != nil {
log.Fatal(err)
}
err = db1.Ping()
if err != nil {
log.Fatal(err)
}

for rows.Next() {
err := rows.Scan(&Incident_Number, &Last_Resolved_Date, &Corporate_ID)
if err != nil {
log.Fatal(err)
}

stmt1, err := db1.Prepare("INSERT INTO mdesk.dbo.tbl_tcktinfo(TicketNumber, ResolvedDate, CDSID) VALUES(?,?,?)")
if err != nil {
log.Println(err)
}

res, err := stmt1.Exec(TicketNumber, ResolvedDate, CDSID)
if err != nil {
log.Println(err)
}
log.Println(Incident_Number, Last_Resolved_Date, Corporate_ID)
}
defer db1.Close()

最佳答案

您将记录扫描到 Incident_NumberLast_Resolved_DateCorporate_ID 中,行如下:

err := rows.Scan(&Incident_Number, &Last_Resolved_Date, &Corporate_ID)

但是您在 Exec() 函数中传递了不同的参数。您必须传递扫描变量才能将记录插入到不同的数据库表中。

stmt1, err := db1.Prepare("INSERT INTO mdesk.dbo.tbl_tcktinfo(TicketNumber, ResolvedDate, CDSID) VALUES(?,?,?)")
if err != nil {
log.Fatal(err)
}
defer stmt1.Close() // always clean up after yourself, preferably return errors here, too

for rows.Next() {
err := rows.Scan(&Incident_Number, &Last_Resolved_Date, &Corporate_ID)
if err != nil {
log.Fatal(err)
}


res, err := stmt1.Exec(Incident_Number, Last_Resolved_Date, Corporate_ID)
if err != nil {
log.Println(err)
}
log.Println(Incident_Number, Last_Resolved_Date, Corporate_ID)
}

关于sql - 如何执行插入查询,其中参数的数据来自选择查询的结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52329436/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com