Переезд сайта на Drupal и правка линков в БД, нужна помощь с mySQL запросом REPLACE
Прислано: MAMONT
пн, 16/07/2007 - 08:21
Другие статьи по теме:
Мне нужно сделать релокейшин сайта и соответственно подправить адреса в ЮРЛ, которые встречаются. Я сначала попытался сделать при помощи следующей строки, но этого результата мне мало. UPDATE node_revisions SET body = REPLACE (body, "forum.mysite.com", "xx.mysite.com/forum") Дело в том, что я хочу сам URL поменять на новый, а текст ссылки (который был сделан посредством Copy – Paste из адресной строки браузера заменить на относительный путь. А в регулярных выражениях mySQL я не разбираюсь. То есть: Ссылку типа SeeMe заменить на SeeMe Ссылку типа http://forum.mysite.com/node/100 заменить на node/100 Кто то может помочь с таким запросом? Не обязательно использовать REGEXP если в нем нет особой нужды, приму и другие Варианты.
- MAMONT's blog
- Для комментирования войдите или зарегистрируйтесь
Опубликовано MAMONT в вт, 17/07/2007 - 10:50.
никто не знает? грустно :(
- Для комментирования войдите или зарегистрируйтесь
Опубликовано misfit в вт, 17/07/2007 - 18:21.
сохрани дамп базы в тектовый файл, замени обычным текстовым редактором и заимпорть обратно :)
- Для комментирования войдите или зарегистрируйтесь
Опубликовано MAMONT в ср, 18/07/2007 - 11:40.
К сожалению нет доступа к рабочей БД, владелец предоставил только тестовую базу. Я написал скрипт миграции в который осталось вложить только mySQL запросс.
- Для комментирования войдите или зарегистрируйтесь
Опубликовано MAMONT в ср, 18/07/2007 - 12:28.
Уже есть некоторые идеи. Но плохие. А как в таблице одним запросом пройтись по тексту типа http://forum.mysite.com/node/balabalabala и заменить на следующее http://forum.mysite.com/node/balabalabala, где node/balabalabala может быть что угодно. Не разбираюсь я в регулярных выражениях вообще :( Требуется написать пример mySQL запроса, который одним заходом меняет в таблице в определенном поле: Это https://community.mysite.com на это http://mysite.com/mysite Это https://community.mysite.com/node/100/ на это http://mysite.com/community/node/100/ Это https://community.mysite.com/XXX/ на это http://mysite.com/community/XXX/ Это https://community.mysite.com на это http://mysite.com/community Это https://community.mysite.com/node/100/ на это http://mysite.com/community/node/100/ Это https://community.mysite.com/node/100/ на это http://mysite.com/community/node/100/ Банальный запрос: UPDATE node_revisions SET body = REPLACE (body, "href=\"https://community.mysite.com/", "href=\"internal:"); Не подходит. Нужно применить регулярное выражение.
- Для комментирования войдите или зарегистрируйтесь



Комментарии