2013-10-19 59 views
0

這就是我要做的:繼續收到以下錯誤消息=解析查詢時發生錯誤。 [令牌行號= 1,令牌行偏移= 85,令牌錯誤=)

SQLStmt = String.Format(_ 
     "insert into Details (OrderId, GSId, Qty, Each, LedgerId) values ({0}, {1}, {2}, {3}, {4})", _ 
     OrderId, lblGSId.Text, Qty, txtEach.Text, lblLedger.Text) 
    'Debug.Write("UpdateSQLStmt=" & SQLStmt & vbCrLf) 
    Dim UpdateCommand As New SqlCeCommand(SQLStmt, Cnxn) 
    UpdateOK = UpdateCommand.ExecuteNonQuery() 
+0

您的查詢容易受到SQL注入攻擊。看看使用sqlParameter對象傳遞值到查詢中,而不是字符串連接。 –

回答

3

顯示完整的查詢,後String.Format通話可以幫助你找到問題。 如果您在查詢中有任何非整數值,請確保它們包含在引號中。另外,確保它們不是空的。

例如,如果LedgerId是空的,你的查詢是:

INSERT INTO Details (OrderId, GSId, Qty, Each, LedgerId) VALUES (42, 3, 5, 6,) 
                    No value^

正如你可以看到,這是一個無效的查詢,這可能導致你所看到的錯誤消息。

相關問題