SQL講座(1) | TokoTokoSoftware

TokoTokoSoftware

iPhone / iPadアプリを作っている団体「トコトコ」です
大学生二人でMacBookつかって頑張ってます!!

宣言通り SLQ講座 その1!!

こんかいはSQLってなんぞや??ってところです
「もうわかってる!」とか「実践早くやりたいっ!」って人は読まなくていいです


おおざっぱに内容をいうとiPhoneでつかうSQLiteってものがどういうものなのかっていうことです。


*この講座は作成者の主観が思いっきり入っているので
多少の嘘・デマが入っているかもしれません
何か間違っている点を見つけたらコメントに書いてもらえると助かります


1.データベースについて
データベースって何でしょ?
一言でいうと、ただのデータの保存形式のことです。

みなさんデータを保存するとき、どういう形で保存してますか??
たとえば(年賀状の季節ですし)住所録を保存するときを考えてみてください

メモ帳にかきますか?エクセルにかきますか?それともバイナリデータでかきますか??
おそらくほとんどの人がエクセルなどの表として保存するのではないでしょうか?
表ってのは便利なんですよね。
一覧として簡単に見えて、行ごとにソートとかもできる
これをメモ帳で再現しようとしたら・・・・・・かなり大変ですよね

PHPなどのWEB言語ではデータの保存形式としてテキストかバイナリかの二択しかなかったんです。
でも使いたいですよね、表。

そこで(なのかどうかは知らないですけど)でてきたのがデータベースってやつです。
これは、エクセルをコマンド(後で出てくるSQLです)で扱うような感じで、表として保存ができるんです。
表なので、ぞれぞれの列でソートもできるし、条件一致する行だけ取り出すということも簡単にできちゃう訳です。で、これをiPhoneでつかうと、データが表として記録できるのでデータの扱いがぐっと楽!になるんです



2.SQLってなに??
さっきから地味~にSQLiteSQLってのを使い分けてますが、
これ略称とかじゃなくて別のものなんです(;^_^A

多分最初見るとなにかのミスか、略称だと思っちゃうんじゃないですかね???

SQLってのはデータベースを制御するプログラム言語です
C言語とかと同じです
「これ保存しといて」とか「この条件に合うデータとりだして」とかを書く言語です

で、SQLiteってのはSQLを受け取るこのとできるプログラムの一種です
SQLは書いただけでは動きません。
C言語も書いただけでは動きませんよね?コンパイルしないとだめですよね?
SQLiteSQLコンパイルして、実行してくれます(正確には違いますがこう思っといて問題ないです)
SQLiteSQLで書いたプログラムを渡してやると、
コンパイルし、エラーがなければプログラムを実行することでデータを保存したり、読み込んだりできます



3.なんでSQLiteをつかうの?

ここまで聞いてわかったと思いますが、iPhoneとSQLiteって全く別のもので、何の関係もありません!!
基本的にSQLiteなどのデータベースはWEB上でデータを保存するのに使われます。
掲示板とかアクセスカウンターとかに利用されている訳です。

SQLを読むことのできるプログラムはもちろんSQLite以外にもあります。
よく使われているものにはMySQLというのもあります。
MySQLSQLiteは細かい違いはありますが、SQLを読んでコンパイルして実行してくれるっていう点では同じです!
でもiPhoneではSQLiteをつかいます!
これはデフォルトでライブラリが入ってるからです。


・・・・猛者がいるならMySQL使ってもいいですよ?導入大変ですけど






というわけで第一回SQL講座でしたっ!
次回はMacをつかってSQLを実際に触れてみたいと思います!
それでは~ノシ