Задавайте вопросы, мы ответим
Вы не зашли.
Можно ли у действующей базы (MySQL Для Joomla!) изменять длину поля типа VARCHAR, в данном поле уже содержаться данные. По прихоти разработчиков его длину ограничили 64 символами. Не хватает для записи длинных названий. Хочу увеличить, но не уверен, может это приведет к падению базы?
Неактивен
Можно.
В большинстве случаев оператор ALTER TABLE работает, создавая временную копию исходной таблицы. Изменения осуществляются на копии, затем исходная таблица удаляется и новая переименовывается. Пока оператор ALTER TABLE выполняется, исходная таблица остается доступной для чтения другим клиентам.
Неактивен
Подскажите, как это сделать корректно? Просто зайти в макет таблицы и сменить количество знаков в описании поля? Что делать если это поле часть индекса? Как это можно определить?
Отредактированно avtorpc (25.08.2009 14:24:06)
Неактивен
ALTER TABLE tablename MODIFY fieldname VARCHAR(128) NOT NULL;
Неактивен
avtorpc написал:
Подскажите, как это сделать корректно? Просто зайти в макет таблицы и сменить количество знаков в описании поля?
alter table имя_таблицы modify имя_колонки тип_колонки;
avtorpc написал:
Что делать если это поле часть индекса?
В данном случае (увеличение длинны) это ни на что не повлияет.
Если при использовании операций CHANGE или MODIFY уменьшается длина данных для колонки, имеющей индекс, и получившаяся длина меньше, чем длина индекса, MySQL автоматически уменьшает его размер.
avtorpc написал:
Как это можно определить?
show create table имя_таблицы;
Неактивен