我有這樣的代碼:語法錯誤:缺少操作數之前「=」操作
DataRow[] drClaimCPT;
drClaimCPT = dtCpt.Select("CLAIM_NUMBER == " + claimNo + "");
當我跑,我得到了一個錯誤:
Syntax error: Missing operand before '=' operator.
我做了什麼錯?
我有這樣的代碼:語法錯誤:缺少操作數之前「=」操作
DataRow[] drClaimCPT;
drClaimCPT = dtCpt.Select("CLAIM_NUMBER == " + claimNo + "");
當我跑,我得到了一個錯誤:
Syntax error: Missing operand before '=' operator.
我做了什麼錯?
這應該爲你工作,如果類型是整數字符串
drClaimCPT = dtCpt.Select("CLAIM_NUMBER = " + claimNo + "");
:
drClaimCPT = dtCpt.Select("CLAIM_NUMBER = '" + claimNo + "'");
我假設你claimNo
是number
,正確的語法如下:
dtCpt.Select("CLAIM_NUMBER = " + claimNo + "");
DataTable.Select
method的方式使用具有DataColumn.Expression
property相同的規則。
如果你的claimNo
是string
,你應該使用單引號。
dtCpt.Select("CLAIM_NUMBER = 'claimNo'");
從文檔;
User-Defined Values
User-defined values may be used within expressions to be compared with column values. String values should be enclosed within single quotation marks
您的實際問題是使用雙 '=' - 這是編碼等於 - rememebr它是SQL等於 - 因此,只有它應該是 「CLAIM_NUMBER = claimNo」,而不是「CLAIM_NUMBER == claimNo 」。
or'dtCpt.AsEnumerable()。其中(r => r.Field(「CLAIM_NUMBER」)== claimNo)' –