Разница между оператором и запросом в SQL
Я все еще нахожусь в неясности: в чем концептуальное различие между оператором и запросом в SQL? Можете ли вы дать определение каждому из них? Это было бы полезно, например, при выборе имен переменных в программах, чтобы это было понятно всем. Спасибо!
ДОПОЛНЕНИЕ: Как мне назвать фрагмент SQL-кода, состоящий из более чем одного оператора, когда операторы разделены точкой с запятой (;
)? Тот, кто уже ответил, может отредактировать свой ответ. Большое спасибо!
4 ответ(ов)
Вопрос: Как я могу назвать блок SQL кода, состоящий из более чем одного оператора, где операторы разделены точкой с запятой (;)? Спасибо!
Ответ: Блок SQL-операторов, отправляемых на сервер сразу, называется пакет (или batch).
Не все SQL-движки требуют, чтобы операторы в пакете были разделены точкой с запятой. Например, в SQL Server это обычно не требуется, и он разбивает операторы на основе контекста. Исключением являются операторы CTE, начинающиеся с WITH
, для которых точка с запятой обязательна.
В SQL оператором называют любую команду, такую как SELECT, INSERT, UPDATE или DELETE.
Запросом обычно называют оператор SELECT, так как это синоним термина «запрос» в контексте получения данных.
Заявление — это общее определение для полного и корректного SQL-кода, который вы можете отправить в систему управления базами данных (СУБД). Запрос — это заявление, которое возвращает данные, таким образом, запрос является особым видом заявления.
Например, SELECT ...
будет запросом, тогда как DELETE ...
будет просто заявлением.
Они используются взаимозаменяемо большинством пользователей, однако некоторые предпочитают использовать слово "запрос" в конкретном смысле – для обозначения операторов SELECT
, поскольку, когда вы запрашиваете что-то или кого-то, вы ищете информацию. Запросы SELECT
возвращают наборы результатов, что хорошо соответствует этому описанию. Это также подтверждается тем, что операторы SELECT
формально называются оператором DQL (Data Query Language).
Postgres: Как повысить пользователя до суперпользователя?
Как вставить несколько строк в SQLite?
Решения для INSERT OR UPDATE в SQL Server
Выполнение SQL из файла в SQLAlchemy
Использование таблицы базы данных в качестве очереди