Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: один запрос на большом количестве серверов (цикл)  (Прочитано 723 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн mouserok

  • Автор темы
  • Активист
  • *
  • Сообщений: 326
    • Просмотр профиля
нужно в цикле перебрать коннекты и выполнить запрос ... что в моём скрипте не верно ???

$conn_SRV1 = sybase_connect ('SRV1', 'user', 'pass') or die ('Could not connect');
$conn_SRV2 = sybase_connect ('SRV2', 'user', 'pass') or die ('Could not connect');

$SRV_ALL  = $conn_SRV1;
$SRV_ALL .= $conn_SRV2;

$query = "exec proc";

while ($sr = sybase_fetch_assoc($SRV_ALL))
{
sybase_query ($query, $sr);
}

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
1. Точка - это оператор склеивания строк, а у Вас там совсем не строки.
Выведите на печать $SRV_ALL. Думаю, будет интересно :)

2. На вход sybase_fetch_assoc что требуется? Вряд ли массив.

Да, кстати, мы на перле пишем ?  ;) Если да, то надо что-то типа

@srv_ALL=($conn_SRV1, $conn_SRV2);
$query="exec proc";
foreach(@srv_ALL){
  sybase_query($query,$_);
}
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
ТС, Вы делайте подключение к каждому серверу отдельно поочередно.
Если требуется работать со всеми не по очередно, то используйте многопроцессность, а не лепите горбатого. :idiot2:

Оффлайн mouserok

  • Автор темы
  • Активист
  • *
  • Сообщений: 326
    • Просмотр профиля
вот на другом форуме помогли

$conn_SRV = array();
$conn_SRV[] = sybase_connect ('SRV1', 'user', 'pass') or die ('Could not connect');
$conn_SRV[] = sybase_connect ('SRV2', 'user', 'pass') or die ('Could not connect');
foreach($conn_SRV as $conn)
{
    $result = sybase_query('exec proc', $conn);
    while ($data = sybase_fetch_assoc($result))
    {
    }
}

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Это последовательный метод.

 

Страница сгенерирована за 0.016 секунд. Запросов: 22.