Разница между DDL и DML
В системе управления реляционными базами данных (RDBMS) огромное количество данных хранится в таблицах. Эти таблицы представляют собой набор связанных данных, где данные хранятся в строках и столбцах. Такой способ хранения данных позволяет эффективно использовать его при возникновении требования. Очень важно получить доступ к данным из этих таблиц, чтобы использовать их для бизнес-требований, а также, когда необходимо изменить существующие данные, содержащиеся в базе данных. Чтобы получить данные или манипулировать ими, нам нужен язык структурированных запросов (SQL). SQL поставляется со стандартными командами для взаимодействия с RDBMS. Язык определения данных (DDL) используется для определения схемы базы данных, а язык манипулирования данными (DML) используется для манипулирования данными, которые уже существуют в базе данных. В этой теме мы собираемся узнать о DDL против DM. В этой теме мы собираемся узнать о DDL против DML.
Сравнение лицом к лицу между DDL и DML (инфографика)
Ниже приведены основные различия между DDL и DML.
Ключевые различия между DDL и DML
Основные различия между DDL и DML, как показано ниже:
- Одним из важных различий между DDL и DML является то, что язык определения данных (DDL) определяет схему базы данных, тогда как язык манипулирования данными (DML) используется для изменения схемы базы данных.
- Команды DDL: CREATE, ALTER, DROP, TRUNCATE и т. Д., А команды DML - INSERT, UPDATE, DELETE, SELECT и т. Д.
- Операторы DDL работают со всей таблицей, а операторы DML - со строками.
- У операторов DDL нет предложения WHERE для фильтрации данных, тогда как у операторов DML используется предложение WHERE для фильтрации данных.
- Операторы DDL выполняются в своей транзакции и поэтому фиксируются мгновенно, так как изменения, вносимые каждым из этих операторов, являются постоянными. Но поскольку операторы DML работают путем изменения данных объектов базы данных, эти операторы выполняются в соответствии с правилами транзакции.
- При использовании операторов DDL сделанные ими изменения не могут быть отменены. Таким образом, нам не нужно запускать команду COMMIT или ROLLBACK, тогда как в операторах DML команды COMMIT и ROLLBACK должны выполняться для подтверждения изменений.
DDL и DML Сравнительная таблица
Давайте обсудим 6 основных различий между DDL и DML
DDL (язык определения данных) | DML (язык манипулирования данными) |
Язык определения данных используется для определения схемы базы данных. Он касается того, как данные хранятся в базе данных. | Data Manipulation Language используется для манипулирования, т.е. извлечения, обновления и удаления данных в базе данных. |
Команды DDL, которые используются в SQL: CREATE, DROP, ALTER, TRUNCATE и т. Д. | Команды DML, используемые в SQL: INSERT, UPDATE, DELETE, SELECT и т. Д. |
Команда CREATE используется для создания таблицы или представления таблицы. Его также можно использовать для создания других объектов базы данных, таких как индекс, хранимая процедура, триггеры и т. Д.
Синтаксис для создания таблицы такой: CREATE TABLE table_name ( COLUMN_1 тип данных PRIMARY KEY, COLUMN_2 тип данных, COLUMN_3 тип данных, …… ); | Команда INSERT используется для вставки данных в таблицу.
Синтаксис для вставки данных в таблицу такой: INSERT INTO имя_таблицы (column_1, column_2, … column_N) VALUES (значение1, значение2 … значениеN); |
Команда ALTER используется для изменения существующей структуры таблицы или объектов базы данных.
Синтаксис использования команды ALTER следующий: ALTER TABLE table_name RENAME TO table_name_new; | Команда UPDATE используется для обновления существующих данных в таблице.
Синтаксис использования команды UPDATE такой: ОБНОВЛЕНИЕ table_name SET столбец1 = значение1, столбец2 = значение2, … столбецN = значениеN ГДЕ (условие); |
Команда DROP используется для удаления таблицы или представления таблицы или других объектов базы данных. Команда DROP удалит данные, а также определение таблицы. Так что эту команду следует использовать осторожно.
Синтаксис для удаления базы данных следующий: DROP DATABASE database_name; Синтаксис для удаления таблицы следующий: DROP TABLE table_name; | Команда DELETE используется для удаления записей из таблицы.
Синтаксис для использования команды DELETE следующий: DELETE FROM table_name; В приведенном выше синтаксисе все строки таблицы будут удалены, но структура таблицы останется. Но если мы используем команду DELETE вместе с предложением WHERE, будут удалены только определенные записи в соответствии с предложением WHERE. Синтаксис команды DELETE вместе с предложением WHERE такой: DELETE FROM table_name WHERE (условие); |
Команда TRUNCATE используется для удаления данных из таблицы, но структура таблицы остается неизменной. Таким образом, с помощью этой команды удаляются только данные, а не таблица.
Синтаксис команды TRUNCATE такой: TRUNCATE TABLE table_name; | Команда SELECT используется для извлечения данных из таблиц в базе данных.
Синтаксис для использования команды SELECT следующий: SELECT column1, column2… columnN FROM table_name; Приведенный выше оператор выбирает столбцы, указанные в операторе select. Но когда мы хотим выбрать все столбцы таблицы, нам нужно использовать «*» в операторе выбора. Синтаксис для выбора всех столбцов таблицы следующий: SELECT * FROM table_name; |
Вывод
SQL обеспечивает гибкость определения схемы, а затем ее изменения в соответствии с требованиями в базе данных с использованием языков определения данных и языка манипулирования данными. Благодаря использованию простых операторов DDL разработчику становится проще определять схему базы данных, структуру таблицы для больших объемов данных. Также с использованием операторов DML мы можем манипулировать данными, то есть извлекать данные, изменять существующие данные и т. Д. Всякий раз, когда возникает необходимость. При работе с различными командами DDL и DML необходимо учитывать некоторые важные моменты. Разработчик или разработчик программного обеспечения должен получить полное представление о работе различных операций DDL и DML, поскольку они играют жизненно важную роль в создании эффективной базы данных в соответствии с требованиями бизнеса.
Рекомендуемые статьи
Это руководство по DDL против DML. Здесь мы обсуждаем DDL против DML с соответствующими ключевыми различиями, инфографикой и таблицей сравнения в деталях. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -
- Hive vs HUE: 6 лучших сравнений для изучения
- WebLogic против JBoss
- SQL Server против PostgreSQL
- PL SQL против SQL