PDO MySQL чувствителен к регистру даже с utf8_general_ci - PullRequest
0 голосов
/ 27 апреля 2018

У меня есть таблица MySQL с сортировкой utf8_general_ci, и я использую подготовленные операторы PDO для подключения к ней.

$conn = new PDO('mysql:host=localhost;dbname=crm;charset=utf8', $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Я не использую двоичный запрос, поэтому он:

$stmt = $conn->prepare("SELECT * FROM primary_profile WHERE email LIKE :email"); 
$stmt->execute(array('email' => $email));

Я не понимаю, почему запрос не считается нечувствительным к регистру и возвращает false, если регистр не совпадает.

1 Ответ

0 голосов
/ 27 апреля 2018

Вы хотите запустить следующее:

SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLLATION_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'TABLE_name'

Существуют параметры сортировки для поля и таблицы.

...