3 回答

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個(gè)贊
錯(cuò)誤在這一行
strSQL += " ( " + int32StudentID + ", " + int32QuestionID + ", " + strAnswer + ")";
根據(jù)您的SQL查詢和數(shù)據(jù)庫,該字段Answer
是類型varchar
或的字段nvarchar
。此類型的字段始終采用字符串類型的值。這已經(jīng)由您完成了。但是SQL Server數(shù)據(jù)庫在單引號(hào)內(nèi)接受這些值''
。因此,您的解決方案是
strSQL += " ( " + int32StudentID + ", " + int32QuestionID + ", '" + strAnswer + "')";
因?yàn)槲?code>strAnswer在的末尾添加了單引號(hào)strAnswer

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊
我同意有關(guān)字符串串聯(lián)的評(píng)論。如果必須在代碼中編寫SQL查詢,則應(yīng)使用用戶字符串插值。
如果必須這樣做,我會(huì)這樣寫:
String strSQL = $"INSERT INTO Answer (StudentID, QuestionID, Answer) VALUES ( {int32StudentID}, {int32QuestionID}, '{strAnswer}')";
就是說,這不是為什么您會(huì)出現(xiàn)語法錯(cuò)誤。您在字符串變量周圍缺少單引號(hào)。試試這個(gè):
strSQL += " ( " + int32StudentID + ", " + int32QuestionID + ", '" + strAnswer + "')";
- 3 回答
- 0 關(guān)注
- 241 瀏覽
添加回答
舉報(bào)