ФорумРазработкаБазы данных → перезапись базы данных (проблемы с кодировкой)

перезапись базы данных (проблемы с кодировкой)

  • Professor

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

    Spritz 23 августа 2010 г. 12:14

    есть 1 БД в ней данные хранятся в кодировке latin1_swedish_ci
    нужно перезаписать эти данные в другую БД в кодировке utf8_general_ci
    Вроде все просто, но не получается мля =(

    $db = new goDB($configDB);
    $db2 = new goDB($configDB2);


    $db->query("SET NAMES `utf8`");
    $db2->query("SET NAMES `utf8`");


    $array = $db2->query("SELECT * FROM `SS_categories` ORDER BY `parent` ASC", "", "assoc");

    $category = new NestedSets($db, "shop-category");
    foreach ($array as $var) {
    if ($var["categoryID"] != 1) {
    $var["name"] = iconv("latin1", "utf-8", $var["name"]);
    echo $var[&quot;name&quot;].&quot;<br>&quot;;
    // $category->AddNode($var[&quot;parent&quot;], $var[&quot;name&quot;], $var[&quot;categoryID&quot;]);
    }
    }

    все время какие то каракули.

    http://www.artlebedev.ru/tools/decoder/
    пишет что нужно из cp1252 в 1251, но хрена лысого, каракули
  • VaseninM

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

    Spritz 23 августа 2010 г. 12:17, спустя 3 минуты 27 секунд


    $db->query(&quot;SET NAMES `utf8`&quot;);
    $db2->query(&quot;SET NAMES `utf8`&quot;);

    ?????????
  • Professor

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

    Spritz 23 августа 2010 г. 12:19, спустя 2 минуты 9 секунд

    SpartakuS, ну это что бы из базы данных в utf-8 данные получать.

    По логике они должны сразу быть utf-8? но этого не происходит.
  • adw0rd

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

    Spritz 23 августа 2010 г. 12:20, спустя 1 минуту 3 секунды

    Professor, а средствами sql-а это нельзя сделать? Ну то есть БД то будут идентичны?
    adw/0
  • Professor

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

    Spritz 23 августа 2010 г. 12:24, спустя 3 минуты 18 секунд

    Я категории из списка смежностей во вложенные множества переделываю {+++104+++} О, получилось =) слава яйцам =)


    $var[&quot;name&quot;] = iconv(&quot;utf-8&quot;, &quot;cp1252&quot;, $var[&quot;name&quot;]);
    $var[&quot;name&quot;] = iconv(&quot;cp1251&quot;, &quot;utf-8&quot;, $var[&quot;name&quot;]);


    Вот так всегда, пол часа мучаешься, а как тему создал ,практически сразу решение нашел. Закон подлости =(

    P.S. пошел учить английский =)

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