обновление бд mysql

Тема в разделе "Как сделать...", создана пользователем Runapa, 24 май 2012.

  1. Runapa

    Runapa Постоялец

    Регистр.:
    30 окт 2010
    Сообщения:
    63
    Симпатии:
    5
    интересно, можно ли как то обновлять поля в базе данных, не зная заранее сколько и чего обновлять ?

    Хочу сделать возможность пользователю самому добавлять язык на сайт, вот и думаю как лучше сделать...
     
  2. StrikeOFF

    StrikeOFF ♥kan inte lyfta utan lift♥

    Регистр.:
    20 мар 2010
    Сообщения:
    362
    Симпатии:
    200
    Права пользователю_бд дай нужные - все будет делать с бд что разрешишь.
     
  3. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    скорее проверка на существование поля, затем что то типа:
    ALTER TABLE `table` ADD `russian` text NOT NULL;
    Далее набивка данных через:
    UPDATE `table` SET `russian`='Привет' WHERE `fraza`='hello';
     
  4. Runapa

    Runapa Постоялец

    Регистр.:
    30 окт 2010
    Сообщения:
    63
    Симпатии:
    5
    Структура у меня такая - В таблице хранятся поля текстами на разных языках. И если добавлять что-то новое, то соответственно добавится поле с новым языком, и я так мыслю, что эти поля должны быть заранее подготовлены. Хотелось бы избежать обновления всей таблицы, если используется из 15 языков только три или четыре... Как-то так... Или может добавлять по мере необходимости новые поля, но тогда встаёт вопрос, как их обновлять не переписывая скриптов каждый раз ?
     
  5. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    может помянять структуру, таблица из трёх полей: фраза, язык, перевод
    Код:
    INSERT INTO table (phrase, language, translate) VALUES('Hello', 'ru', 'Привет');
     
  6. jami

    jami Постоялец

    Регистр.:
    10 авг 2011
    Сообщения:
    114
    Симпатии:
    39
    Сущности с переменным числом полей лучше хранить как json или xml в текстовом поле - и читать в скриптах в хеш, тогда можно будет добавить новое поле на уровне скрипта без изменения структуры БД, но при этом возможно пострадает скорость поиска по отдельному языку.