Конструктор sql запросов php

Обновлено: 23.04.2024

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

Примеры использования конструктора запросов.

Методы модели, использующие конструктор запросов, в качестве параметра все используют массив с параметрами для SQL запроса и обращаются к таблице модели. Если параметры не были переданы (либо передан пустой массив), то будут извлечены (посчитаны) все записи в таблице модели.

  • select() - возвращает ассоциированный массив записей (рядов, массивов) из базы данных, удовлетворяющих условиям поиска
  • selectOne() - возвращает ассоциированный массив, с полями одной записи
  • selectColumn() - возвращает обыкновенный массив со значениями нужной колонки, параметр "fields->" обязателен
  • countRecords() - возвращает целое число, которое является количеством полей удовлетворяющих заданным условиям
  • findRecord() - тоже что и selectOne(), но если искомая запись была найдена то ее id помещается в свойство "id" текущей модели и возвращается объект класса Record для удобной работы с данными. Если запись не найдена, то вернется false.
  • findRecordById($id) - тоже что и findRecord(), только с единственным параметром id нужной записи. Единственным аргументом является целое число - id искомой записи. Возвращается объект класса Record, либо false если запись не найдена.

Параметры для конструктора SQL запросов

"field" => "value" - параметры вида "ключ-значение" (проверка на равенство)

"field(!=, >, =, <=)" =>"value" - параметры вида "ключ-значение" (проверка на неравенство и другие условия)

"fields->" => "`aaa`,`bbb`,`ccc`" - ограничение полей для выборки (по умолчанию берутся все поля таблицы)

"field->in" => "1,2,3" - перечисление возможных значений параметра

"field->not-in" => "1,2,3" - перечисление значений, которым не должен удовлетворять параметр

"field->like" => "abc" - сравнение со строковым значением

"field->not-like" => "abc" - сравнение с отсутствием строкового значения

"order->asc" => "field", "order->desc" => "field" - сортировка результатов выборки (подробнее в разделе Сортировка)

"order->double" => "field->direction" - дополнительная (двойная) сортировка результатов выборки, применяется совместно с "order->asc" => "field" или "order->desc" => "field"

"order->in" => "23,5,76,9" - сортировка результатов выборки в порядке следования значений параметра id. Применяется только для СУБД MySQL, при этом запускается конструкция "ORDER BY FIELD (`id`, 23,5,76,9)"

"order->" => "random" - сортировка результатов выборки в случайном порядке

"limit->" => "value" - ограничение количества результатов выборки (подробнее в разделе Постраничная разбивка)

"table->" => "value" - указание таблицы к которой направлен запрос (по умолчанию берется таблица модели, из которой вызывается метод)

"group->by" - группировка результатов по заданному полю (SQL оператор "GROUP BY")

"extra->" => "sql query" - дополнительные условия запроса в обыкновенном SQL формате. Добавляются после всех условий оператора "WHERE" в SQL запросе. Используется для передачи в запрос сложных условий со скобками и/или условием "OR".

"field->m2m" => "value" - извлечение данных по полю многие ко многим, в качестве значения передается id записи противоположной модели

Внимание! Конструктор запросов используется для быстрого извлечения данных по наиболее распространенным сценариям. Он не охватывает всего многообразия SQL конструкций. Для построения любых SQL запросов используются прямые запросы.

Где-то полтора года назад я начал заниматься web разработкой. Начинал с функционального программирования. Примерно пол года назад я перешел на ООП и стал использовать MVC архитектуру проектирования. Недавно появилась задача оптимизировать работу с базой данных, т. к. вся связь и работа с базой осуществлялась через один класс. Это было неудобно потому, что все время приходилось вручную писать SQL — запросы. Задача была разбита на 2 этапа:

  1. Написать класс для подключения к базе данных
  2. Написать класс модели для работы с данными


Теперь подробнее о каждом абстрактном методе. Реализация этих методов будет представлена ниже, когда я буду описывать класс модели News.
Некоторые входные параметры повторяются, поэтому я не будут повторно их описывать за исключение тех случаев, когда это действительно потребуется.

Метод getRecords
    $what — передает массив полей, которые нужно выбрать из таблицы $where — передает ассоциативный массив ключей в виде array('Поле'=>array('знак','значение')). Это дает нам возможность более гибко использовать предикат WHERE
  • $limit — передает ассоциативный массив ключей в виде array('начальная запись', 'количество записей'). Такая структура дает нам возможность реализовать постраничный вывод или вывод ограниченного количества записей
  • $order — ассоциативный массив array('поле'=>'вид сортировки'). Дает возможность сортировки по любому количеству столбцов. $join — ассоциативный массив array('Тип связи', array('Таблица1', 'Таблица2'), array('Алиас1', 'Алиас2'), array('поле1','поле2')). Тип связи: LEFT, INNER, RIGHT, OUTER; Таблица1 и Таблица2: таблицы между которыми устанавливается связь; Аллиас1 и Аллиас2 — псевдонимы для таблицы; Поле1 и Поле2 — это соотв. PK и FK таблиц
  • $degub — этот параметр нужен для сохранения в свойства класса уже созданного sql запроса, а также параметров, которые нужно если мы используем prepare statement в PDO
Метод addRecord
  • $data — ассоциативный массив параметров в виде: 'поле'=>'значение', которые будут вставляться в таблицу
Метод deleteRecords
  • $table — название таблицы из которой будут удаляться данные
Метод setRecords
  • $what — В этом случает этот параметр передает массив в виде: 'поле'=>'значение', которые будут использоваться с оператором SET
Метод query

Рассмотрим эти методы подробнее.

Метод checkWhat

Единственным входным параметром этого метода является ассоциативный массив значений, которые либо нужно выбрать с помощью SELECT или нужно обновить с помощью UPDATE.
Параметр $what описан тут

Думаю тут все довольно ясно. Проверка на массив, обход всех элементов массива и построение части строки запроса.

Метод checkJoin

Параметр $join описан тут. Также предусмотрена ситуация, когда нужно объединить больше двух таблиц, тогда параметр $join может быть представлен в виде array($join1, $join2. $joinN)

Метод checkWhere

Метод проверяет наличие параметров для WHERE составляющей запроса. Параметр $where описан тут

Метод checkLimit

Генерация предикаты LIMIT запроса. Тут все довольно просто.

Метод checkOrder

Генерация предикаты ORDER.

Вот и все методы, которые нужны для генерации основных частей запроса. Но т.к. мы используем prepare statement в таких частях запроса как WHERE и WHAT, то нам нужно объединить параметры эти частей, чтобы передать в PDO. Для этой задачи я написал еще один метод

Метод checkParams


Следующим этапом построения SQL запросов является итоговая генерация sql кода. Для этого я создал 4 метода: prepareSelectSQL, prepareInsertSQL, prepareDeleteSQL, prepareUpdateSQL
Рассмотрим эти методы подробнее.

Метод prepareSelectSQL

Параметры этого метода совпадают с параметрами метода getRecords. Это $what, $where, $limit, $order, $join, $debug. Эти параметры описаны тут

Метод prepareInsertSQL

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

Метод prepareDeleteSQL

Запрос для удаления записей. Используем название таблицы и набор параметров для предикаты WHERE.

Метод prepareUpdateSQL

Генерируем sql запрос для обновления записей в таблице.


Выше был описан класс DataBase, который отвечает за подключение к базе данных и генерацию DML sql запросов. Ниже приведен полный код этого класса.

Теперь настало время описать класс модели News. Этот класс реализует все абстрактные методы класса-родителя DataBase и статический метод getObject. Этот метод возвращает экземпляр объекта этого класс. Этот метод был создан для того, чтобы отпала необходимость в создании объекта класса News путем использования ключевого слова new. Вот как это выглядит:

Каждый метод этого класса вызывает нужный ему генератор sql запроса и передает итоговый запрос и параметры в PDO для выполнения запроса. Ниже приведен полный код класса модели News.


В принципе на этом можно завершать. Конечно же, можно было еще добавить генерацию предикаты GROUP BY и HAVING, но я решил этого не делать. Думаю, что принцип построения запросов я изложил ясно и проблем с использованием не возникнет. В итоге мы получили механизм построения sql запросов, который не завязан на конкретной структуре таблицы в БД и может применяться к разным типам DML SQL запросов. Если нужно будет, могу создать репозиторий на github.
Буду рад услышать критику и предложения по улучшению метода.

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

SQL Query Builder

Scrutinizer Code Quality
SensioLabsInsight

An elegant lightweight and efficient SQL Query Builder with fluid interface SQL syntax supporting bindings and complicated query generation. Works without establishing a connection to the database.

The recommended way to install the SQL Query Builder is through Composer. Run the following command to install it:

The SQL Query Builder allows to generate complex SQL queries standard using the SQL-2003 dialect (default) and the MySQL dialect, that extends the SQL-2003 dialect.

2.1. Generic Builder ↑

The Generic Query Builder is the default builder for this class and writes standard SQL-2003.

All column aliases are escaped using the ' sign by default.

2.2. MySQL Builder ↑

The MySQL Query Builder has its own class, that inherits from the SQL-2003 builder. All columns will be wrapped with the tilde ` sign.

All table and column aliases are escaped using the tilde sign by default.

2.3. Human Readable Output ↑

Both Generic and MySQL Query Builder can write complex SQL queries.

Every developer out there needs at some point revising the output of a complicated query, the SQL Query Builder includes a human-friendly output method, and therefore the writeFormatted method is there to aid the developer when need.

Keep in mind writeFormatted is to be avoided at all cost in production mode as it adds unneeded overhead due to parsing and re-formatting of the generated statement.

От автора: При создании веб-приложений очень часто приходится писать и выполнять очень много SQL запросов, что порой не совсем удобно. Поэтому в данном уроке я хотел бы рассказать Вам об очень интересной библиотеке – FluentPDO, которая является удобным и простым в использовании конструктором SQL запросов.

скачать исходники
скачать урок

Установка библиотеки

Для начала, давайте установим библиотеку FluentPDO, поэтому переходим на сайт официального разработчика и скачиваем данную библиотеку:



Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать веб-приложение на PHP с полного нуля

После скачивания мы получили архив, который необходимо распаковать. После распаковки, переходим в получившеюся папку, затем в каталог FluentPDO – это и есть интересующая нас библиотека. Исходные файлы данной библиотеки, необходимо скопировать в один из каталогов Вашего сайта, я копирую в папку lib. После копирования необходимо подключить файл FluentPDO.php, к Вашему сайтe или скрипту:

Далее, как следует из названия, библиотека FluentPDO, работает с использованием расширения по работе с базой данных PDO. Поэтому первым делом необходимо создать подключение к базе данных, используя PDO, другими словами создать объект класса PDO:

Для сегодняшнего урока, я буду использовать тестовую базу данных fluentpdo, с небольшим количеством таблиц. Затем создаем объект главного класса библиотеки FluentPDO и передаем только что созданный объект класса PDO:

На этом установка библиотеки завершена, приступаем к работе с ней:

Выборка данных

Итак, для простой выборки данных всей полей произвольной таблицы, необходимо использовать метод from(), передав ему имя таблицы, данные которой необходимо получить:

Теперь давайте отобразим данные на экране, для этого достаточно пройтись в цикле по объекту $query:

Давайте откроем браузер и посмотрим, что получилось:


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

Метод where, добавляет в SQL запрос конструкцию WHERE, и принимает в качестве первого параметра, поле, по которому осуществляется фильтрации, а вторым параметром — значение данного поля. При этом на экране мы увидим отработку, данного метода:


Формирование условия WHERE IN:

Для формирования условия данного типа, используется все тот же метод where, за исключением того, что во втором параметре передается массив параметров для конструкции IN, SQL – запроса. Очень часто для фильтрации, необходимо проверять, удовлетворяет ли определенному условию, некоторое значение. Поэтому давайте отобразим на экране все записи таблицы type, у которых поле in_header меньше 4.


Бесплатный курс по PHP программированию

Освойте курс и узнайте, как создать веб-приложение на PHP с полного нуля

Отличие данного примера в том, что первым параметром к методу where, мы передаем строку, в которой указываем какое поле сравнивается и оператор сравнения. А вместо значения указываем, специальную метку, которая впоследствии, будет заменена на значение ячейки массива, который передается вторым параметром к методу. Обратите внимание, что метка – полностью совпадает с ключом массива, передаваемого во втором параметре.

Так же хотел бы продемонстрировать полностью аналогичную по действию строку, но записанную несколько иначе:

Здесь, в качестве метки используется вопросительный знак, который будет заменен, на значение второго параметра метода. При этом на экране мы увидим следующее:


Теперь давайте рассмотрим формирование условия WHERE AND, для этого при вызове метода where(), необходимо передать массив, при этом первая ячейка – это фильтрация по данному параметру, а затем каждая последующая – это новое условие AND.

В данном примере мы получаем все записи из таблицы tovar, где идентификатор категории равен 17 и поле puglish = 1. Сортировку данных в выборке, а также ограничение количества получаемых данных можно реализовать, вызвав следующие методы:

Метод limit, принимает два параметра: первый – это с какого элемента нужно начать выборку результатов, и второй – количество выбираемых записей. Метод orderBy, используется для сортировки выборки. Параметром принимает всего одну строку с параметрами сортировки элементов скрипта. Теперь давайте рассмотрим, как выбрать только интересующие нас поля, так как до этого мы получали все поля из интересующих таблиц:

Обратите, внимание, что если нужно выбрать только определенные поля, то первым делом необходимо вызвать метод select(null) и передать ему как параметром значение null, тем самым, сбросив получение всех полей из базы данных. Затем вызываем метод select повторно и передаем ему, те поля, которые необходимо получить из базы данных – в виде массива.

Теперь давайте рассмотрим, как выполнить выборку данных, используя левое объединение таблиц:

Как Вы видите, для левого объединения, достаточно вызвать метод leftJoin и передать ему строку – параметр, в котором указан признак объединенная таблиц. То есть в данном примере, я выбираю данные из таблицы brands, а также из таблицы tovar. Аналогично если нужно использовать объединение INNER JOIN, необходимо вызвать метод innerJoin():

Редактирование данных

Библиотека FluentPDO, также помимо получения данных, очень хорошо умеет редактировать данные в базе данных. Для начала, давайте добавим данные в одну из таблиц:

Для этого создаем массив содержащий данные для вставки. Ключи данного массива – это имена полей, в которые будут вставлены данные, а значения ячеек – это значения которые будут добавлены в соответствующие поля. Далее для вставки вызываем метод insertInto(), передаем ему, как параметром, имя таблицы, в которую добавляются данные. Затем вызываем метод values($values), в котором указываем массив данных для вставки. И в завершении вызываем метод execute(), который выполняет сформированный SQL запрос.

Для обновления существующих записей, необходимо воспользоваться следующими методами:

Здесь массив $values – это массив полей и значений, которые необходимо обновить. При вызове метода update, необходимо указать имя таблицы, поля которой подлежат обновлению, в свою очередь метод set(), принимает в качестве параметра массив $values. При обновлении данных, необходимо вызвать, уже знакомый нам метод where, который укажет какие именно поля следует обновить. И в завершении, вызываем метод execute(), который выполнит SQL запрос и тем самым, обновит данные.

Для удаления данных из таблиц, используется метод deleteFrom(), который принимает параметром, название таблицы, данные которой нужно удалить. Так же при вызове данного метода, можно вызвать метод where(), при помощи которого можно указать какие именно поля, подлежат удалению.

Независимо от того, как вы это делаете, создание ручного кода и запросов SQL с нуля занимает невероятно много времени. Часто более эффективно использовать конструктор SQL-запросов для разработки SQL-запросов. Многие инструменты предлагают такие функции, как перетаскивание графического интерфейса пользователя и инструментальные панели, чтобы ускорить разработку.

Вот наш список из 8 лучших конструкторов SQL-запросов:

  1. Redgate SQL Prompt Редактор SQL с контекстным предиктивным текстом, который может предложить следующее ключевое слово, которое вам нужно для вашего утверждения.
  2. dbForge Query Builder Визуальный конструктор SQL, включающий элементы перетаскивания и выбора списков, помогающие создавать операторы.
  3. SentryOne SQL Sentry Анализатор производительности базы данных, который выявляет неэффективные запросы, чтобы помочь вам быстрее запускать скрипты.
  4. FlySpeed ​​SQL Query Редактор SQL с визуальными функциями перетаскивания, проверкой орфографии и предложениями для написанных операторов SQL.
  5. SQL Query Tuner (Диспетчер диагностики SQL) Дополнение к SQL Diagnostics Manager, этот инструмент анализирует запросы и выявляет ошибки.
  6. RazorSQL Визуальный конструктор SQL-запросов, включающий синтаксическое цветовое кодирование и сопоставление скобок, чтобы помочь вам избежать распространенных ошибок.
  7. Data Xtractor Визуальный конструктор SQL предназначен для тех, кто не имеет опыта работы с SQL. Доступен в бесплатной и платной версиях.
  8. Idera Rapid SQL Визуальный конструктор SQL вместе с редактором текстовых операторов. Редактор включает синтаксическое цветовое кодирование и подсветку ошибок.

8 лучших построителей SQL-запросов

Мы рассмотрим восемь лучших разработчиков SQL-запросов.

1. Redgate SQL Prompt

Redgate SQL Prompt это Инструмент создания SQL это может обеспечить подсказки кода при вводе. Программное обеспечение делает контекстные рекомендации на основе правил анализа кода и есть библиотека фрагментов кода для пользователя, чтобы обратиться к. Есть также широкие возможности форматирования, так что вы можете точно выбрать, какие сценарии вы хотите отформатировать или заблокировать определенные блоки от форматирования.

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

SQL Prompt Pro может интегрироваться с SQL Server Management Studio и Visual Studio так что вы можете создавать точные запросы SQL более эффективно. Есть несколько функций, которые являются уникальными для версии SQL Prompt Pro для SSMS. Вы можете спасти, предварительный просмотр, и восстановить вкладки из вашего последнего сеанса.

2. dbForge Query Builder

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

Чтобы помочь с редактированием кода, dbForge Query Builder имеет автоматическая проверка синтаксиса SQL. Для больших запросов вы можете использовать Структура документа окно для навигации быстрее. Существует также возможность использовать более общие функции редактирования SQL, такие как закладки, поиск текста, и раскраска.

макет окна можно настроить, с подсветкой и настройкой панели инструментов. Вы даже можете выбрать, какой скин интерфейса вы хотите использовать. Закончив кодирование, вы можете экспортировать данные в 10 различных форматах, включая HTML, CSV, XML, PDF, MS Excel, MS Access, DBF, ODBC, и Текст.

dbForge Query Builder предназначен для тех, кто хочет сделать процесс кодирования максимально безболезненным. Цена также очень конкурентоспособна. Стандартное издание dbForge Query Builder начинается с $ 99,95 (£ 76,97) за одну лицензию. Существует также 30-дневная бесплатная пробная версия.

3. SentryOne SQL Sentry

Автоматические оповещения уведомить вас, когда запрос соответствует определенным условиям или параметрам. Например, если запрос выполняется медленно, вам будет отправлено предупреждение. Есть более 100 условий оповещения доступны из коробки. Вы можете комбинировать оповещения с автоматическими ответами, поэтому после генерации оповещения программа может автоматически выполнить команду для устранения проблемы..

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

Узнать цену SentryOne SQL Sentry вам придется связаться с компанией напрямую. Цена зависит от того, какие системы вы хотите отслеживать, количество лицензий, потребности ваших DevOps и количество пользователей или серверов, которые вы хотите отслеживать. Вы можете скачать двухнедельную бесплатную пробную версию.

4. Flyspeed SQL Query

Flyspeed SQL Query это Построитель запросов к базе данных на базе Windows что вы можете использовать для создания запросов SQL через перетащить и падение и визуальный построитель запросов. Создавайте сложные запросы и редактируйте подзапросы в визуальном и текстовом режимах SQL. Форматирование настраивается, поэтому вы можете решить, как будет представлен код.

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

Программное обеспечение поддерживает синтаксис SQL для Microsoft SQL Server, MySQL, PostgreSQL, оракул, InterBase, жар-птица, MS Access, MS Excel, SQLite, Advantage DB, и более. Он также многопоточный, каждый запрос выполняется в другом потоке..

Бесплатная версия позволяет создавать запросы SQL и просматривать данные результатов, но вам нужна полная версия для сохранения и экспорта данных. FlySpeed ​​SQL Query Desktop версия стоит $ 39 (£ 30,03), а FlySpeed ​​SQL Query Portable версия стоит 49 долларов. Существует также 30-дневная бесплатная пробная версия.

5. SQL Query Tuner (Диспетчер диагностики SQL)

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

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

Программное обеспечение имеет ряд диагностических возможностей, которые вы можете использовать для мониторинга производительности базы данных. Например, вы можете контролировать доступность в реальном времени и производительность экземпляров сервера. Оповещения выявить плохо выполняющиеся запросы. Есть о100 доступных предупреждений из коробки так что вы можете начать быстро.

SQL Query Tuner за Диспетчер диагностики SQL отлично подходит для быстрого создания кода SQL. SQL Diagnostic Manager Pro стоит от 2156 долларов (1660 фунтов). Для крупных предприятий также предусмотрены скидки на несколько лицензий. Существует 14-дневная бесплатная пробная версия.

6. RazorSQL

RazorSQL имеет Инструмент SQL Query Builder это позволяет пользователю визуально строить запросы. Вы можете выберите тип оператора SQL, который вы хотите сгенерировать выбрав столбцы и операции, которые будут включены. Инструмент прост в навигации благодаря четырем вкладкам для внесения изменений в выписки; Выбрать, вставка, Обновить, и удалять. Например, нажимая вкладку «Вставка», пользователи могут выбрать столбцы, которые они хотели бы добавить в оператор..

Редактор SQL это еще один инструмент, который можно использовать для упрощения создания кода. Есть подсветка синтаксиса для облегчения навигации по коду и функции автозаполнения для ускорения производства кода.

Для дальнейшей поддержки навигации есть функция автоматического поиска так что, когда пользователь вводит запрос, появится список столбцов с таблицами, по которым пользователь может щелкнуть. Функция поиска совместима с SQL, Transact-SQL, SQL PL, PL / SQLm HP, Джава, JavaScript, HTML, XML, CSS, и более.

RazorSQL доступно для Windows, Mac OS, Linux и Solaris. Стоимость программного обеспечения зависит от количества пользователей, которых вы хотите поддержать. Для одного пользователя цена составляет $ 99,95 (£ 79,95) за пользователя. Для 2-9 пользователей стоимость снижается до 96,95 (76,95 фунтов) или 94,95 (74,95) для 10-19 пользователей. Для 20 и более пользователей цена снижается до 92,95 долл. США (72,95 долл. США) за пользователя. Вы можете скачать 30-дневную бесплатную пробную версию.

7. Data Xtractor

Data Xtractor это Инструмент SQL-запроса что позволяет пользователям создавать запросы без знания SQL. Data Xtractor поставляется с визуальный построитель SQL-запросов называется Запрос Xtractor. Query Xtractor может создавать только для чтения и поддерживает базы данных, в том числе MySQL, PostgreSQL, оракул, SQL Server, Amazon Redshift, SQLite, и лазурь. После выполнения запроса вы можете просмотреть результаты в формате электронной таблицы..

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

Data Xtractor бесплатно для SQLite, Microsoft Access, жар-птица, и Базы данных Microsoft SQL Server CE. Есть также три платные версии программы: базы данных с открытым исходным кодом, коммерческие базы данных. Все поддерживаемые базы данных. Для баз данных с открытым исходным кодом инструмент стоит 24 доллара США (18,48 фунта) в месяц и совместим с базами данных MySQL, MariaDB, Amazon Aurora, PostgreSQL и Amazon Redshift..

Версия коммерческих баз данных стоит $ 29 (£ 22,33) в месяц с поддержкой Microsoft SQL Server / Azure, Oracle, IBM Db2, Sybase / SAP SQL и Sybase SAP ASE. Пакет «Все поддерживаемые базы данных» стоит $ 39 в месяц и поддерживает все вышеупомянутые базы данных. Вы также можете скачать Query Xtractor бесплатно.

8. Идея быстрого SQL

Idera Rapid SQL это Инструмент создания кода SQL что вы можете использовать для строить сложные операторы SQL с визуальный построитель запросов. Когда вы печатаете, вы можете воспользоваться контекстными рекомендациями, которые предлагают такие элементы, как таблицы, функции и столбцы, которые вы можете использовать.

Idera Rapid SQL совместим с SQL Server, оракул, Db2, и SAP Sybase. Платформа отлично подходит для новых пользователей, поскольку предлагает шаблоны кода, так что вам не нужно запоминать синтаксис SQL. Навигация является одним из самых сильных аспектов Idera Rapid SQL. Авто форматирование и окраска синтаксиса упростить поиск кода и управление файлами SQL любого размера.

SQL IDE также предоставляет среду разработки. Пользователь может создавать код и просматривать обратную связь в реальном времени на вопросы и исправления, чтобы улучшить их код. Точно так же есть Отладчик SQL который находит ошибки кодирования, чтобы вы могли их отладить.

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

Выбор SQL Query Builder

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

Инструменты, такие как SQL-запрос RedGate, dbForge Query Builder, и Диспетчер диагностики SQL все помогают управлять вашим кодом. В то время как некоторые могут использоваться для создания запросов с нуля, другие просто выделяют плохо выполняющиеся запросы. Поиск инструмента, который наиболее соответствует вашему варианту использования, даст наилучшие результаты.

Читайте также: