今日はデータベースにあるデータをControllerで扱えるようにしました。
その備忘録です。
step1 MySQLのインストール
公式のインストーラを用いてMySQLをインストールする。
rootパスワードを設定するタイミングがあり、データベースを扱う際に必要となるので覚えておく。
step2 MySQLでデータベース作成
インストールが済んだらコマンドプロンプトから
mysql -u root -p
のコマンドを打つことでroot(管理者)としてログインできる。
今回のappで使用するデータベースを作成します。
データベースは複数の表を格納するシステムのこと。
テーブルとごっちゃになってしまっていた。。。
作成するコマンドは下記の通り。
CREATE DATABASE [データベース名];
rootのままデータベースをいじってもいいが、安全上の都合から新しいuserを作成して、そのuserからデータベース作業を行うことが望ましいよう。
そのため、新しいuserを作成し、先ほど作成したデータベースの作業を行うための権限を付与する。
CREATE USER '[user名]'@'localhost' IDENTIFIED BY '[パスワード]'; //user作成
GRANT ALL PRIVILEGES ON [データベース名].* TO '[user名]'@'localhost'; //全ての権限付与
step3 MySQLで表を作成
先ほど作成したデータベースを使用するコマンドを入力した後、実際に表を作成していく。
ここからは実際に使用したコマンドをいくつかまとめる。
USE [データベース名]; //databaseを使用する
表の作成
CREATE TABLE [テーブル名] ([列名] [データ型] [制約]);
表の削除
DROP TABLE [テーブル名];
表の確認
SHOW TABLES; //作成したtable一覧を表示
DESCRIBE [テーブル名]; //表の詳細説明。列名など。
表の修正
ALTER TABLE [テーブル名] ADD COLUMN [列名] [データ型] [制約]; //列の追加
ALTER TABLE [テーブル名] MODIFY COLUMN [列名] [データ型] [制約] AFTER [既存列名]; //既存列名の後に列を追加
//列を移動させる場合もこの書き方で、[データ型]なども再度入力
ALTER TABLE [テーブル名] MODIFY COLUMN [列名] [データ型] [制約] FIRST; //1列目に追加
ALTER TABLE [テーブル名] DROP COLUMN [列名]; //列の削除
行の追加、確認
INSERT INTO [テーブル名]([列名]) VALUES ([実際の値]); //行の追加
SELECT * FROM [テーブル名]; //追加したデータの確認
step4 Javaプログラム側の設定
書くのが疲れたのでまた今度。
ブログ書いているエンジニアさんたちの凄さが分かる。。