皆さん、こんにちは。
今回は前回の記事に引き続きMySQL関連で私がよく使ったり忘れたりする基本コマンドについてまとめていきます。
なお、今回はデータベース定義関連のDDLを中心に書いていきます。
前提条件
まず、前提条件は下記のようなものです。mysqlはバージョンが8.0であること。
CSVファイルをインポートするにはセキュリティで許可されたディレクトリに配置すること。
CSVファイルは必ず文字コードは"UTF-8"改行コードは"LF(ラインフィールド)"であること。
データベースの作成
何はともあれ一番基本になるデータベースの作成です。create database データベース名;
このコマンドを打つことで任意の名前のデータベースを作成することができます。
テーブルの確認
データベースの中にあるテーブルの確認を行うときに使うコマンドです。show tables;
このコマンドを打つことでデータベース内にあるテーブルの確認が行えます。
テーブルの作成
テーブルの中身が空だったり追加するときに使います。create table テーブル名 as select (カラム名1 データ型 [制約等オプション],カラム名2 データ型 [制約等オプション],...) ;
このコマンドを使用することで新規のテーブルを作ることができます。
また、既存のテーブルが存在し、その問合せ結果から表を作成するときには下記のコマンドを使う。
create table テーブル名 as select カラム名1,カラム名2...From 既存のテーブル名 [where 条件];
表の複製を行いたいときは下記のコマンドで複製ができます。
create table 新しいテーブル名 like 既存テーブル名;
このコマンドを打つことでテーブルの作成、変更等を行えます。
テーブルの削除
データベースの中にあるテーブルの削除を行うときに使うコマンドです。drop table 削除したいテーブル名;
このコマンドを打つことでデータベース内にあるテーブルの削除が行えます。
カラムの属性変更
データベースの中にあるカラムの属性変更を行うときに使うコマンドです。alter table テーブル名 modify カラム名 データ型;
また、カラム名とデータ型の変更を行う場合は下記のコマンドで行えます。
alter table テーブル名 change 変更前のカラム名 新カラム名 新データ型;
このコマンドを打つことでデータベース内にあるテーブルのカラムの属性変更が行えます。
カラムの追加
データベースの中にあるカラムの属性変更を行うときに使うコマンドです。カラムをテーブルの最後の位置に追加する場合
alter table テーブル名 add カラム名 データ型;
カラムをテーブルの最初の位置に追加する場合
alter table テーブル名 add カラム名 データ型 first;
カラムをテーブルの既存カラムの後の位置に追加
alter table テーブル名 add カラム名 データ型 after 既存カラム名;
カラムの削除
データベースの中にあるカラムの削除を行うときに使うコマンドです。alter table テーブル名 drop カラム名;
データの挿入
値を入れるカラムを指定し、レコードを挿入するときのコマンドです。
レコードの挿入
insert intoテーブル名(カラム名1,カラム例2,・・・) values(値1,値2,・・・);
値を入れるカラムを省略し、行を挿入するときのコマンドです。
insert into テーブル名 values(値1,・・・);
あるテーブルに登録されているデータを別のテーブルにまとめてコピーするときのコマンドです。
他の表から取り出した行を挿入する
insert into 挿入先テーブル名(カラム名1,カラム名2,・・・)
select カラム名1,カラム名2,・・・ from 挿入元テーブル where 検索条件;
データの更新
テーブルに登録されているレコードの更新を行う。条件を満たすレコードのみカラム名の値を更新するときに使うコマンドです。
update テーブル名 set カラム名1=値1,カラム名2=値2,・・・
where 検索条件;
データの削除
テーブルに登録されたデータの削除を行うときに使用する。
指定した表の全ての行を削除するときに使うコマンドです。
delete from テーブル名;
条件を満たす行のみ指定した表から削除するときに使うコマンドです。
delete from テーブル名 where 条件;
最後に
いかがだったでしょうか。 私ががMySQLを触る上結構間違えていたり、忘れてしまっているコマンドの一覧の①がこれになります。結構、細かな書式等も忘れてしますので誰かのお役に立てば幸いです。