ФорумПрограммированиеPHP для идиотов → Mysql БД -> UTF

Mysql БД -> UTF

  • Chikey

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 11 июля 2009 г. 10:33

    Есть база, в ней все в 1251, задача с помощью или скрипта, или, лучше, скл запроса перевести ее ВСЮ в утф 8.

    просто я перевел сам движок на утф, терять кучу контента жалко

    идеи?
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 11 июля 2009 г. 11:15, спустя 41 минуту 18 секунд

    http://sypex.net/products/dumper/downloads/ говорят вот это помогает
    Спустя 79 сек.
    Sypex Dumper Lite распространяется по лицензии GNU GPL, т. е. является абсолютно бесплатным.
    adw/0
  • rider-sx

    Сообщения: 2706 Репутация: N Группа: Адекваты

    Spritz 11 июля 2009 г. 11:19, спустя 4 минуты 7 секунд


    http://sypex.net/products/dumper/downloads/ говорят вот это помогает
    Спустя 79 сек.
    Sypex Dumper Lite распространяется по лицензии GNU GPL, т. е. является абсолютно бесплатным.

    Помогает =) Сам использую, отличная вещь )
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 11 июля 2009 г. 14:47, спустя 3 часа 28 минут 5 секунд


    Есть база, в ней все в 1251, задача с помощью или скрипта, или, лучше, скл запроса перевести ее ВСЮ в утф 8.

    просто я перевел сам движок на утф, терять кучу контента жалко

    идеи?
    поэтапно.

    1. делаешь дамп.
    2. у файла меняешь кодировку на ютф8
    3. заменяешь cpt1251 на utf8

    заливаешь дамп этот ну и до кучи можешь в начало дамп файла вписать set names utf8;
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 2 декабря 2009 г. 15:25, спустя 144 дня 1 час 37 минут

    как можно исправить баг с регулярками в MySQL когда база в UTF?
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 2 декабря 2009 г. 15:30, спустя 5 минут 6 секунд

    какой баг? я пользовался пару раз регулярками, багов не было)
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 2 декабря 2009 г. 15:56, спустя 26 минут 36 секунд

    http://dev.mysql.com/doc/refman/5.1/en/regexp.html#operator_regexp

    Warning

    The REGEXP and RLIKE operators work in byte-wise fashion, so they are not multi-byte safe and may produce unexpected results with multi-byte character sets. In addition, these operators compare characters by their byte values and accented characters may not compare as equal even if a given collation treats them as equal.


    http://www.sql.ru/Forum/actualthread.aspx?bid=6&tid=651260&hl=
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 2 декабря 2009 г. 15:58, спустя 1 минуту 28 секунд

    Абырвалг, круто!

    ты поиск что ли текстовый делаешь? нах те ваще регулярки в бд?)
    Спустя 16 сек.
    в смысле "мультибайтовые" то уж точно нах? разве что поиск в голову приходит
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 2 декабря 2009 г. 16:07, спустя 9 минут 37 секунд

    я пока ниче не делаю. Ты ж знаешь уже наверно, что я больше предпочитаю пиздеть/читать а не делать. Я типа готовлюсь у переходу на UTF.

    По поводу поиска: я х3. Просто вот цитата такая попалась:

    unicross
    найди слово(!) начинающееся на "ва", не находящееся в параметрах тегов (html или bbcodes) и чтобы в тексте не встречалась подстрока "пупкин" :)
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 2 декабря 2009 г. 16:33, спустя 25 минут 51 секунду

    Абырвалг, ужасная задача))

    ну конвертни на лету кодировки и заюзай в cp1251 режиме, там проблем не должно быть видимо
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 2 декабря 2009 г. 16:45, спустя 12 минут 17 секунд

    ахуенное решение =). А если у меня эстонцы используют скрипт? Там точно будет не cp1251. Как понять в какую кодировку конвертировать? А если там и кириллица и символы с умляутами? тут кодировка вообще не покатит.
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 2 декабря 2009 г. 16:48, спустя 2 минуты 22 секунды


    ахуенное решение =). А если у меня эстонцы используют скрипт? Там точно будет не cp1251. Как понять в какую кодировку конвертировать? А если там и кириллица и символы с умляутами? тут кодировка вообще не покатит.
    а если не вгрызаться :)

    я тебе решение предложил, да сам знаю что одно из хуевых, но решение.

    ну или омжно отфильтровать данные которые не зависят от регулярки мускулем, остальное на пхп )
    Сапожник без сапог
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz 24 января 2014 г. 16:36, спустя 1513 дней 23 часа 47 минут

    Есть такая хрень:

    SELECT `id`, `title` FROM `products` WHERE `title` LIKE 'стол%'
    
    Отображает строки 0 - 29 ( 39 всего, Запрос занял 0.0008 сек.)
    Стол холодильный Hicold GN 11/TN  
    Стол холодильный Hicold GN 111/TN  
    Стол холодильный Hicold GN 1111/TN  
    Стол морозильный Hicold GN 11/BT  
    Стол морозильный Hicold GN 111/BT  
    Стол морозильный Hicold GN 1111/BT  
    Стол холодильный Hicold GNE 11/TN
    

    И вот такая хрень:

    SELECT `id`, `title` FROM `products` WHERE `title` RLIKE '^стол'
    
    MySQL вернула пустой результат (т.е. ноль строк). ( Запрос занял 0.0015 сек. )
    

    Я так понял, нихуя не получится исправить эту хрень?
    Единственное, что работает:

    SELECT `id`, `title` FROM `products` WHERE `title` RLIKE '[Сс]тол'
    

    ЗЫ, "MATCH (...) AGAINST (...)" хуёво считает релевантность.
    ЗЫЫ, в Sphinx не умею.

    Высокоуровневое абстрактное говно
  • Sinkler

    Сообщения: 7931 Репутация: N Группа: в ухо

    Spritz 24 января 2014 г. 16:38, спустя 1 минуту 51 секунду

    а причём тут ютф? оО

  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz 25 января 2014 г. 3:09, спустя 10 часов 31 минуту 39 секунд

    У меня всё в utf8_general_ci.

    Высокоуровневое абстрактное говно

Пожалуйста, авторизуйтесь, чтобы написать комментарий!