Laravel Конструктор запросов, заменяющий 'в' - PullRequest
1 голос
/ 05 марта 2020

У меня есть laravel запрос построителя запросов, где находится в условии где у меня есть ',

Select * from teams where name ilike ST. HELLEN'S

Но когда я запускаю этот запрос через Laravel построитель запросов, он преобразуется в

Select * from teams where name ilike ST. HELLEN'S

И в конце я получаю синтаксическую ошибку. У кого-нибудь есть идеи, как решить эту проблему?

Я уже пробовал эти

Select * from teams where name ilike ST. HELLEN\'S
Select * from teams where name ilike `ST. HELLEN'S`

У меня есть такой код:

$query = "Select * from teams where name ilike ST. HELLEN\'S"; 
$data = DB::select($query); 

Также пробовал:

DB::select(DB::raw($query));

1 Ответ

1 голос
/ 05 марта 2020

Есть 3 способа достичь того же самого

Путь 1: Использовать еще одну одинарную кавычку: 'ST. HELLEN''S'

Путь 2: Использовать escape символ \ перед одинарной кавычкой ': 'ST. HELLEN\'S'

Way3: Используйте двойные кавычки для заключения строки вместо одинарных кавычек: "ST. HELLEN'S"

...