ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript > ПО для Web разработчика
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Дефолтная кодировка MYSQl 5
  #1  
Старый 11.11.2006, 01:48
Аватар для k1b0rg
k1b0rg
Тут может быть ваша реклама.
Регистрация: 30.07.2005
Сообщений: 1,243
Провел на форуме:
4520553

Репутация: 1316


По умолчанию Дефолтная кодировка MYSQl 5

Помогите нубу изменить дефолтную кодировку MYSQl 5. ось - Виндоус.

Задача состоит в том, чтобы изменить кодировку хранения инфы в БД, а не выдачи ее. Т.е. вставлять в запросы всякие set names и collate не предлогать.
 
Ответить с цитированием

  #2  
Старый 11.11.2006, 01:56
Аватар для africanec
africanec
Banned
Регистрация: 11.09.2005
Сообщений: 254
Провел на форуме:
1002567

Репутация: -12
Отправить сообщение для africanec с помощью ICQ
По умолчанию

Если Вам необходимо хранить в базе данных строки в кодировке, отличной от английской, то придется немного разобраться с кодировками - дело достаточно тонкое и не совсем тривиальное.

Итак, по умолчанию для всех обьектов базы устанавливается кодировка latin1, и если в поле с такой кодировкой запихнуть русские данные, то вместо символов Вы будете видеть знаки вопроса. Для избежания данной проблемы достаточно установить при создании базы нужную Вам кодировку:

CREATE DATABASE yourbase CHARACTER SET ‘cp1251′

в этом случае все поля по умолчанию будут иметь именну эту кодировку, если при создании базы или поля не указать иную. Тоесть, при создании базы с нуля достаточно укзать ее кодировку и все будет нормально.
Но если Вы модифицируете уже созданную ранее базу, то изменение ее кодировки не приведет к изменению кодировок уже созданных полей - их придется менять вручную, посредством следующей комманды:

ALTER TABLE students CHANGE name name varchar(100) CHARACTER SET ‘cp1251′

Типы полей надо оставить прежними, нужно только изменить кодировку(CHARACTER SET).

Для корректной работы с кодировками осталась одна вещь - после установления соединения необходимо указать требуемую кодировку с помощью запроса:

SET NAMES cp1251;

Кстати, полный список кодировок, которые поддерживает Ваш сервер, можно получить с помощью комманды

SHOW CHARACTER SET;
----------------------------
это надо или я нетак понял?
 
Ответить с цитированием

  #3  
Старый 11.11.2006, 02:04
Аватар для k1b0rg
k1b0rg
Тут может быть ваша реклама.
Регистрация: 30.07.2005
Сообщений: 1,243
Провел на форуме:
4520553

Репутация: 1316


По умолчанию

это мы устанавливаем кодировку для определенной базы. А мне нужна чтобы она сразу уже была как допустим cp1251.
 
Ответить с цитированием

  #4  
Старый 11.11.2006, 02:48
Аватар для Tem
Tem
Banned
Регистрация: 05.10.2005
Сообщений: 965
Провел на форуме:
5888800

Репутация: 547


Отправить сообщение для Tem с помощью ICQ
По умолчанию

может через пхпмайадмин настроеш ?
 
Ответить с цитированием

  #5  
Старый 11.11.2006, 02:50
Аватар для FQziT
FQziT
Постоянный
Регистрация: 03.11.2005
Сообщений: 591
Провел на форуме:
5605982

Репутация: 523


По умолчанию

Мда.. В файле my.cnf найди
Код:
[mysqld]
# Кодировка баз данных по умолчанию.
default-character-set = cp1251
И меняй на какую нужно.. =)

ЗЫ: Да, чтоб не искал, файл этот лежит в дире /usr/local/mysql/

Последний раз редактировалось FQziT; 11.11.2006 в 03:01..
 
Ответить с цитированием

  #6  
Старый 11.11.2006, 03:10
Аватар для k1b0rg
k1b0rg
Тут может быть ваша реклама.
Регистрация: 30.07.2005
Сообщений: 1,243
Провел на форуме:
4520553

Репутация: 1316


По умолчанию

Цитата:
может через пхпмайадмин настроеш ?
Не думаю что пхпмайдмин такое умеет.

Цитата:
В файле my.cnf найди
Он только в линуксе
 
Ответить с цитированием

  #7  
Старый 11.11.2006, 03:12
Аватар для FQziT
FQziT
Постоянный
Регистрация: 03.11.2005
Сообщений: 591
Провел на форуме:
5605982

Репутация: 523


По умолчанию

Цитата:
Сообщение от k1b0rg  
Он только в линуксе
Нет

Последний раз редактировалось FQziT; 11.11.2006 в 03:24.. Причина: сокротил
 
Ответить с цитированием

  #8  
Старый 11.11.2006, 04:46
Аватар для africanec
africanec
Banned
Регистрация: 11.09.2005
Сообщений: 254
Провел на форуме:
1002567

Репутация: -12
Отправить сообщение для africanec с помощью ICQ
По умолчанию

да в винде my.ini
 
Ответить с цитированием

  #9  
Старый 11.11.2006, 05:11
Аватар для FQziT
FQziT
Постоянный
Регистрация: 03.11.2005
Сообщений: 591
Провел на форуме:
5605982

Репутация: 523


По умолчанию

Не суть важно.. my.ini и my.cnf это одно и тоже. В денвере, например, будет my.cnf. Если ставить всё по отдельности апач+пхп+майскл и тд, то тогда my.ini вроде бы. Киборг не сказал что там у него стоит =)
В любом случае править нужно там.
 
Ответить с цитированием

  #10  
Старый 11.11.2006, 05:27
Аватар для africanec
africanec
Banned
Регистрация: 11.09.2005
Сообщений: 254
Провел на форуме:
1002567

Репутация: -12
Отправить сообщение для africanec с помощью ICQ
По умолчанию

да я в асе ему писал я через тулзу в конфигах шарю и все там меняю
он писал что просто мускл 5 отдельно без денверов всяких(или просто я так подумал)
у меня менялась кодировка
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SQL injection в MySql сервере версии 3,x bandera Чужие Статьи 3 04.06.2006 16:17
Кодировка. Zakary Windows 1 08.12.2005 20:44
Общие Рекомендации Защиты (MySQL и SQL Web-интерфейс) k00p3r Чужие Статьи 0 13.06.2005 11:22
Защищаем MySql. Шаг за шагом k00p3r Чужие Статьи 0 13.06.2005 11:18



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ