0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

MySQLのテーブルのカラム構造を変更する

Posted at

はじめに

SQL学習を始めるにあたって、備忘録として記しています

テーブルのカラム構造を確認

DESC テーブル名;

テーブルのカラム構造を変更

カラム構造を変更するときは、ALTER TABLEを使う
変更の種類によって以下のように使い分ける

  • カラムのデータ型を変更するとき: ALTER TABLE テーブル名 MODIFY カラム名 データ型;
  • カラムを追加するとき: ALTER TABLE テーブル名 ADD カラム名 データ型;
  • カラムの名前と定義を変更するとき: ALTER TABLE テーブル名 CHANGE 変更前カラム名 変更後カラム名 変更後データ型;
  • カラムを削除するとき: ALTER TABLE テーブル名 DROP カラム名;

※注意
「先頭が0になっていない、数値だけで構成されるデータ」では、多くの場合、「INT型」→「VARCHAR型」→「INT型」のような変更は可能。ただし、カラムにデータが存在する場合、基本的にデータ型変更は行うべきではない

主キーの設定

一意(ユニーク)

データベースでは大量のレコードの中から、「条件にあった1つのレコードを特定する」ことが必要となる場面がある。こういった場面を想定して「必ず1つだけが特定できる」という唯一無二の状態を、**一意(ユニーク)**であるという

主キー

ユニークなレコードを作る場合に用いるのが、**主キー(PRIMARY KEY)**である
主キーは厳密にレコードを特定できる次のようなカラムである

  • 値の重複がない
  • NULL値は許さない

CREATE TABLE テーブル名 (カラム名 データ型 PRIMARY KEY...,);

一意キー

「重複はしない」かつ「NULLを入力できる」という制限を**一意キー(UNIQUEキー)**で設定できる

自動的に連続番号が入力されるカラムにする

連続番号機能付きカラムの定義

次のような手順で設定する

  1. データ型は「INT」などの整数型
  2. 「AUTO_INCREMENT」をつける
  3. 「PRIMARY KEY」などを設定して一意にする

連続番号の初期化

ALTER TABLE テーブル名 AUTO_INCREMENT=0;

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?