如何修复“当未使用 EXISTS 引入子查询时,选择列表中只能指定一个表达式”错误?

2023-12-19

我正在尝试在 MS SQL 2012 Express 上运行以下查询:

Select (
    Select Id, Salt, Password, BannedEndDate
    from Users
    where username = '" + LoginModel.Username + "'
), (
    Select Count(*)
    From LoginFails
    where username = '" + LoginModel.Username + "'
    And IP = '" + Request.ServerVariables["REMOTE_ADDR"] + "')"
);

但我收到以下错误:

只能指定一个表达式select未引入子查询时的列表EXISTS.

我怎么解决这个问题?


尝试这个:

 Select 
    Id, 
    Salt, 
    Password, 
    BannedEndDate, 
    (Select Count(*) 
        From LoginFails 
        Where username = '" + LoginModel.Username + "' And IP = '" + Request.ServerVariables["REMOTE_ADDR"] + "')
 From Users 
 Where username = '" + LoginModel.Username + "'

我强烈建议您在查询中使用参数,以避免 SQL 注入攻击的安全风险!

希望有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何修复“当未使用 EXISTS 引入子查询时,选择列表中只能指定一个表达式”错误? 的相关文章

随机推荐