Скрипт для работы с базами MySql

Тема в разделе "Коммерческие", создана пользователем don2007, 4 окт 2008.

Информация :
Публиковать (для всех) нуленые версии, особенно от modulesgarden КАТЕГОРИЧЕСКИ не стоит. Тема мониторится оным разработчиком, а к нам приходят абузы которые нельзя игнорировать.
Статус темы:
Закрыта.
Модераторы: Amazko, Aste
  1. don2007

    don2007 Постоялец

    Регистр.:
    5 авг 2007
    Сообщения:
    80
    Симпатии:
    6
    Есть ли скрипт или какой-либо другой инструмент для работы с базами MySql,который позволял бы выбирать из базы данных всю информацию по заданному шаблону,перерасставлять порядок столбцов с уже полученной инфой по своему выбору и сохранять в уже новую базу.
     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    про порядок столбцов не совсем понял

    PHP MyAdmin
     
  3. don2007

    don2007 Постоялец

    Регистр.:
    5 авг 2007
    Сообщения:
    80
    Симпатии:
    6
    Как можно с помощью РНР поменять расположение колонок для переноса данных из дампа в базу с другим порядком расположения колонок?
     
  4. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    591
    Вообще-то это делается не с помощью PHP, а с помощью SQL.
    Забудь про phpMyAdmin, поставь любой GUI.
     
  5. don2007

    don2007 Постоялец

    Регистр.:
    5 авг 2007
    Сообщения:
    80
    Симпатии:
    6
    Поясняю.
    В старом дампе столбцы с данными располагались в таком порядке:

    (`id`, `id_editor`, `id_parent`, `title`, `description`, `status`, `meta_description`, `meta_keywords`, `path`, `order`, `locked`, `unique_tpl`, `level`, `num_cols`, `neighbour`)

    а в новой таблице,эти же данные должны располагаться в столбцах с другим порядком и некоторыми изменёнными названиями столбцов:

    (`id`, `account_id`, `parent_id`, `title`, `page_title`, `description`, `status`, `meta_description`, `meta_keywords`, `path`, `order`, `locked`, `unique_tpl`, `level`, `num_cols`, `num_neighbours`, `num_listings`, `num_all_listings`, `clicks`, `no_follow`)

    Как на основании этого примера, данные из старого дампа перенести в новую таблицу?

    Добавлено через 1 минуту
    Точно так,только надо чтобы всё прямо из дампа в свои новые ячейки встало!

    Добавлено через 3 минуты
    А какой GUI например,можно использовать?
     
  6. HatoL

    HatoL

    Регистр.:
    5 фев 2008
    Сообщения:
    206
    Симпатии:
    36
    в phpMyAdmin скорее всего такого сделать не получится. Но и задача у тебя сугубо специфическая. С переименовкой названий столбцов несложно - открываешь файл с дампом БД (.sql) в текстовом редакторе (например Notepad++), ищешь строку, которая начинается на:
    Код:
    CREATE TABLE `название_твоей_таблицы`
    Ниже этой строки идут названия столбцов. Там и переименовываешь их. Местами их поменять нельзя, т.к. тогда значения, которые прописаны в
    Код:
    INSERT INTO `название_твоей_таблицы` VALUES
    попадут не в те столбцы (порядок-то ты их изменил). Тут надо писать скрипт
     
  7. NewS

    NewS

    Регистр.:
    15 авг 2008
    Сообщения:
    255
    Симпатии:
    84
    На:
    ALTER TABLE name1 MODIFY name2 AFTER name3
    name1 - имя таблицы
    name2 - имя перемещаемого столбца
    name3 - имя столбца, после которого вставить перемещаемый столбец

    ЗЫ: постом выше и так инфы достаточно, если эти бва слова вставить в поисковик.
     
  8. Daar

    Daar Постоялец

    Регистр.:
    10 авг 2007
    Сообщения:
    58
    Симпатии:
    3
    Советую поставить софтинку SQL Manager for MySQL. Она с русским интерфейсом и в можешь визуально создать запрос к своей базе и результат уже выкинуть в другую базу. И там помоему это можно макросом сделать.
     
  9. Mangock

    Mangock Писатель

    Регистр.:
    9 авг 2008
    Сообщения:
    7
    Симпатии:
    0
    Запутали TC как могли :)
    1. Вообще проще сначала таблицу-источник просто перенести в новую базу.
    2. Пишем скрипт вида

    Код:
    Insert [table2] set 
    account_id = id_editor,
    page_title = title,
    [... другие поля... ]
    from [table1]
    go 
    Drop table [table1] // Удаляем таблицу-источник
    
    3. Выполняем скрипт :)
     
Статус темы:
Закрыта.