JavaでJDBCを使うにあたって、事前にMySQLでのCRUD機能の操作を覚えるための自分用メモです。
使用環境
PC:MacBook Air 2018
OS:macOS Sonoma 14.3.1
Shell:zsh
RDBMS:MySQL 8.3.0
MySQLとは?
MySQLとは、リレーショナルデータベース(RDB、複数の表形式でデータを管理するデータベース)を管理するシステム(RDBMS)の1つです。
MySQLはその中でも世界中で人気のオープンソースソフトウェアとして知られています。
MacでHomebrewをインストールする
まず、MacBookでHomebrewをインストールします(PATHは/usr/local/bin/brew)。
https://brew.sh/ja/
MacでMySQLをインストールする
自分は昔インストールしていたMySQLが残っていたので、再度最初からやり直すために以下の記事を参考に1度アンインストールしました。
その後、以下のコマンドでMySQLをインストールしました(PATHは/usr/local/bin/mysql等)。
% brew install mysql
その際、以下の起動コマンドで/usr/local/var/mysqlに.pidファイルが見つからないエラーが出ましたが、PCを再起動して再度以下のコマンドを入力したら問題なく起動しました。
% mysql.server start
この後は以下のコマンドでrootでログインするか、
% mysql -u root
以下のコマンドでrootのパスワードを設定することもできます。
% mysql_secure_installation
MySQLでデータベースを新規作成する
MySQLでデータベースを新規作成するには、まずMySQLを起動してrootでログインします。
% mysql.server start
% mysql -u root -p
以下のコマンドで現在のデータベースの一覧が表示されます。
mysql> show databases;
MySQLでデータベースを新規作成するコマンドは、以下のとおりです。
mysql> create database [データベース名];
MySQLでデータベース内にテーブルを新規作成する
MySQLでデータベース内にテーブルを新規作成するには、まずテーブルを作成するデータベースを以下のコマンドで選択します。
mysql> use [データベース名];
以下のコマンドで選択したデータベース内の現在のテーブル一覧が表示されます。
mysql> show tables;
あとは、以下のコマンドでデータベース内にテーブルの作成ができます(以下はカラムが2つの場合)。
mysql> create table [テーブル名] ([カラム名 データ型], [カラム名 データ型]);
また、以下のコマンドで各カラムの制約を表示できます。
mysql> show columns from [テーブル名];
MySQLでテーブルに対してのCRUD機能を操作する
では、ここからMySQLでCRUD機能の操作をしていきます。
INSERT(Create)
MySQLでINSET文を使って新しい行を追加(Create)するコマンドは、以下のとおりです(以下は追加するデータのカラムが2つの場合)。
mysql> insert into [テーブル名] ([カラム名], [カラム名]) values (値, 値);
SELECT(Read)
テーブルに追加した行は、以下のコマンドで確認(Read)できます(以下は確認するデータのカラムが2つの場合)。
mysql> select [カラム名], [カラム名] from [テーブル名];
テーブルの全てのカラムを対象とする場合は以下のコマンドになります。
mysql> select * from [テーブル名];
また、以下のようにwhere [条件式]を記述すると、特定の行だけ確認できます。
mysql> select * from [テーブル名] where [条件式];
UPDATE(Update)
既にテーブルに追加した行を更新(Update)するコマンドは、以下のとおりです。
mysql> update [テーブル名] set [カラム名] = 値 where [条件式];
where [条件式]を記述しない場合は、指定したカラムの全てのデータを更新します。
DELETE(Delete)
既にテーブルに追加した行を削除(Delete)するコマンドは、以下のとおりです。
mysql> delete from [テーブル名] where [条件式];
where [条件式]を記述しない場合は、そのテーブルの全ての行を削除します。