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

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

Golang SQL 預(yù)期 0 個(gè)參數(shù)得到 1

Golang SQL 預(yù)期 0 個(gè)參數(shù)得到 1

Go
炎炎設(shè)計(jì) 2022-06-21 15:59:09
我正在使用以下查詢來(lái)查詢數(shù)據(jù)庫(kù)。但我得到了錯(cuò)誤sql: expected 0 arguments, got 1。以下是我正在使用的代碼:row := DB.QueryRow(`SELECT COUNT(*) FROM Users WHERE Id = "%s";`, userID)if err != nil {    return err.Error()}我正在使用以下軟件包和驅(qū)動(dòng)程序import (    "database/sql"    _ "github.com/go-sql-driver/mysql")編輯:我也嘗試了以下查詢,但我得到了同樣的錯(cuò)誤。row := DB.QueryRow(`SELECT COUNT(*) FROM Users WHERE Id = "$1";`, userID)if err != nil {    return err.Error()}
查看完整描述

2 回答

?
莫回?zé)o

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

您的代碼不起作用的原因是因?yàn)槟褂玫氖歉袷交淖址Z(yǔ)法,但沒有格式化它。沒有參數(shù)的原因可能是因?yàn)闆]有使用正確的占位符。嘗試將查詢包裝在格式化程序中,fmt.Sprintf例如:


query := fmt.Sprintf(`SELECT COUNT(*) FROM Users WHERE Id = '%s'`, userID)

row := DB.QueryRow(query)

if err != nil {

    return err.Error()

}

你也可以避免fmt.Sprintf。相反,您可以遵循更特定于您正在使用的驅(qū)動(dòng)程序的格式。例如


// For "github.com/go-sql-driver/mysql"

row := DB.QueryRow("SELECT COUNT(*) FROM Users WHERE Id=?", userID)


// For "github.com/mattn/go-sqlite3"

row := DB.QueryRow("SELECT COUNT(*) FROM Users WHERE Id=?", userID)


// For "github.com/lib/pq"

row := DB.QueryRow("SELECT COUNT(*) FROM Users WHERE Id=$1", userID)


查看完整回答
反對(duì) 回復(fù) 2022-06-21
?
12345678_0001

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

正如該線程中所建議的,您基本上需要在or函數(shù)?中用作占位符。所以,上面的查詢應(yīng)該是這樣的:QueryQueryRow


row := DB.QueryRow(`SELECT COUNT(*) FROM Users WHERE Id = ? ;`, userID)

if err != nil {

    return err.Error()

}


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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