データベースとSQLについて学んでいます。
SQL、プログラミングを学び始めてよく聞くけど何のことだろうと思っていました。
データベースを操作するための言語がSQLということを初めて知りました。
(Structuresd Query Language、略してSQL、なるほど)
データベースを作ったり呼び出したり命令が必要で、そのためにSQLがあるんですね。
さらにSQLにも3種類の命令文(言葉)があります。
1.データ定義言語(Data Definition Language。略してDDL)
2.データ操作言語(Data Manipulation Language。略してDML)
3.データ制御言語(Data Control Language。略してDCL)
何の違いがあるのやら?と思ったので、簡単に説明します。
1.データ定義言語(DDL)
Definitionは「定義」です。なので、データを定義(データの入ってる「テーブル」の作成、変更、削除)するための命令と思えばよさそうです。
2.データ操作言語(DML)
Manipulationは「操作」です。データを操作する(データそのものを検索、追加、削除)するための命令と思えばよさそうです。
DDLとの違いはデータの入っている入れ物(テーブル)に関する命令なのか、それともデータそれ自体に対する命令なのか、と分けて考えたら違いがわかりやすそうです。
3.データ制御言語(DCL)
Controlは「制御」です。データベースに対するユーザーへの権限付与や剥奪に使うようです。
自分がこれからSQLでいろいろ操作していくなら、DDLとDMLの勉強を進めていけばいいなと方針が定まってきました。
まだまだ勉強したてでわからないことが多いですが、学んだことがあれば記事にしていきます。