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



 

Здравствуйте, гость (

| Вход | Регистрация )

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


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


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


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


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


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


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


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


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

Найти и заменить текст в 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


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Большие ставки для кликов в Я.Директ. Как удешевить?
2 rownong27 1124 26.3.2024, 14:13
автор: knezevolk
Открытая тема (нет новых ответов) Как вы бросили работу и перешли на заработок с сайтов?
12 uahomka 2298 25.3.2024, 6:52
автор: Skyworker
Открытая тема (нет новых ответов) Как отозвать банковский платеж фрилансеру?
28 metvekot 3921 25.3.2024, 6:34
автор: Skyworker
Открытая тема (нет новых ответов) Как вывести деньги в Украине с заблокированного Юмани ?
23 freeax 3647 24.3.2024, 20:55
автор: Liudmila
Открытая тема (нет новых ответов) Через какой браузер и как можно найти в кэшэ браузера видео
10 Room 1943 23.3.2024, 7:41
автор: Room


 



RSS Текстовая версия Сейчас: 29.3.2024, 14:17
Дизайн