Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   (mysql) помогите правельно сформировать запрос (https://forum.antichat.xyz/showthread.php?t=106707)

Vinsik 17.02.2009 19:56

(mysql) помогите правельно сформировать запрос
 
требуется запрос поиска и замены
Уменя есть таблица forum
и в ней надо заменить все с sayt.lan на sayt.ru
я пишу
update forum SET forum = replace( ‘sayt.lan’, ‘sayt.ru’)
и не получается( Помогите знающие люди плиииииз :confused:

groundhog 17.02.2009 20:01

UPDATE forum SET forum=REPLACE(forum, 'sayt.lan', 'sayt.ru');

Vinsik 17.02.2009 20:05

phpmyadmin грит #1046 - No database selected

groundhog 17.02.2009 20:07

Ну выбери.. USE 'database' Или слева по списку кликни...

eLWAux 17.02.2009 20:09

зайди через phpmyadmin сперва в forum а потом уже виполни запрос..

Vinsik 17.02.2009 20:10

ОЙ! Биг сори! Уменя не таблица форум а база форум!!!!

groundhog 17.02.2009 20:12

И чё? Апдейт идёт по таблице... Фишку прохавал? Подставляй свои табы и поля и вперёд.

Vinsik 17.02.2009 20:14

А какой запрос сделать чтоб мне искать sayt.lan по всему моему мускулу и заменять на sayt.ru

Vinsik 17.02.2009 20:15

Цитата:

Сообщение от groundhog
И чё? Апдейт идёт по таблице... Фишку прохавал? Подставляй свои табы и поля и вперёд.

Да прахавал..... тока слишком много полей где садержится сайт.лан желательно бы по всей БД запрос такой

groundhog 17.02.2009 20:17

Vinsik, тогда экспорти всю базу в SQL скрипт. Делай замену в нём. Потом поднимай этот дамп. Больше никак. Или запросом по всем полям по одиночке.

Vinsik 17.02.2009 20:20

Цитата:

Сообщение от groundhog
Vinsik, тогда экспорти всю базу в SQL скрипт. Делай замену в нём. Потом поднимай этот дамп. Больше никак. Или запросом по всем полям по одиночке.

опа, точняк, в текстовуху, там все поменять и обратно на место) спс мужик! +++

Zitt 17.02.2009 20:33

две головы хорошо, а одна умная лучше =)))

barnaki 18.02.2009 01:15

$query_bases = ('show databases;');
все это в массив ассоциативный
потом в цикле делаешь use
$query_tables = ('show tables');
точно так же запоминаешь таблицы в такой же массив
и опять в цикле select * from $tables[i] bla bla where blabla

barnaki 18.02.2009 01:38

может где то так но я спать пошел

$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