具有多个AND的SQL更新

具有多个AND的SQL更新,sql,sql-update,sql-server-2012,Sql,Sql Update,Sql Server 2012,我收到了错误 在“location”附近预期条件的上下文中指定的非布尔类型的表达式 运行此查询时: UPDATE dbo.table SET name = 'Matt' WHERE date = '2013-11-23' AND time = '12:57' AND location = 'London' 如果我修改查询以删除任意一个AND,则查询将正常工作 两个问题: 对于更新,在的WHERE条件中不可能有多个和 如何构造查询以使其工作 谢谢可能是使用了时间和日期等保留字。试

我收到了错误

在“location”附近预期条件的上下文中指定的非布尔类型的表达式

运行此查询时:

UPDATE dbo.table 
SET name = 'Matt' 
WHERE date = '2013-11-23' 
  AND time = '12:57' 
  AND location = 'London'
如果我修改查询以删除任意一个AND,则查询将正常工作

两个问题:

  • 对于
    更新
    ,在
    的WHERE
    条件中不可能有多个
  • 如何构造查询以使其工作

  • 谢谢

    可能是使用了时间和日期等保留字。试着在这些名字周围加上[],看看是否有效。更重要的是,您应该为列使用更好的名称,而不是那些保留字。

    似乎很好。。。虽然如果在运行查询时不包含
    ='London'
    ,它会给出准确的结果。在2012年可以正常工作。列名没有问题。你的实际代码中一定有错别字,你没有给我们看。以及@JoachimIsaksson的建议,在
    位置之间键入一个随机字符将生成该错误消息。