qaz909 0 Опубликовано: 18 января 2015 Рассказать Опубликовано: 18 января 2015 Здравствуйте. (cityguidespb.ru) Существует проблема с ограничением количества символов для тегов в новости. Прочитал комментарий от celsoft написанный 16 января 2015 11:45 вот тут - http://dle-news.ru/release/page,1,3,1632-datalife-engine-v104-final-release.html#comment в котором написано: Никакого бага со стороны DLE в данном вопросе нет и не было. Данное поле в БД MySQL имеет ограничение в 255 символов. Если нужно больше то меняйте для поля tags тип поля на text в таблице dle_posts 1. Разве в dle существует таблица dle_posts? 2. Пробовал изменить уже в таблице dle_post поле tags, и прописать вместо - varchar, text, у меня не вышло, пишет ошибку: Ошибка запроса: #1101 - BLOB/TEXT column 'tags' can't have a default value Как быть? Как увеличить количество символов в tags? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 073 Опубликовано: 19 января 2015 Рассказать Опубликовано: 19 января 2015 1. Разве в dle существует таблица dle_posts? Это я просто опечатался. Последняя буква лишняя. Пробовал изменить уже в таблице dle_post поле tags, и прописать вместо - varchar, text, у меня не вышло, пишет ошибку Правильно пишет, потому что тип поля text не может иметь значений по умолчанию, когда правите это поле, убирайте назначение этому полю значений по умолчанию. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
qaz909 0 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 Автор потому что тип поля text не может иметь значений по умолчанию, когда правите это поле, убирайте назначение этому полю значений по умолчанию. Пробовал: Если ставить TEXT а по умолчанию - нет, то ошибка: Ошибка запроса: #1170 - BLOB/TEXT column 'tags' used in key specification without a key length Если ставить TEXT а по умолчанию - NULL, то ошибка: Ошибка запроса: #1170 - BLOB/TEXT column 'tags' used in key specification without a key length В общем так и не получилось изменить тип поля tags. Так как и что делать что бы получилось изменить тип поля tags? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 073 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 Так как и что делать что бы получилось изменить тип поля tags? Я не могу сказать в чем именно вы допускаете ошибку, потому как не вижу ваших непосредственных действий. Цитата Ссылка на сообщение Поделиться на других сайтах
qaz909 0 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 Автор Я не могу сказать в чем именно вы допускаете ошибку, потому как не вижу ваших непосредственных действий. Пытался сделать изменения непосредственно в phpMyAdmin, нажал на dle_post - структура - нажал изменить напротив tags, дальше увидел это: Дальше сделал так, но вышла ошибка: После попробовал так, но снова ошибка: Дальше сделал бекап таблицы dle_post, потом в файле бекапа сменил `tags` varchar(330) NOT NULL DEFAULT '', на `tags` text NOT NULL, Удалил таблицу `dle_post` в phpMyAdmin и восстановил из измененного бекапа, но тогда ошибка: Ошибка SQL запрос: -- -- Индексы сохранённых таблиц -- -- -- Индексы таблицы `dle_post` -- ALTER TABLE `dle_post` ADD PRIMARY KEY (`id`), ADD KEY `autor` (`autor`), ADD KEY `alt_name` (`alt_name`), ADD KEY `category` (`category`), ADD KEY `approve` (`approve`), ADD KEY `allow_main` (`allow_main`), ADD KEY `date` (`date`), ADD KEY `symbol` (`symbol`), ADD KEY `comm_num` (`comm_num`), ADD KEY `tags` (`tags`), ADD KEY `fixed` (`fixed`), ADD FULLTEXT KEY `short_story` (`short_story`,`full_story`,`xfields`,`title`); Ответ MySQL: #1170 - BLOB/TEXT column 'tags' used in key specification without a key length Дальше в том же бекапе из строк: ALTER TABLE `dle_post` ADD PRIMARY KEY (`id`), ADD KEY `autor` (`autor`), ADD KEY `alt_name` (`alt_name`), ADD KEY `category` (`category`), ADD KEY `approve` (`approve`), ADD KEY `allow_main` (`allow_main`), ADD KEY `date` (`date`), ADD KEY `symbol` (`symbol`), ADD KEY `comm_num` (`comm_num`), ADD KEY `tags` (`tags`), ADD KEY `fixed` (`fixed`), ADD FULLTEXT KEY `short_story` (`short_story`,`full_story`,`xfields`,`title`); Удалил: ADD KEY `tags` (`tags`), После этого снова удалил всю таблицу dle_post и снова восстановил из еще раз измененного бекапа, ошибок уже не выводилось... Но в процессе поиска в интернете решения данной проблемы понял, что без - ADD KEY `tags` (`tags`), на сайте уже не будут выводиться все посты по каждому тегу... выходит что это снова ошибка. Так вот снова спрашиваю, как мне изменить тип поля tags - varchar(255) на tags - text? Может какой то особый запрос надо сделать что бы не нарушать правильность работы базы...? Вы наверняка знаете как и что надо сделать.. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 073 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 qaz909, так. Сделайте следующее, внизу в структуре таблиц удалите индекс для поля tags, после чего измените тип этого поля на text убрав определение значения по умолчанию. Цитата Ссылка на сообщение Поделиться на других сайтах
qaz909 0 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 Автор в структуре таблиц удалите индекс для поля tags, после чего измените тип этого поля на text убрав определение значения по умолчанию. Спасибо! То есть последнее я сделал правильно..? Только другим путем... После манипуляций, напротив поля tags - слова - Первичный, Уникальный, Индекс... перестали быть активными, а от этого не нарушается логика работы базы, все ли теги будут в порядке так сказать? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 073 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 После манипуляций, напротив поля tags - слова - Первичный, Уникальный, Индекс... перестали быть активными, а от этого не нарушается логика работы базы, все ли теги будут в порядке так сказать? Логика на нарушается. Возрастает только нагрузка на сервер, но она неизбежна в данном случае. В противном случае нужно использовать меньшее количество тегов для одной новости. Цитата Ссылка на сообщение Поделиться на других сайтах
qaz909 0 Опубликовано: 20 января 2015 Рассказать Опубликовано: 20 января 2015 Автор Логика не нарушается. Возрастает только нагрузка на сервер, но она неизбежна в данном случае. В противном случае нужно использовать меньшее количество тегов для одной новости. Спасибо! Получил ответ на свой вопрос. Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 23 января 2015 Рассказать Опубликовано: 23 января 2015 А вот такой вопрос - если я изменю тип соответствующего поля, то новость сможет вмещать в себя бОльшее количество символов, чем зашито в системе? Не будет икоты от системы и отрыжек от ее функций? Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 23 января 2015 Рассказать Опубликовано: 23 января 2015 А вот такой вопрос - если я изменю тип соответствующего поля, то новость сможет вмещать в себя бОльшее количество символов, чем зашито в системе? Не будет икоты от системы и отрыжек от ее функций? http://dle-news.ru/tips/143-podderzhka_skriptom_bolshikh_tekstov.html Цитата Ссылка на сообщение Поделиться на других сайтах
zilber 3 Опубликовано: 24 января 2015 Рассказать Опубликовано: 24 января 2015 http://dle-news.ru/t...kh_tekstov.html Благодарю! Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.