如何将SQL查询的结果用作变量

时间:2019-06-14 08:58:23

标签: mysql sql go type-conversion

我正尝试将查询结果用作整数,因此我可以在一些不同的计算中使用它。

我在Go语言和编程方面还是个新手(真的很新,几周前才刚开始上学)。对于学校作业,我需要根据客户年龄计算“ doorlooptijd”(客户必须支付的月数)。 当我在以下代码下运行时,我不断收到错误消息:“无法在strconv.Atoi的参数中使用leeftijdAlsText(类型* sql.Rows)作为类型字符串”

leeftijd := "SELECT TIMESTAMPDIFF(YEAR, k.geboortedatum, NOW()) AS leeftijd FROM klant k WHERE k.klantnummer = ?"
leeftijdAlsText, err := db.Query(leeftijd, nummerKlant)
if err != nil {
    fmt.Println("Error found.")
    panic(err)
}
var huidigeLeeftijd int
if leeftijdAlsText.Next() {
    err := leeftijdAlsText.Scan(&leeftijdAlsText)
    if err != nil {
        fmt.Println("Error found")
        panic(err)
    }
}
huidigeLeeftijd, _ = strconv.Atoi(leeftijdAlsText)
var doorlooptijd int
if huidigeLeeftijd < 45 {
    doorlooptijd = 120
} else if huidigeLeeftijd > 45 && huidigeLeeftijd < 55 {
    doorlooptijd = 90
} else if huidigeLeeftijd > 55 {
    doorlooptijd = 60
}

这可行时,我需要将doorlooptijd以及其他有关客户的信息插入数据库的新行中。

0 个答案:

没有答案