В нашем PHP-фреймворке (Yii 1) у меня есть такой SQL для миграции данных:
где '(huge_pattern_for_search)' и '(huge_pattern_for_replace)' содержат множество сложных регулярных выражений с обратными косыми чертами и т. д. Мне нужно, чтобы они выполнялись сервером MySQL как есть (это сценарий внутренней консоли, чтобы все данные и изменения были в безопасности), но когда я передаю переменную $sql в createCommand($sql), слой PDO экранирует все мой SQL внутри и сломал все регулярные выражения:

Та же ситуация, когда Я выполняю этот запрос без переменной SQL @rrr, например:
Когда я выполняю тот же запрос, используя чистое соединение PDO:
Код: Выделить всё
$conn = new PDO(MYSQL_CONNECT, MYSQL_USER, MYSQL_PSWD);
$stmt= $conn->prepare($sql);
$stmt->execute();
Я получаю тот же результат (неработающие строки регулярного выражения).
Итак, вопрос в том, как отключить это поведение для текущего PDO. -соединение?
Подробнее здесь:
https://stackoverflow.com/questions/792 ... pdo-object