【学習メモ】MySQL(作成、更新、削除)

MySQLの備忘録です。随時更新中

スポンサーリンク

テーブルを作成する

CREATE TABLE  テーブル名( );

上のコードを入力すると以下のような表が作成されるイメージ

テーブルの名称

( )に作成するカラム名とデータ型、オプションを入力していく

CREATE TABLE  テーブル名(
  //カラム名1 データ型, //複数あるときはカンマで繋ぐ
  //カラム名2 データ型
);
CREATE TABLE users( //usersというテーブルを作成
  id INT, //idというカラムを作成
  name VARCHAR(20), //20文字以内でnameというカラムを作成
  PRIMARY KEY(id) //主キーをidに設定
);
カラム名を指定した後

データ型というものは以下の表のもの(よく見たもののみ抜粋)

データ型

整数型

数値を扱うときに指定する

範囲備考
TINYINT-128 〜 127
INT-21億 〜 21億
BIGTNT-922京 〜 922京

INT UNSIGNED とすると負の数の分を正の数まで使える。

CREATE TABLE テーブル名( 
  id INT UNSIGNED //42億までの数値が扱える
);

小数点型

小数点はDECIMALを使えば無難

文字列型

その名の通り文字列を扱う際に使用

範囲備考
CHAR0~255文字の文字列固定長の文字列に使われる
VARCHAR0~65535文字の文字列可変長の文字列に使われる
TEXTそれ以上
CREATE TABLE テーブル名( 
  name VARCHAR(40) //()に文字数を指定する
);

日付型

範囲
DATE日付
TIME時間
DATETIME日時(日付と時間)
CREATE TABLE テーブル名( 
  posted DATE
);

テーブルに値を追加する

INSERT INTO テーブル名(カラム名) VALUES (値);
INSERT INTO users(id, name) VALUES (1, "Aoyama");

文字列は” “や’ ‘で囲む。

また複数の値を挿入する場合はカンマで区切って書く

INSERT INTO users(id, name) VALUES (1, "Aoyama"), (2, "Ito");
値の挿入

時間の場合はNOW( )を使うと現在時刻を登録できる。また時間も” “で囲うのを忘れない。

CREATE TABLE users(
  id INT,
  name VARCHAR(140),
  posted DATETIME
);

INSERT INTO posts (id, name, posted) VALUES(1, "Aoyama", "2022-01-01"), (2, "Ito", NOW());
時刻の使い方
スポンサーリンク

レコードの更新

UPDATE テーブル名 SET 更新したいカラム名 = 新しい値;
//全部同じ値にする場合

UPDATE テーブル名 SET 更新したいカラム名 = 新しい値 WHERE 条件;
//条件をつけて特定のものだけ更新する場合

更新する場合はほぼWHEREで指定する

UPDATE users SET id = 10 WHERE id = 3;
//usersテーブルのidが3のレコードのidを10にする

複数の場合はカンマで区切る

UPDATE users SET id = 10, name="Kato" WHERE id = 3;
//usersテーブルのidが3のレコードのidを10に、nameをKatoにする

レコードの削除

DELETE FROM テーブル名;
//全てのレコードを削除する

DELETE FROM テーブル名 WHERE 条件;
//条件を指定して削除する

削除の場合もほぼWHEREで指定する

DELETE FROM users WHERE id =2;
//usersテーブルのidが2のレコードを削除する

まとめ

まとめ
/*   テーブルの作成   */
CREATE TABLE  テーブル名(
  //カラム名1 データ型, //複数あるときはカンマで繋ぐ
  //カラム名2 データ型
);


/*   レコードの挿入  */
INSERT INTO テーブル名(カラム名) VALUES (値);


/*   レコードの更新   */
UPDATE テーブル名 SET 更新したいカラム名 = 新しい値;
//全部同じ値にする場合

UPDATE テーブル名 SET 更新したいカラム名 = 新しい値 WHERE 条件;
//条件をつけて特定のものだけ更新する場合


/*  レコードの削除   */
DELETE FROM テーブル名;
//全てのレコードを削除する

DELETE FROM テーブル名 WHERE 条件;
//条件を指定して削除する

コメント