За последние 24 часа нас посетили 17616 программистов и 1652 робота. Сейчас ищут 870 программистов ...

Средства доступа к БД

Тема в разделе "Прочие вопросы по PHP", создана пользователем enshtein, 19 сен 2007.

  1. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    Собственно вопрос в следующем... Уважаемые господа, скажите пожалуйста:
    1) Какие средства доступа к БД вы используете в своей повседневной работе (может классы от PEAR, или куски библиотек каких-либо или же свои самописные классы/набор функций доступа) ???
    2) Используете ли вы placeholder'ы??
    3) Если вы используете свои самописные или чужие классы, то присутствуют ли в них средства логирования ошибок MySQL - если присутсвуют то на каком уровне??
    4) Что скажите насчет библиотеки DbSimple Дмитрия Котерова ?? (http://dklab.ru/lib/DbSimple/)
     
  2. Anonymous

    Anonymous Guest

    1. Свои.
    2. Несомненно.
    3. Реализованно в виде регистрации в классе метода-обработчика ошибок.
    4. Когда она еще не была DbSimple, а лишь DbPlaceholder нравилась больше. Но и сейчас вещь неплохая.
     
  3. dark-demon

    dark-demon Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    1.920
    Симпатии:
    1
    Адрес:
    леноград
    1. своё.
    2. нет, конечно.
    3. trigger_error.
    4. перегружена.
     
  4. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    обоснуй плиз такое решение по поводу placeholder'ов...
     
  5. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
  6. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    - а в чем удобство такого решения??? похоже просто на класс-обертку
     
  7. dark-demon

    dark-demon Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    1.920
    Симпатии:
    1
    Адрес:
    леноград
  8. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    Вот именно, что просто обёртка с парой автоматизаций и некоторыми настройками. А зачем городить огород из собственных функций с узкой специализацией, малой масштабируемостью и гибкостью, но зато абсолютно абстрактных и как таковой SQL-запрос писать то вроде и не надо, он же сам составляется, а производительность падает, да и удобство сомнительное. Так и SQL забыть можно.
    Запрос и результат запроса должны собираться и разбираться ручками, а не супер классом. Достаточно имеющихся в PHP функций для работы с БД и всё. ИМХО конечно.
     
  9. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    +10 ибо весь огород с этими SQL и абстракциями ни кому нафиг не нужны.
     
  10. Psih

    Psih Активный пользователь
    Команда форума Модератор

    С нами с:
    28 дек 2006
    Сообщения:
    2.678
    Симпатии:
    6
    Адрес:
    Рига, Латвия
    1). MySQLi & MySQL, никаких библиотек
    2). Стараюсь понемногу начинать юзать где есть MySQLi
    3). Нет
    4). Скажу, что любая библиотека, в которой команда выборки с базы возращает не ссылку на результат, а уже набранным массив - идиотизм. Лично я считаю что PLAIN SQL самое оно. В моей работе простейшие запросы, которые могут быть реализованы методами $db->select($table, $fields, $where, $limit) составляют ~5-10%. Всё остальное слишком сложно и возможно только будучи написано руками.
     
  11. Anonymous

    Anonymous Guest

    1. Огород с абстракциями нужен мне, ибо работаю регулярно и с Oracle и с MySQL. В разумных рамках, SQL я не мигрирую, естественно. Но класс-обертка помогает минимизировать сложность портирования частей программного кода.
    По поводу 4 - согласен с Psih, да одним НО — у меня есть методы FetchValue, FetchArray и FetchAll для более удобного получения данных.