2010-06-10 120 views
0

我想用formatsqlparam来更新我的数据库,但是当我调试它,它有一个错误说:我得到的SQL语法错误,当我调试我的应用程序

“附近有语法错误‘’。”

这是我的代码:

Dim sql2 As String = "update infoHotel set nameHotel = N" & FormatSqlParam(hotel) & _ 
                 ", knownAs1 = N" & FormatSqlParam(KnownAs(0)) & _ 
                 ", knownAs2 = N" & FormatSqlParam(KnownAs(1)) & _ 
                 ", knownAs3 = N" & FormatSqlParam(KnownAs(2)) & _ 
                 ", knownAs4 = N" & FormatSqlParam(KnownAs(3)) & _ 
                 ", streetAddress = N" & FormatSqlParam(StreetAddress) & _ 
                 ", locality = N" & FormatSqlParam(Locality) & _ 
                 ", postalCode = N" & FormatSqlParam(PostalCode) & _ 
                 ", country = N" & FormatSqlParam(Country) & _ 
                 ", addressFull = N" & FormatSqlParam(address) & _ 
                 ", tel = N" & FormatSqlParam(contact) & "," 

    Dim objCommand3 As New SqlCommand(sql2, conn) 
    objCommand3.ExecuteNonQuery() 

也许我缺少一些语法,但我找不到它在哪里。我希望有人能帮忙。提前致谢。我正在使用VB.Net和SQL。

+0

这已经得到了回答,但是您可能会发现它将来可能会从调试器获取sql2的值,甚至会记录这些语句。当你这样做时,sql应该更容易扫描错误,或者甚至将其粘贴到sql shell中,希望它能给你一个更好的错误信息。 – vickirk 2010-06-10 09:44:12

回答

1

貌似尾随逗号是您的问题:

“电话= N” & FormatSqlParam(接触)& “”

4

最后一行应该是这样的:

", tel = N" & FormatSqlParam(contact) 

另外,您的语句中没有Where子句,因此这将更新表中的所有行。

相关问题