У меня была такая же проблема. Я трижды проверил все, и ссылки были добавлены, проект был в том же решении, все установлено. Я также знаю свои пространства имен, я даже получил завершение кода, но при сборке я получил ту же ошибку, что пространство имен не может быть найдено.
Мне потребовался один час, чтобы выяснить это: проект, который я добавил, который не нашел соответствующего пространства имен, был настроен на другую целевую среду .NET. Я изменил свое решение на «полный» .NET Framework 4 вместо Client Profile 4, но новый проект, который я добавил, снова был установлен в Client Profile.
Вместо того, чтобы предупреждать меня о неправильной конфигурации, он утверждал, что пространства имен не могут быть найдены.
Надеюсь, это кому-нибудь поможет и сэкономит время, которое я потратил впустую.
mysql_set_charset ()
будет вариантом, но вариант ограничен ext / mysql
. Для ext / mysqli
это mysqli_set_charset
, а для PDO
:: mysql
необходимо указать параметр подключения.
Как результат использования этой функции в вызове MySQL API его следует рассматривать намного быстрее, чем выдачу запроса.
Что касается производительности, самый быстрый способ обеспечить связь на основе UTF-8 между вашим скриптом и сервером MySQL - это правильно настроить сервер MySQL . Поскольку SET NAMES x
является эквивалентным до
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
, тогда как SET character_set_connection = x
внутренне также выполняет SET collation_connection = <
Не уверен насчет py, но php теперь имеет mysql_set_charset
, в котором говорится, что это «предпочтительный способ изменения кодировки [и] с использованием mysql_query () для выполнения SET ИМЕНА не рекомендуется ". Обратите внимание, что эта функция была введена в MySQL 5.0.7, поэтому она не будет работать с более ранними версиями.
mysql_set_charset('utf8', $link);
Где $ link - это соединение, созданное с помощью mysql_connect