- SQL コマンドは命令です。データベースと通信するために使用されます。また、特定のタスク、機能、データのクエリを実行するためにも使用されます。
- SQL では、テーブルの作成、テーブルへのデータの追加、テーブルの削除、テーブルの変更、ユーザーの権限の設定など、さまざまなタスクを実行できます。
SQLコマンドの種類
SQL コマンドには、DDL、DML、DCL、TCL、DQL の 5 種類があります。
1. データ定義言語 (DDL)
- DDL は、テーブルの作成、テーブルの削除、テーブルの変更など、テーブルの構造を変更します。
- DDL のすべてのコマンドは自動コミットされます。つまり、すべての変更がデータベースに永続的に保存されます。
DDL に含まれるいくつかのコマンドを次に示します。
- 作成する
- 変更
- 落とす
- 切り詰める
a.作成する データベースに新しいテーブルを作成するために使用されます。
構文:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
例:
CREATE TABLE EMPLOYEE(Name VARCHAR2(20), Email VARCHAR2(100), DOB DATE);
b.落とす: テーブルに格納されている構造とレコードの両方を削除するために使用されます。
構文
DROP TABLE table_name;
例
DROP TABLE EMPLOYEE;
c.変更: データベースの構造を変更するために使用されます。この変更は、既存の属性の特性を変更すること、またはおそらく新しい属性を追加することのいずれかである可能性があります。
構文:
10/100.00
テーブルに新しい列を追加するには
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 TABLE table_name;
例:
TRUNCATE TABLE EMPLOYEE;
2. データ操作言語
- DML コマンドはデータベースを変更するために使用されます。データベース内のあらゆる形式の変更を担当します。
- DML のコマンドは自動コミットされないため、データベース内のすべての変更を永続的に保存することはできません。ロールバックすることができます。
DML に含まれるいくつかのコマンドを次に示します。
- 入れる
- アップデート
- 消去
a.入れる: 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 table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
例えば:
UPDATE students SET User_Name = 'Sonoo' WHERE Student_Id = '3'
c.消去: テーブルから 1 つ以上の行を削除するために使用されます。
構文:
15/100.00
DELETE FROM table_name [WHERE condition];
例えば:
DELETE FROM javatpoint WHERE Author='Sonoo';
3. データ制御言語
DCL コマンドは、データベース ユーザーに権限を付与したり、データベース ユーザーから権限を取り戻したりするために使用されます。
DCL に含まれるコマンドをいくつか示します。
- 付与
- 取り消す
a.付与: ユーザーにデータベースへのアクセス権限を与えるために使用されます。
例
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
b.取り消す: ユーザーから権限を取り戻すために使用されます。
例
REVOKE SELECT, UPDATE ON MY_TABLE FROM USER1, USER2;
4. トランザクション制御言語
TCL コマンドは、INSERT、DELETE、UPDATE などの DML コマンドとのみ併用できます。
これらの操作はデータベースに自動的にコミットされるため、テーブルの作成または削除中には使用できません。
TCL に含まれるコマンドをいくつか示します。
- 専念
- ロールバック
- セーブポイント
a.専念: Commit コマンドは、すべてのトランザクションをデータベースに保存するために使用されます。
構文:
COMMIT;
例:
DELETE FROM CUSTOMERS WHERE AGE = 25; COMMIT;
b.ロールバック: Rollback コマンドは、まだデータベースに保存されていないトランザクションを元に戻すために使用されます。
構文:
カット・ティンプの純資産
ROLLBACK;
例:
DELETE FROM CUSTOMERS WHERE AGE = 25; ROLLBACK;
c.セーブポイント: これは、トランザクション全体をロールバックせずに、トランザクションを特定の時点までロールバックするために使用されます。
構文:
SAVEPOINT SAVEPOINT_NAME;
5. データクエリ言語
DQL はデータベースからデータを取得するために使用されます。
使用するコマンドは 1 つだけです。
- 選択する
a.選択する: これは関係代数の射影演算と同じです。 WHERE 句で記述された条件に基づいて属性を選択するために使用されます。
構文:
SELECT expressions FROM TABLES WHERE conditions;
例えば:
SELECT emp_name FROM employee WHERE age > 20;