SQL CONCAT -Забавные символы -но я не смеюсь

Я использую этот запрос для создания меню архива блога, например:

SELECT CONCAT( MONTHNAME(published), ' ', YEAR(published)) AS monthyear, 
COUNT(*) AS total
FROM blog_articles
WHERE status = 'Online' AND Year(published) = 2012
GROUP BY CONCAT( MONTHNAME(published), ' ', YEAR(published))

Ожидаемый результат:

January 2012        103
February 2012       87
March 2012          23
April 2012          99

Фактический результат:

enter image description here

Счет правильный, но вместо ментального восточного следует читать:

May 2012       1

Как я могу избавиться от забавных персонажей и вместо этого использовать английский язык?

Когда я запускаю этот запрос в phpMyAdmin, символы в порядке.

ОБНОВЛЕНИЕ

Я только что попробовал запустить conn.Execute ("SET lc _time _name = 'en _US';" )и не решил проблему. Для проверки я использовал conn.Execute («SELECT @@lc _time _имена;» ), и он вернул "en _US".

ДРУГОЕ ОБНОВЛЕНИЕ

Поискав на форумах MySQL связанные проблемы, я нашел другого парня, жалующегося на ту же проблему. Гуру MySQL сказал:

"This is the famous (infamous) server returns wrong types for CONCAT of a number and a string. One has to use the (cast) form for this to work, the driver can't tell what the real type is."

Я не уверен, что такое бросок или как решить эту проблему.

18
задан TheCarver 2 July 2012 в 12:47
поделиться