X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Как сделать замену в базе данных MySQL
demon932008
demon932008
Topic Starter сообщение 16.7.2010, 0:00; Ответить: demon932008
Сообщение #1


Пишу тексты :)
*******

Группа: Active User
Сообщений: 3854
Регистрация: 4.12.2008
Из: Украина
Поблагодарили: 944 раза
Репутация:   161  


Нужно заменить одно слово на другое, каким запросом это сделать?


--------------------
Услуги рерайтинга и копирайтинга. Отзывы, контакты и цены в теме
Строчку сдаю в аренду!
Строчку сдаю в аренду!
2
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Electric
Electric
сообщение 16.7.2010, 0:23; Ответить: Electric
Сообщение #2


CMS help/antivirus
******

Группа: Active User
Сообщений: 1532
Регистрация: 27.12.2009
Из: Єдина Україна
Поблагодарили: 389 раз
Репутация:   57  


Смотрите тут: http://linsovet.com/mysql-search-replace wink.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
5p1tFiRe
5p1tFiRe
сообщение 16.7.2010, 1:06; Ответить: 5p1tFiRe
Сообщение #3


Частый гость
**

Группа: User
Сообщений: 52
Регистрация: 18.3.2010
Поблагодарили: 1 раз
Репутация:   0  


Есть примитивный, простой, но зато эффективный и безотказный способ в случае, если база не слишком велика.
Сделать дамп базы, скачать на комп, открыть текстовым редактором, сделать замену слова1 на слово2 по всему тексту и залить этот дамп поверх текущей базы. Я так делал для 10мб базы.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
webpavilion
webpavilion
сообщение 16.7.2010, 11:50; Ответить: webpavilion
Сообщение #4


сеошник на пенсии
*******

Группа: Active User
Сообщений: 2726
Регистрация: 28.4.2009
Из: МО
Поблагодарили: 1659 раз
Репутация:   171  


5p1tFiRe, а еще можно микроскопом гвозди забивать.

$q = "
UPDATE maulnet SET
    `message` = '$message',
    `views` = '$views',
    `thanks` = '$thanks',
    `icq` = '$icq',
    `age` = '$age'
WHERE `id` = '$id'
";


--------------------
Не ведитесь, cамопис это почти всегда плохо!

Делаю сайты на Drupal 7.x
(очень дорого)


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
DeimosFobos
DeimosFobos
сообщение 16.7.2010, 12:31; Ответить: DeimosFobos
Сообщение #5


Участник
***


Группа: User
Сообщений: 170
Регистрация: 30.4.2010
Из: www
Поблагодарили: 80 раз
Репутация:   25  


если нужно заменить определенное слово в тексте:
UPDATE `таблица` SET колонка=REPLACE(колонка, 'старое слово', 'новое слово');
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Electric
Electric
сообщение 16.7.2010, 12:40; Ответить: Electric
Сообщение #6


CMS help/antivirus
******

Группа: Active User
Сообщений: 1532
Регистрация: 27.12.2009
Из: Єдина Україна
Поблагодарили: 389 раз
Репутация:   57  


Поскольку тут не читают выше написанного я процитирую текст по линке, которую давал ранее:

Найти и заменить текст в MySQL посредством SQL запроса можно достаточно просто, используя команду REPLACE:
UPDATE ИМЯ_ТАБЛИЦЫ SET ИМЯ_ПОЛЯ = REPLACE(ИМЯ_ПОЛЯ, ‘строка для замены’, ‘чем заменяем’);

Пример: заменяем слово 'interim' на 'projectdeliverable' в поле data таблицы webform:
UPDATE webform SET DATA =REPLACE(DATA, 'interim', 'projectdeliverable');

Если в ответ на данное действие вы получаете ошибку в виде
ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column

это означает, что у вас включена опция "безопасных модификаций", ограничивающих вид запросов на изменения базы. В данном случае необходимо указать условие запроса WHERE, в котором будет присутствовать индексное поле таблицы. В нашем случае имеется поле nid, которое является ключевым и которое в нашем случае всегда больше нуля. Его-то и используем в модифицируемой версии запроса:
UPDATE webform SET DATA =REPLACE(DATA, 'interim', 'projectdeliverable') WHERE nid > 0;

Вот и все smile.gif


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Как защитить свои данные в общественном Wi-Fi?
6 unazekoff 262 Вчера, 23:51
автор: rty9000
Открытая тема (нет новых ответов) Как раскрутить городской портал с помощью вирусной рекламы?
9 Wolfhound 834 Вчера, 23:42
автор: mherter
Открытая тема (нет новых ответов) Как использовать показатель SERP impressions из Яндекс.Вебмастера для анализа изменений в ранжировании
alexeytrudov.com - персональный блог SEO-аналитика
0 Luden 252 Вчера, 21:39
автор: Luden
Открытая тема (нет новых ответов) Плагин Caldera Forms, как настроить?
4 Drayfer 299 Вчера, 15:01
автор: Drayfer
Открытая тема (нет новых ответов) РСЯ, директ и лендинг как увеличить конверсию
5 artstyle 1235 Вчера, 11:11
автор: про100та


 



RSS Текстовая версия Сейчас: 23.5.2018, 1:47
Дизайн