です。
それと、SQL文では
大文字小文字区別しない
って事です。
大文字で書いても、小文字で書いても、一緒です。
これで実際にテーブルは作られました。しかし、作っただけでは
テーブルの中身は空です。
今はこんな状態です
なので、データを入れましょう。
一番上の図みたく、IDは1 PASSはxxxxxx NAMEはkazan と入れてみます。
insert into User(ID,PASS,NAME) values(1,'xxxxxx','kazan')
これで、
こうなったと思います。
テーブルに登録する場合のSQLは
insert into テーブル名(項目名,・・・)
values(値,・・・)
項目名と、値は順番と数が対応していなければいけません。
値は、文字列の場合、シングルクォーテーション「'」で囲みます。数字の場合は付けません。
それでは登録したデータを、更新してみます。
IDは2 PASSはxxxxxxx NAMEは順ちゃん★
にしてみたいと思います。
update User set ID=2, PASS='xxxxxxx',NAME='順ちゃん★'
このようになります
更新するときのSQLは
update テーブル名 set 項目名=値, 項目名=値,
・・・・
アップデート文はインサート文に比べて、項目と値がセットになっているので、わかりやすいと思います。
では、今作ったデータを削除します。Userテーブルの中身を空にしましょう。
delete from User
これで、Userテーブルの中身が空になりました。
削除のSQLは
delete from テーブル名
です。
最後にSQL文の中では一番使うであろう、検索文(データを取得する文)を紹介します。
ではUserテーブルが以下と仮定して、
ここから全てのデータを取りたいと思います。
select * from User
です。「*」というのは全ての項目をとってくると言う意味です。
select ID from User
と書けば、全てのID項目のデータをとってくると言う意味になります。
というわけで、検索文SQLは
select 項目名 , 項目名 ,
・・・(又は*) from テーブル名
複数の項目を取ってきたい場合は
select ID,PASS,NAME from User
みたくなります。
以上のSQL文を知っていれば、大体OKでしょう。
ただ、もう1つだけ知っときたいのが、条件を絞るためのSQL文です。
例えば、
で、IDが1の人のデータが欲しいってなったときに、上記の検索SQLだと、全てをとってきてしまいます。
そこで、条件を絞り込む時のSQL文が
「Where」
です。
実際に、上のUserテーブルからIDが1の人のデータをとります。
select * from User where id=1
これで、IDが1の全ての項目をとってきます.
この「where」ですが、検索だけではなく、更新、削除のSQL文にも使います。
select 項目名 , 項目名 ,
・・・(又は*) from テーブル名 where 項目名=値
update テーブル名 set 項目名=値, 項目名=値,
・・・・ where 項目名=値
delete from テーブル名 where 項目名=値
となります。
上の文だと1つしか条件が絞れませんが、複数条件を用いるときは「and」を用います。
UserテーブルからIDが10以下の人で、NAMEがkazanのデータをとる。
select * from User where id <= 10 and name = 'kazan'
select 項目名 , 項目名 ,
・・・(又は*) from テーブル名 where 項目名=値 and 項目名=値 and 項目名=値 ・・・・・
そして、もうひとつ、データを並び替えるSQL文です。
UserテーブルのIDを昇順にして、全てのデータを取る、というような命令だと、
select * from User order by id asc
最後の「asc」はあってもなくても構いません。
逆に降順だと、
select * from User order by id desc
この場合「desc」は省略できません。
続いて、
UserテーブルのIDを降順にして、IDが10以下のデータを表示
select * from User where id <= 10 order by id desc
select * from テーブル名 order by 項目名 asc(又はdesc)
以上のSQLを知っておけば、とりあえずは大丈夫でしょう。
これも全て覚える必要がなく、こういうのがあるくらいに思っておけばいいです。使うときにまた読み返せばいいのです。