mySQL и русские символы
От: Jurik_  
Дата: 05.03.06 15:34
Оценка:
Столкнулся с такой проблемой. Есть таблица, в ней русские записи. При подключении каким нибудь клиентом(mySQL Front, SQLyog) они отображаются нормально. А когда пытаюсь их выбрать из своего приложения, вместо русских символов возвращаются знаки вопроса. Пробовал менять кодировки(utf8, CP-1251) и у таблицы, в целом, и отдельно для каждого поля, ничего не помогает.
Помогите решить проблему please.

P. S. заранее извеняюсь если такой вопрос задавался ранее.
RE: mySQL и русские символы
От: Аноним  
Дата: 06.03.06 07:37
Оценка:
Столкнулся с такой проблемой. Есть таблица, в ней русские записи. При подключении каким нибудь клиентом(mySQL Front, SQLyog) они отображаются нормально. А когда пытаюсь их выбрать из своего приложения, вместо русских символов возвращаются знаки вопроса. Пробовал менять кодировки(utf8, CP-1251) и у таблицы, в целом, и отдельно для каждого поля, ничего не помогает.
Помогите решить проблему please.

P. S. заранее извеняюсь если такой вопрос задавался ранее.
Если мне память не изменяет нужно win-1251


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[2]: mySQL и русские символы
От: Jurik_  
Дата: 06.03.06 14:12
Оценка:
Здравствуйте, dragon rider, Вы писали:

DR>Столкнулся с такой проблемой. Есть таблица, в ней русские записи. При подключении каким нибудь клиентом(mySQL Front, SQLyog) они отображаются нормально. А когда пытаюсь их выбрать из своего приложения, вместо русских символов возвращаются знаки вопроса. Пробовал менять кодировки(utf8, CP-1251) и у таблицы, в целом, и отдельно для каждого поля, ничего не помогает.

DR>Помогите решить проблему please.

DR>P. S. заранее извеняюсь если такой вопрос задавался ранее.

DR>Если мне память не изменяет нужно win-1251

DR>
данное сообщение получено с www.gotdotnet.ru

DR>ссылка на оригинальное сообщение


Я не нашёл такой кодировки в mySQL. Меня беспокоит то что в других клиентах нормально отображаются русские символы, а в том, который пишу я появляются знаки вопроса...
Re[3]: mySQL и русские символы
От: vitaly_spb Россия  
Дата: 06.03.06 14:31
Оценка:
J_>Я не нашёл такой кодировки в mySQL. Меня беспокоит то что в других клиентах нормально отображаются русские символы, а в том, который пишу я появляются знаки вопроса...

почему в MySQL? Покажи как ты выводишь текст из MySQL
...Ei incumbit probatio, qui dicit, non qui negat...
Re[4]: mySQL и русские символы
От: Jurik_  
Дата: 06.03.06 22:01
Оценка:
Здравствуйте, vitaly_spb, Вы писали:

J_>>Я не нашёл такой кодировки в mySQL. Меня беспокоит то что в других клиентах нормально отображаются русские символы, а в том, который пишу я появляются знаки вопроса...


_>почему в MySQL? Покажи как ты выводишь текст из MySQL


{


string query = "SELECT * FROM Test";
DataTable dt = new DataTable();
MySqlCommand mySQLCommand = new MySqlCommand(query);
string ConnectionString = "Database=" + ConnectionParams.database + ";" + "Server=" + ConnectionParams.server + ";User Id=" + ConnectionParams.login + ";Password=" + ConnectionParams.password;
MySqlConnection myConnection = new MySqlConnection(ConnectionString);
myConnection.ConnectionString = ConnectionString;
mySQLCommand.Connection = myConnection;
MySqlDataAdapter da = new MySqlDataAdapter(mySQLCommand);

try
{
da.Fill(dt);
SelectException = null;
return dt;
}
catch(Exception e)
{
SelectException = e;
return null;
}
}

Вот в общем код, не стал редактировать copy/paste. При выборке из базы в dt записи с русскими символами заменяются знаками вопроса. Для подключения использую компонент mySQL Connector .Net 1.0.7. Взят с mysql.com. Я ума не приложу в чём может быть дело...
Re[4]: mySQL и русские символы
От: Jurik_  
Дата: 06.03.06 22:04
Оценка:
Здравствуйте, vitaly_spb, Вы писали:

J_>>Я не нашёл такой кодировки в mySQL. Меня беспокоит то что в других клиентах нормально отображаются русские символы, а в том, который пишу я появляются знаки вопроса...


_>почему в MySQL? Покажи как ты выводишь текст из MySQL


{
string query = "SELECT * FROM Test";
DataTable dt = new DataTable();
MySqlCommand mySQLCommand = new MySqlCommand(query);
string ConnectionString = "Database=" + ConnectionParams.database + ";" + "Server=" + ConnectionParams.server + ";User Id=" + ConnectionParams.login + ";Password=" + ConnectionParams.password;
MySqlConnection myConnection = new MySqlConnection(ConnectionString);
mySQLCommand.Connection = myConnection;
MySqlDataAdapter da = new MySqlDataAdapter(mySQLCommand);

try
{
da.Fill(dt);
SelectException = null;
return dt;
}
catch(Exception e)
{
SelectException = e;
return null;
}
}

Вот в общем код, не стал редактировать copy/paste. При выборке из базы в dt записи с русскими символами заменяются знаками вопроса. Для подключения использую компонент mySQL Connector .Net 1.0.7. Взят с mysql.com. Я ума не приложу в чём может быть дело...
Re[5]: mySQL и русские символы
От: vitaly_spb Россия  
Дата: 07.03.06 11:13
Оценка:
Чего-то ты много лишнего пишешь и не забывай using(MySqlCommand mySQLCommand = new MySqlCommand(query)) — они должны поддерживать IDisposable. Я твой код немного поправил.

string query = "SELECT * FROM Test";
DataTable dt = new DataTable();
string ConnectionString = 
  String.Format("Database={0};Server={1};User Id={2};Password={3}",
                  ConnectionParams.database, 
                  ConnectionParams.server,
                  ConnectionParams.login,
                  ConnectionParams.password);

using(MySqlDataAdapter da = new MySqlDataAdapter(query, new MySqlConnection(ConnectionString)))
{
 try
 {
  da.Fill(dt);
  SelectException = null;
  return dt;
 }
 catch(Exception e)
 {
  SelectException = e;
  return null;
 }
}


J_>Вот в общем код, не стал редактировать copy/paste. При выборке из базы в dt записи с русскими символами заменяются знаками вопроса. Для подключения использую компонент mySQL Connector .Net 1.0.7. Взят с mysql.com. Я ума не приложу в чём может быть дело...


Попробуй покопаться со строкой соединения, еще — вот ссылка на форум где все это обсуждается

http://forums.mysql.com/list.php?38
...Ei incumbit probatio, qui dicit, non qui negat...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.