人気ブログランキング | 話題のタグを見る

シナリオ(sqlite3)

久しぶりにデータベースを使いたくなって、SQLite Download Page から sqlite-shell-linux-x86-3070900.zip をダウンロードしてインストールした。インストールは C:\sqlite3 フォルダーを作って、解凍した sqlite3.exe を入れ、コントロールパネル->システムとセキュリティ->システム->システムの詳細設定->環境変数でPathの設定をするだけだった。

しかし、sqlite3 の使い方をすっかり忘れていたため、自分のブログのアミノ酸データベースを作る記事をみて、アミノ酸のデータベースを作ったら少し思い出した。記事の内容が古いが、それでもアミノ酸のデータベースを作ることができた。検索をしたり、並べ替えをしたりして肩慣らしをしているうちに、もう一度 sqlite3 の再学習をする気になったので、dbonline の SQLite 入門を読み始めたら面白かった。

一番興味深かったのは、sqlite ではテーブルのカラムのデータ型の指定がいらなかったことだ。sqlite3 phone.db でデータベースを作成した後、

create table phone(name, number)

とフィールドを指定するだけでテーブルが作れてしまう。データの型も、「NULL」「INTEGER」「REAL」「TEXT」「BLOB」の5種類だけなので楽だ。insert 文でデータを挿入する時 123 のような整数を入力すると整数になり、123.0 の様に小数点をつけると実数になる。また 'name' のようにシングルクォートで囲むと text 方になる。text 型は日本語も使えるようだ。

随分使い勝手がよくなっているようだ。試しに電話番号簿でも作ってみよう。

そうそう、この記事の題名のシナリオを忘れていた。

sqlite3 の使い方を思い出すときに、マニュアルを読み返すよりは、アミノ酸のデータベースを作ってみるほうがよく分かった。コンピュータの操作を覚えるといった知識は、体系的に参考書を読破するより、具体的な使用例について学んだほうが速い気がする。

sqlite3 の場合のように使い方を忘れてしまった時のために、こういうシナリオをいくつか作っておくのは賢い対策だろう。近頃の若いものはマニュアル人間だという非難の言葉を聞くことがあるが、よくできたシナリオを収めたマニュアルは、効果が大きいことを示しているのではないだろうか。

ということで、sqlite3 で電話番号簿を作るシナリオは次のようになる。

C:\Users\********>sqlite3 denwa.db
SQLite version 3.7.9 2011-11-01 00:52:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table phone(name, number);
sqlite> insert into phone values('山田和夫', '123-4567');
sqlite> insert into phone values('花村満子', '123-6789');
sqlite> select * from phone;
山田和夫|123-4567
花村満子|123-6789
sqlite> select * from phone where name = '山田和夫';
山田和夫|123-4567
sqlite> .quit
by tnomura9 | 2011-11-12 08:29 | 考えるということ | Comments(0)
<< Windows7 の検索機能 モナドの世界をコントロールする... >>