Статьи

PHP: быстрые и простые SQL-запросы с использованием ezSQL

В настоящее время большинство веб-сайтов и веб-приложений управляются базой данных, что означает, что вы, разработчик, должны запросить базу данных, чтобы получить запрошенную информацию. Давайте взглянем на очень полезный инструмент для простой и эффективной обработки запросов SQL в небольших и средних проектах.

Что такое ezSQL и почему это полезно

В больших проектах обычно рекомендуется использовать CMS или среду, такую ​​как Symfony или CodeIgniter, для создания своего сайта. Но в небольших проектах многие разработчики все еще используют функции PHP, такие как mysql_query (), для выполнения запросов SQL к базе данных.

Хотя он функционален, я не рекомендую использовать все эти функции mysql_XXX: большинство веб-сайтов используют MySQL, это правильно, но если однажды вам придется иметь дело с другой БД, такой как PostGres или Oracle … Ваш код не будет работать вообще, и вы придется переписать это. Страшно, не правда ли? Вот почему рекомендуется использовать уровень абстракции базы данных , API, который объединяет связь между вашим приложением / веб-сайтом и базами данных, такими как MySQL, Oracle или PostgreSQL.

Как вы можете догадаться, ezSQL позволяет очень легко работать с различными базами данных. Однако обратите внимание, что он не поддерживает различия в реализациях синтаксиса SQL между различными базами данных.

Кроме того, ezSQL предоставляет несколько методов, которые упрощают запросы к базе данных и помогают создавать более чистый код.

ezSQL и WordPress

Поскольку большинство из вас знакомы с WordPress, вы, вероятно, знаете класс wpdb, который позволяет отправлять запросы в базу данных. Поскольку wpdb основан на ezSQL, и вы уже знакомы с классом WordPress, у вас не возникнет никаких проблем при использовании ezSQL. И не беспокойтесь, если вы никогда не слышали о WordPress или классе wpdb. ezSQL чрезвычайно прост в освоении и использовании.

Загрузка и установка ezSQL

Хорошо, я слишком много говорил. Как насчет кодирования сейчас? Давайте начнем с захвата вашей копии ezSQL . Как только у вас это будет, разархивируйте на свой сервер (или жесткий диск).

Чтобы иметь возможность использовать ezSQL в своих проектах, вы должны включить два файла: первый — ez_sql_core.php, который является основным файлом ezSQL. Второе зависит от базы данных, которую вы собираетесь использовать. Чтобы использовать ezSQL с базой данных MySQL, вы должны включить ez_sql_mysql.php.

После этого вы должны создать объект ezSQL. Это легко сделать, используя имя пользователя базы данных, пароль, имя и хост. В следующем примере демонстрируется включение необходимых файлов и создание объекта ezSQL:

include_once "../shared/ez_sql_core.php";
include_once "ez_sql_mysql.php";
$db = new ezSQL_mysql('db_user','db_password','db_name','db_host');

Теперь у вас есть объект с именем $ db. Мы будем использовать любые типы запросов к нашей базе данных.

Примеры запросов

В ezSQL есть несколько способов сделать запросы SQL чрезвычайно простыми. Давайте посмотрим, что вы можете сделать с этим:

Выполнить любой запрос

Чтобы вставить, удалить или, в общем, выполнить любой запрос к базе данных, мы должны использовать метод запроса. В случае вставки данных метод вернет идентификатор вставки.

$db->query("INSERT INTO users (id, name, email) VALUES (NULL,'The Cat','[email protected]')");

Пример запроса на обновление:

$db->query("UPDATE users SET name = 'Patrick' WHERE id = 4");

Выберите строку

Метод get_row хорош, если вам просто нужно выбрать строку из вашей базы данных. В приведенном ниже примере выполняется простой запрос выбора и отображаются результаты.

$user = $db->get_row("SELECT name, email FROM users WHERE id = 4");

echo $user->name;
echo $user->email;

Выберите одну переменную

Если вам нужна только переменная, метод get_var здесь, чтобы помочь. Использовать его очень просто, как показано ниже.

$var = $db->get_var("SELECT count(*) FROM users");

echo $var;

Выберите несколько результатов

Хотя описанные выше методы весьма полезны, в большинстве случаев вам нужно получать различные строки данных из вашей базы данных. Метод get_results будет получать различные данные из вашей базы данных. Для вывода данных вам необходим простой цикл foreach ().

$results = $db->get_results("SELECT name, email FROM users");

foreach ( $results as $user ) {
    echo $user->name;
    echo $user->email;
}

Выберите столбец

Если вам нужно получить столбец, вы можете использовать метод get_col. Второй параметр — это смещение столбца.

foreach ( $db->get_col("SELECT name,email FROM users",0) as $name ) {
            echo $name;
}

отлаживать

Когда что-то работает не так, как ожидалось, в ezSQL есть отличный метод для отладки. Не удивительно, что метод называется отладка. При вызове метод отображает последний выполненный запрос и связанные с ним результаты.

$db->debug();

Надеюсь, вам понравилась эта статья, и вы будете использовать ezSQL в своих будущих проектах. Это отличный инструмент, который был очень полезен для меня много раз!

Источник: http://www.catswhocode.com/blog/php-fast-and-easy-sql-queries-using-ezsql