SQL может выполнять различные задачи, такие как создание таблицы, добавление данных в таблицы, удаление таблицы, изменение таблицы, установка разрешений для пользователей.
Типы команд SQL
Существует пять типов команд SQL: DDL, DML, DCL, TCL и DQL.
1. Язык определения данных (DDL)
DDL изменяет структуру таблицы, например создает таблицу, удаляет таблицу, изменяет таблицу и т. д.
Все команды DDL фиксируются автоматически, что означает постоянное сохранение всех изменений в базе данных.
Вот некоторые команды, которые относятся к DDL:
- CREATE
- ALTER
- DROP
- TRUNCATE
a. CREATE используется для создания новой таблицы в базе данных.
Cинтаксис:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Пример:
CREATE TABLE EMPLOYEE(Name VARCHAR2(20), Email VARCHAR2(100), DOB DATE);
b. DROP: используется для удаления как структуры, так и записи, хранящейся в таблице.
Cинтаксис:
DROP TABLE table_name;
Пример:
DROP TABLE EMPLOYEE;
c. ALTER: используется для изменения структуры базы данных. Это изменение может заключаться в изменении характеристик существующего атрибута, либо в добавлении нового атрибута.
Cинтаксис:
Чтобы добавить новый столбец в таблицу
ALTER TABLE table_name ADD column_name COLUMN-definition;
Чтобы изменить существующий столбец в таблице:
ALTER TABLE table_name MODIFY(column_definitions....);
Пример:
ALTER TABLE STU_DETAILS ADD(ADDRESS VARCHAR2(20));
ALTER TABLE STU_DETAILS MODIFY (NAME VARCHAR2(20));
d. TRUNCATE: используется для удаления всех строк из таблицы и освобождения места, содержащего таблицу.
Синтаксис:
TRUNCATE TABLE table_name;
Пример:
TRUNCATE TABLE EMPLOYEE;
2. Язык манипулирования данными
Команды DML используются для изменения базы данных. Команда отвечает за все формы изменений в базе данных.
Команда DML не фиксируется автоматически, что означает, что она не может постоянно сохранять все изменения в базе данных и их можно откатить.
Вот некоторые команды, которые входят в DML:
- INSERT
- UPDATE
- DELETE
а. INSERT: Оператор INSERT представляет собой SQL-запрос. Он используется для вставки данных в строку таблицы.
Синтаксис:
INSERT INTO TABLE_NAME
(col1, col2, col3,.... col N)
VALUES (value1, value2, value3, .... valueN);
Или
INSERT INTO TABLE_NAME
VALUES (value1, value2, value3, .... valueN);
Пример:
INSERT INTO javatpoint (Author, Subject) VALUES ("Sonoo", "DBMS");
b. UPDATE: эта команда используется для обновления или изменения значения столбца в таблице.
Синтаксис:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]Например:
UPDATE students SET User_Name = 'Sonoo' WHERE Student_Id = '3'
c. DELETE: используется для удаления одной или нескольких строк из таблицы.
Синтаксис:
DELETE FROM table_name [WHERE condition];УДАЛИТЬ ИЗ имя_таблицы [ГДЕ условие];
Например:
DELETE FROM javatpoint WHERE Author="Sonoo";
3. Язык управления данными
Команды DCL используются для предоставления и отзыва полномочий любого пользователя базы данных.
Вот некоторые команды, которые входят в состав DCL:
- Grant
- Revoke
a. Grant: : используется для предоставления пользователям прав доступа к базе данных.
Пример
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
б. Revoke: используется для отзыва разрешений у пользователя.
Пример
REVOKE SELECT, UPDATE ON MY_TABLE FROM USER1, USER2;
4. Язык управления транзакциями
Команды TCL можно использовать только с командами DML, такими как INSERT, DELETE и UPDATE.
Эти операции автоматически фиксируются в базе данных, поэтому их нельзя использовать при создании или удалении таблиц.
Вот некоторые команды, которые входят в TCL:
- COMMIT
- ROLLBACK
- SAVEPOINT
а. Commit: команда Commit используется для сохранения всех транзакций в базе данных.
Синтаксис:
COMMIT;;
Пример:
DELETE FROM CUSTOMERS
WHERE AGE = 25;
COMMIT;
b. Rollback: Команда отката используется для отмены транзакций, которые еще не были сохранены в базе данных.
Синтаксис:
ROLLBACK;
Пример:
DELETE FROM CUSTOMERS
WHERE AGE = 25;
ROLLBACK;
c. SAVEPOINT: используется для отката транзакции до определенной точки без отката всей транзакции.
Синтаксис:
SAVEPOINT SAVEPOINT_NAME;
5. Язык запросов данных
DQL используется для извлечения данных из базы данных.
Он использует только одну команду:
SELECT
а. SELECT: это то же самое, что и операция проецирования в реляционной алгебре. Она используется для выбора атрибута на основе условия, описанного в предложении WHERE.
Синтаксис:
SELECT expressions
FROM TABLES
WHERE conditions;
Пример:
SELECT emp_name
FROM employee
WHERE age > 20;
#sql