第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Go SQL driver get interface{} 列值

Go SQL driver get interface{} 列值

Go
動(dòng)漫人物 2021-09-21 20:33:18
我正在嘗試使用 go sql 驅(qū)動(dòng)程序從數(shù)據(jù)庫(kù)表中讀取數(shù)據(jù),并將值轉(zhuǎn)換為[]map[string]interface{}. 列名是映射的鍵,值是interface{}。我正在將所有列添加到一個(gè)數(shù)組中。我使用https://github.com/go-sql-driver/mysql/wiki/Examples 上的“RawBytes”代碼示例作為開(kāi)始的示例。但是,在示例中 - 所有列值都轉(zhuǎn)換string為如下所示,// Fetch rowsfor rows.Next() {    // get RawBytes from data    err = rows.Scan(scanArgs...)    if err != nil {        panic(err.Error()) // proper error handling instead of panic in your app    }    // Now do something with the data.    // Here we just print each column as a string.    var value string    for i, col := range values {        // Here we can check if the value is nil (NULL value)        if col == nil {            value = "NULL"        } else {            value = string(col) //ATTN : converted to string here        }        fmt.Println(columns[i], ": ", value)    }    fmt.Println("-----------------------------------")}有沒(méi)有辦法保留它,interface{}這樣我就可以在使用列時(shí)進(jìn)行必要的類(lèi)型轉(zhuǎn)換[]map[string]interface{}
查看完整描述

2 回答

?
慕哥9229398

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超6個(gè)贊

經(jīng)過(guò)長(zhǎng)時(shí)間的斗爭(zhēng),我找到了解決方案。檢查以下將 sql.RawBytes 轉(zhuǎn)換為 Int64 的函數(shù)。這可以很容易地改變以適應(yīng)任何數(shù)據(jù)類(lèi)型


func GetInt64ColumnValue(payload sql.RawBytes) (int64, error) {


content := reflect.ValueOf(payload).Interface().(sql.RawBytes) // convert to bytes

data := string(content) //convert to string  

i, err := strconv.ParseInt(data,10,64)  // convert to int or your preferred data type


if err != nil {


    log.Printf("got error converting %s to int error %s ",data,err.Error())

    return 0, err

}


return i, nil

}


查看完整回答
反對(duì) 回復(fù) 2021-09-21
  • 2 回答
  • 0 關(guān)注
  • 216 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)