За последние 24 часа нас посетили 16755 программистов и 1643 робота. Сейчас ищут 899 программистов ...

Подключение к нескольким базам sqlite через PDO

Тема в разделе "PHP и базы данных", создана пользователем Forestfamily, 21 май 2016.

  1. Forestfamily

    Forestfamily Новичок

    С нами с:
    4 май 2016
    Сообщения:
    5
    Симпатии:
    0
    На сайте нужно реализовать поиск по множеству баз данных через 1 запрос. Как это сделать? Как сразу подключиться ко всем требуемым мне базам?
    Сейчас подключение и вывод имеют следующий вид:

    PHP:
    1. $db = new PDO('sqlite:bases/'.$base.'.sqlite');
    2. $sql = "SELECT id, task_text, task_img, status FROM task WHERE status!=0";
    3. $q = $db->prepare($sql);
    4.     $q->execute();
    5.     $q->bindColumn(1, $id);
    6.     $q->bindColumn(2, $task_text);
    7.     $q->bindColumn(3, $task_img, PDO::PARAM_LOB);
    8.     $q->bindColumn(4, $status);
    9.     while($q->fetch()){
    10.       ...Вывод...
    11.    }
    В $base летит значение из селекта, по которому я определяю в какой базе идет поиск, но вот теперь стоит задача сделать поиск в том числе и сразу по всем базам (баз более 150). Все базы sqlite.

    Заранее спасибо.
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Forestfamily нравится это.
  3. Forestfamily

    Forestfamily Новичок

    С нами с:
    4 май 2016
    Сообщения:
    5
    Симпатии:
    0
    В MySQL не очень подходить конвертить, т.к. есть ПО которое заточено исключительно под sqlite базы и оно эти базы регулярно обновляет.
    Есть в голове идиотское решение наверное - прогнать все через цикл просто, но что-то мне подсказывает, что это будет тот еще удар по производительности.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Протестируй, в mysql за минуту можно очень много всего загнать. Тут из-за кол-ва баз данных под полторы сотни могут быть проблемы, но это всё в теории. Например как копирование большого числа фалов, будет долгим, а один большой быстрее при том же объёме.
     
  5. Forestfamily

    Forestfamily Новичок

    С нами с:
    4 май 2016
    Сообщения:
    5
    Симпатии:
    0
    Да там уже все по sqlite заточено и админка и такое прочее, нужно именно через sqlite и PDO как-то все же сделать.
     
    #5 Forestfamily, 21 май 2016
    Последнее редактирование: 21 май 2016