Главная > Заметки, Статьи > Работа с базой данных MySQL (class DB_Engine)

Работа с базой данных MySQL (class DB_Engine)

Иногда для упрощения работы программиста требуется использовать всякого рода фреймворки, классы, шаблоны. Сегодня я расскажу в кратце с примером кода, о том, как работать с базой данных. много теории давать не буду, сразу пример.

Подключение класса:

/** Класс базы данных */
$DB= new DB_Engine('mysql', $_CONFIG['DBHOST'], $_CONFIG['DBUSER'], $_CONFIG['DBPASS'], $_CONFIG['DBNAME']);

Получение всех данных таблицы в массив:

$all = $DB->getAll('SELECT * FROM table WHERE условие');

foreach($all as $num => $item)
{
print_R($item);
}

после выполнения запроса, результатом возврщается массив $all где ключем является номер записи, а значением — массив значений строки таблицы, которая является результатом выполнения запроса. Раньше бы мы сделали так:

$result = mysql_query('SELECT * FROM table WHERE условие');
$num=0;

while($data = mysql_fetch_array($result))
{
$num++;
print_r($data);
}

Получение одного значение нужной нам ячейки таблицы:

echo $DB->getOne('SELECT title FROM table WHERE id="1');

Выведет на экран название записи с номером 1

Получение одной строки таблицы:

$item = $DB->getRow('SELECT id, title, email FROM table WHERE id=10');
echo $item['id'];
echo $item['title'];
echo $item['email'];

Возвращает массив полученных параметров таблицы.

Получение колонки результатов:

$items = $DB->getCol('SELECT  title FROM table WHERE id=10');
print_r(items);

Смесь вывод всех и единичного значения из таблицы как массива.

Выполение запроса (DELETE, INSERT, ...)

$DB->execute('DELETE FROM table WHERE id="111"');

Просто выполняет запрос, который не возвращает результат.

А вот и сам класс для работы с базой данных скачать тут: db_engine_class.

Заметки, Статьи , ,

  1. 12 Фев 2009 из 4:13 | #1

    важная информация

  2. 16 Фев 2009 из 2:10 | #2

    респект... опупенная статейка

  3. 16 Фев 2009 из 6:16 | #3

    жесть... зачетно...

  4. 17 Авг 2009 из 13:15 | #4

    Не понял! А где брать этот класс DB_Engine? Кто скажет?

  5. Buzzer
    22 Авг 2009 из 14:15 | #6

    У меня все время, при каждом примере использования выдает эту ошибку: Call to undefined function: lastfileline()in ...\db_engine_class.php on line 334. B воообще на той строчке где вызывается LastFileLine(1).

    Что делать, подскажите пожалуйста.

  6. 25 Сен 2009 из 14:27 | #8

    Спасибо, пригодится для изучения!

  1. Трекбеков пока нет.