|
31 / 3 / 0
Регистрация: 21.01.2010
Сообщений: 22
|
||||||
C#, MySQL и кодировки21.01.2010, 23:20. Показов 11883. Ответов 10
Метки нет (Все метки)
Не знаю почему но C# упорно отказывается добавлять данные в кодировке cp1251, а добавляет в кодировке ср866.
Что сделал: 1. Прописал в файле my.ini по дефолту везде кодировку cp1251 2. Для подключения к базе данных использую строку: "server=localhost;database=scrubs;uid=ro ot;password=1234;charset=cp1251;" Она находится в поле textBox1.Text. В поле textBox2.Text прописывается такой запрос: "select * from sotrudniki;" И данные которые добавлялись в мускул вручную через консоль отображаются крякозябрами, а которые добавлялись через прогу нормально. Только в консоле мускула они наоборот отображаются крякозябрами. Устанавливая значения character_set_results, я пришел к выводу, что прога сохраняет данные в кодировке cp866. Только откуда она вылезла я никак не могу понять. Исходник программы:
0
|
||||||
| 21.01.2010, 23:20 | |
|
Ответы с готовыми решениями:
10
Кодировки в MySQL Кодировки и проблемы в MySQL Установка кодировки Mysql |
|
Комбайнёр
1606 / 704 / 77
Регистрация: 27.05.2008
Сообщений: 2,535
|
|
| 22.01.2010, 09:10 | |
|
Добвляйте кодировку при подключении (в MySQLConnection)
0
|
|
|
31 / 3 / 0
Регистрация: 21.01.2010
Сообщений: 22
|
|
| 22.01.2010, 20:07 [ТС] | |
|
"MySqlConnection cnx = new MySqlConnection();"
"cnx.ConnectionString = textBox1.Text;" а в textBox1 прописано "server=localhost;database=scrubs;uid=ro ot;password=1234;charset=cp1251;" что еще нужно? или я не туда прописываю? Добавлено через 4 часа 40 минут в общем нифига не работает(((
0
|
|
|
Комбайнёр
1606 / 704 / 77
Регистрация: 27.05.2008
Сообщений: 2,535
|
|
| 22.01.2010, 22:22 | |
|
А при создании БД и таблиц тоже указывали cp1251? если нет, то попробуйте пересоздать
0
|
|
|
31 / 3 / 0
Регистрация: 21.01.2010
Сообщений: 22
|
|
| 22.01.2010, 22:24 [ТС] | |
|
а можно примерчик, а то я в С# новичек
0
|
|
|
4 / 4 / 3
Регистрация: 01.07.2009
Сообщений: 127
|
||
| 23.01.2010, 11:03 | ||
|
Нужно после установки связи с мускулом послать строку "SET NAMES cp1251" !
0
|
||
|
31 / 3 / 0
Регистрация: 21.01.2010
Сообщений: 22
|
||
| 23.01.2010, 12:32 [ТС] | ||
|
MySqlCommand _MySqlCommand = new MySqlCommand("SET NAMES cp1251", cnx);
0
|
||
|
4 / 4 / 3
Регистрация: 01.07.2009
Сообщений: 127
|
|
| 23.01.2010, 14:43 | |
|
0
|
|
|
niktob
|
||||||
| 23.01.2010, 17:05 | ||||||
|
Тажа проблема только в бесике2008, перепробывал все что нашел в сети:
При подсоединении StringConnectToBDMySQL = "DRIVER=" & tDriver & ";" & _ "SERVER=" & tServer & ";" & _ "DATABASE=" & tDB & ";" & _ "UID=" & tUID & ";" & _ "PASSWORD=" & tPass & ";" & _ "OPTION=" & tOpt & ";" & "charset=utf8;" Подменял на '& "charset= cp1251_koi8;" 'characterEncoding = win1251 'characterSetResults = win1251 'characterEncoding = utf - 8 'characterSetResults = utf - 8 'set character set cp 1251 Команды после подключение к базе 'OdbcCommand1.CommandText = "set character_set_client=cp1251;" 'StatusConnection = OdbcCommand1.ExecuteNonQuery() 'OdbcCommand1.CommandText = "set character_set_results=cp1251;" 'StatusConnection = OdbcCommand1.ExecuteNonQuery() 'OdbcCommand1.CommandText = "set collation_connection=cp1251_koi8;" 'StatusConnection = OdbcCommand1.ExecuteNonQuery() 'OdbcCommand1.CommandText = "SET NAMES cp1251;" 'OdbcCommand1.CommandText = "create database ttttt;" 'OdbcCommand1.CommandText = "set character set cp1251;" 'OdbcCommand1.CommandText = "set CHARACTER SET cp1251_koi8;" OdbcCommand1.CommandText = "SET NAMES cp1251;" Не чего не помогает в грде отображаются в метор руской речи "?". Если получится незабудь чернуть Добавлено через 41 минуту Вот я критин. Везде ключ был а я тупил - извеняюсь за мой мусор. В моей ситуации: 1. В базе MySQL таблицы с кодировкой cp 1251 2. В VB.NET Строку подключения оставил тужу. А далее испровил обращение к MySQL о чем писалсь выше и везде в инете
Причина моих неудач я думаю было в том что: я на форму сначала скинул и настроел элемент OdbcDataAdapter и когда я скинул объект OdbcCommand (хоть его на форме видно небыло, он был и появился при настройке адаптера) В результате посылая команду Me.OdbcCommand1.CommandText = "SET NAMES cp1251;" он почемуто глючил с адаптером. По чистой случайности когда я зашел в адаптер и исправил кретерий запроса к базе у меня перестала создаваться база в прошлом и тогда дошло что OdbcCommand уже использется и соответвенно для результата надо сначало послать "SET NAMES cp1251;", а далее обращатся к базе. Ура |
||||||
|
31 / 3 / 0
Регистрация: 21.01.2010
Сообщений: 22
|
|
| 24.01.2010, 14:36 [ТС] | |
|
не помогло((((
0
|
|
|
niktob
|
|
| 25.01.2010, 13:09 | |
|
Бросаю мой исходник на VB и базу данных с одной таблицей, может чтото упускаю. Но у меня все ОК с кодировкой
|
|
| 25.01.2010, 13:09 | |
|
Помогаю со студенческими работами здесь
11
Ошибки кодировки mysql Кодировки Mysql Workbench MySQL настройка кодировки Не совпадают кодировки MySql и PHP Разные кодировки в MySQL и PHP Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|