![]() |
(mysql) помогите правельно сформировать запрос
требуется запрос поиска и замены
Уменя есть таблица forum и в ней надо заменить все с sayt.lan на sayt.ru я пишу update forum SET forum = replace( ‘sayt.lan’, ‘sayt.ru’) и не получается( Помогите знающие люди плиииииз :confused: |
UPDATE forum SET forum=REPLACE(forum, 'sayt.lan', 'sayt.ru');
|
phpmyadmin грит #1046 - No database selected
|
Ну выбери.. USE 'database' Или слева по списку кликни...
|
зайди через phpmyadmin сперва в forum а потом уже виполни запрос..
|
ОЙ! Биг сори! Уменя не таблица форум а база форум!!!!
|
И чё? Апдейт идёт по таблице... Фишку прохавал? Подставляй свои табы и поля и вперёд.
|
А какой запрос сделать чтоб мне искать sayt.lan по всему моему мускулу и заменять на sayt.ru
|
Цитата:
|
Vinsik, тогда экспорти всю базу в SQL скрипт. Делай замену в нём. Потом поднимай этот дамп. Больше никак. Или запросом по всем полям по одиночке.
|
Цитата:
|
две головы хорошо, а одна умная лучше =)))
|
$query_bases = ('show databases;');
все это в массив ассоциативный потом в цикле делаешь use $query_tables = ('show tables'); точно так же запоминаешь таблицы в такой же массив и опять в цикле select * from $tables[i] bla bla where blabla |
может где то так но я спать пошел
$link = @mysql_connect($dblocation,$dbuser,$dbpasswd); if (!link) { exit ("<p> cant connect to database </p>"); } $query_bases = "show databases"; $result_bases = mysql_query($query_bases); if(!$result_bases) {echo "error bases read";} else { while ($output = mysql_fetch_assoc($result)) { $bases[] = $output; } return ($bases); } } $query_tables = "show tables"; for ($i=0;$i<count($bases);$i++) { mysql_select_db($bases[$i], $link); $result_table= mysql_query($query_table); if(!result_table) {echo "error bases tables";} else { while ($output_tables = mysql_fetch_assoc($result_table)) { $tables[] = $output_table; $query = "UPDATE $tables SET forum=REPLACE(forum, 'sayt.lan', 'sayt.ru');" } return ($tables); } } |
| Время: 12:19 |