代码之家  ›  专栏  ›  技术社区  ›  TheRealPapa

mysql在一个非常简单的查询中没有返回任何内容[重复]

  •  0
  • TheRealPapa  · 技术社区  · 5 年前

    我有张叫的桌子 groups_pivot 有这些列:

    id, pivot_id, group_id, model, creator_id, updater_id, created_at, updated_at
    

    在IT中,我存储不同模型和 groups :

    select * from groups_pivot;
    
    id  pivot_id    group_id    model           creator_id  updater_id  created_at       updated_at
    1   1           1           App\Models\User 7           7           8/18/2019 22:09  8/18/2019 22:09
    2   2           1           App\Models\User 1           1           8/18/2019 22:09  8/18/2019 22:09
    3   3           2           App\Models\User 6           6           8/18/2019 22:09  8/18/2019 22:09
    4   4           3           App\Models\User 2           2           8/18/2019 22:09  8/18/2019 22:09
    

    但是当我同时在 Laravel mySQLWorkbench 我得到空响应:

    select * from groups_pivot
    where model = 'App\Models\User';
    
    09:27:41    select * from groups_pivot where model = 'App\Models\User' LIMIT 0, 1000    0 row(s) returned   0.000 sec / 0.000 sec
    

    这是什么魔法?没有错误,没有响应。我肯定我今天早上过得很糟糕,但我不明白为什么要这样做。谢谢你对去哪里看的建议。

    2 回复  |  直到 5 年前
        1
  •  2
  •   Nick SamSmith1986    5 年前

    怎么办:

    select * from groups_pivot
    where model = 'App\\Models\\User';
    

    反斜杠通常是转义字符,因此需要使用转义字符本身。

        2
  •  0
  •   ChrisFNZ    5 年前

    尝试使用双引号(“)而不是撇号(“)来分隔值,因为否则反斜杠用于表示转义符。