SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.10.2009 19:48:04

solaso
Участник
Зарегистрирован: 13.10.2009
Сообщений: 5

Возможен ли SQL запрос с русским значением

Например как мне выбрать где значения 'не проверено'? Такой запрос не работает SELECT * FROM `declar` WHERE sost='не проверено'

Неактивен

 

#2 13.10.2009 20:01:22

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Возможен ли SQL запрос с русским значением

Возможен, именно так, как Вы написали.

Только следите за кодировкой: если текст Вы пишете в кодировке cp1251, то следует
перед этим выполнить команду SET NAMES cp1251, чтобы MySQL знал, что именно в
этой кодировке следует ожидать данные.

Неактивен

 

#3 13.10.2009 20:12:54

solaso
Участник
Зарегистрирован: 13.10.2009
Сообщений: 5

Re: Возможен ли SQL запрос с русским значением

Спасибо за ответ. Я сделал как посоветовали, но получил ошибку. Подскажите где я неверно сделал

SET NAMES cp1251 SELECT *
FROM `declar`
WHERE sost = 'не проверено'

Ответ MySQL: Документация
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT * FROM `declar` WHERE sost='не проверено'' at line 1

Неактивен

 

#4 13.10.2009 20:24:42

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Возможен ли SQL запрос с русским значением

Ненене, это два независимых запроса.

SET NAMES cp1251;
SELECT * ... ;

Неактивен

 

#5 13.10.2009 20:36:47

solaso
Участник
Зарегистрирован: 13.10.2009
Сообщений: 5

Re: Возможен ли SQL запрос с русским значением

Просите за глупость. Запрос так работает, таблицы стоят  cp1251_general_ci
SET NAMES cp1251;
SELECT *
FROM `declar`
WHERE sost = 'не проверено'
Выдает нулевой результат, но у меня значений "не проверено" по всей таблице 90% не пойму где я ошибся, пробел точно стоит один в словосочетании 'не проверено'. Есть значение и "проверено" и тоже не находит

Неактивен

 

#6 13.10.2009 20:46:41

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Возможен ли SQL запрос с русским значением

Сделайте просто SELECT * FROM declar LIMIT 1 — и посмотрите, по-русски ли
будет написано значение.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson