MySQL入門

オートインクリメントとは

全334コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
オートインクリメントは、プライマリーキーのオプションで、自動的に1ずつ加える(インクリメント)ができる機能です。プライマリーキーには重複した値を入れることができないため、このオプションを指定すると便利です。
講師:
07:31

字幕

続いて AUTO INCREMENT について 紹介していきます AUTO INCREMENT というのは PRIMARY KEY に オプションで付けることが出来る要素です 今例えば画面に表示されている あるテーブルがありまして こちらにデータを挿入しようとします その場合 insert into で member_table set としまして name に aaa ちょっと適当にいきます age が 10 というふうに したとしましょう こちらで実行しますと このように id としては 0 が入りまして name が aaa age が 10 と入ります で更にここにもう1つ データを挿入しようとしますと 今度は bbb でいきます 実行すると Deplicate entry 0 ということで 必ず この id には 数字を指定しなければ うまくデータを入れることが 出来なくなってしまいます ですが今例えば この4番までデータが入っているので 次が5番目である その次が6である というような形で 最後の数字を覚えた状態で データの挿入をしなければならないのは なかなか手間のかかる作業です そこでこれをサポートしてくれるのが AUTO INCREMENT という機能です では早速使ってみましょう まず MAMP からスタートページを開いて phpMyAdmin を起動します ここでもしデータベースが 存在していない場合には 新たに作成して頂きます ここでは その環境にするために 一度このデータベースを消します ではこちらからデータベースを 作っていきましょう 左上の「データベース」という タブをクリックし データベースの画面にこちら mydb と入れて utf8_general_ci を選んで 「作成」します ではこちらにテーブルを作っていきましょう mydb を選んで SQL のタブを選んだら ここに create table の SQL を打ち込んでいきます ここでは member table というのを作り ( id int primary key とします さらに続けて auto_increment と続けて下さい 他は通常通り 作って頂いて構いません ここでは name を 500 age を int というふうに入れましょう これでテーブルを作成してみます 実行しますと このように member_table が出来上がりますが 今回はこの id というフィールドが 「インデックス」の所を見ていきますと PRIMARY であることが このように示されています 更にこちら「その他」 という所を見ますと AUTO_INCREMENT に設定されていることがわかるかと思います これで AUTO INCREMENT の フィールドが出来上がりました ではこちらにデータを挿入していきましょう SQL のタブをクリックし ここでは insert into の member_table としますが ここで values を使って全フィールドに データを入れる必要はありません set を使って name に 「山本」さん age に 25 などと入れましょう このように続けていきます 更に と続けていきます ではこれで「実行」ボタンを クリックします するとこのように 一行変更されるんですが 入ったデータを見てみますと このように id 1番が「山本」さん 2番が「田中」さん 3番が「山本」さん という形で 1 2 3 と 数字が割り振られています 更にここに もう1行追加してみましょう 「赤城」さんを21歳で 挿入してみます すると今度はこのように id としては4番が 割り振られています このように AUTO INCREMENT の オプションを設定すると id で1つ1つ数字を加えながら 自動的にデータを挿入してくれます そのため管理の手間が 一気にはぶけますので 非常に楽と言えるでしょう 尚この時注意しなければいけないのが 例えばこの 1 2 3 4 まで入ったデータのうち 4番のデータを削除したとします こちら「✕」のボタンをクリックすると 削除することができます そして この削除した状態で 改めてデータを入れていきましょう 今度は name として 例えば「高橋」さんを入れたとしましょう age としては 35 とします これで「実行」するボタンを クリックすると データが入るんですけども ここで振られる番号というのは 5番になります 先程あった4番というのは 削除されたのですけど 削除してから挿入しても その4という数字は もう使われなくなります このように この AUTO INCREMENT の フィールドは基本的には いわゆる永久欠番となり 一度入れたデータは削除しても そこが埋まることはありません これは何故このような設計に なっているのかといえば この id は PRIMARY キーとして その数字を指定することで確実に そのデータが指定できなければなりません 今4番のデータ 「赤城」さんのデータが消えましたが それによってここの「高橋」さんが 今度4番になってしまうと 4番というのを指定した時に 削除した「赤城」さんを指しているのか それとも新しく入った「高橋」さんを 指しているのかというのが わからなくなってしまうので あまり好ましいデータ構造とは 言えなくなります そのため このように データベースに入る PRIMARY キーは 基本的には永久欠番 というふうになるというわけです もし特別な理由がある場合には この PRIMARY キーを リセットする方法であったり 穴埋めをしたりする ということもできるのですけど 基本的にはこちら id を int 型などで定義すれば 相当な件数のデータが入りますので あまり この空いた場所を きにする必要はありません このように PRIMARY キーと AUTO INCREMENT を設定した― id 等のフィールドを作っておけば 管理がぐっと楽になり データベースとしても非常に精度の高い データを作ることが出来ますので 是非この id というフィールドを うまく活用していきましょう

MySQL入門

このコースではPHPとMySQLというデータベースを組み合わせたWebシステムを構築する手法について解説します。「データベースとはなにか」を説明したのち、プライマリーキーやリレーションなどの重要な用語についても解説しながら実際にデータベースを動かしていきます。

3時間14分 (29 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2013年12月31日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。