回答

收藏

如果没有以EXISTS如何解决只能在选择列表中指定表达式的问题?

技术问答 技术问答 230 人阅读 | 0 人回复 | 2023-09-14

我在尝试MS SQL 2012 Express以下查询:上操作:* n: I8 u7 t( U* h6 y  `5 j( ]+ E& n
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"]   "')");但是收到了以下错误:8 S- |. Z1 c9 d. E9 E+ s! x: K" W
select如果没有引入子查询,列表中只能指定一个表达式EXISTS。' }: T6 v* d. `3 g; |% ~
这个问题怎么解决?
" l* I# H& D- c6 k" ~2 P                                                               
' o5 |# g/ K( P5 Y5 {. f    解决方案:                                                               
- v% X9 f. [! w                                                                试试这个:3 L- t1 h! _* M: v2 k" s
    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注射攻击带来的安全风险!, x, D( M* s+ ]0 k0 y# H; e
希望对你有所帮助!
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则