最近(2009.02.23)、Monoでいろいろとやってます。
Monoっていうのは.NET Framework互換環境で、MicrosoftのC#やらF#(^^;)、VBとかもLinuxで動いちゃいます。Linuxで開発したC#アプリとかもWindowsXPで動いちゃう。
一度作ったものはどこでも動いちゃう(Write once, run anywhere : まあ動くヤツは動くのです)、Javaのコンセプトとよく似てます。(こう書くとなんか突っ込まれそうだけど…)
とりあえずC#(csharp)使ったことがないのでcsharpの勉強開始。
で、今はDataBase関係であれやこれややっています。
MySQLが好きなので、いつもMySQLでやっていたのですがSQLite楽との事なのでSQLiteも勉強してみます。Monoに関しては別にカテゴリを作成予定。
私の使いそうないろいろな言語にも対応しているし設定が楽なので勉強することにしました。
例によって個人用メモページ作成開始。
公式ページはSQLite Home Pageです。
とりあえずシェルやDOS窓(って最近言わない?)とかで動かすために…
公式ページ上のDOWNLOADをクリックすると表示されるページからLinux,MacOSX,Windows用のダウンロードができます。
Linuxの場合は大抵のディストリビューションで用意してくれていると思うので各ディストリビューションのパッケージ管理ソフトで調べて見てください。(私の使っているFedora 10(x86_64)でももちろんありました)
SQLiteはAccessやMySQLなどと同じようなDBMS(データベース管理システム)です。
とりあえずLinux(Fedora 10)でbashのプロンプトから動かしてみます。(Windowsではまだ試していません)
$ ls
$ sqlite3 test.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> create table testtable (
...> id integer not null,
...> name text not null,
...> primary key (id))
...> ;
sqlite> .schema
CREATE TABLE testtable (
id integer not null,
name text not null,
primary key (id));
sqlite> .quit
$ ls
test.db
上記の様にデータベース名(test.db)が指定されているとそのデータベースがないときは作成され、あるときはそのデータベースが開かれます。
TEXT型ははUTF-8, UTF-16BE, UTF-16LEをサポートしています。Fedora 10はデフォルトでUTF-8を使用するので
$ sqlite3 test.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> select * from testtable;
sqlite> insert into testtable(id,name) values (1,"SBCL スティールバンクコモンリスプ");
sqlite> insert into testtable(id,name) values (2,"C# csharp シーシャープ");
sqlite> select * from testtable where name like "%リスプ%";
1|SBCL スティールバンクコモンリスプ
sqlite> .quit
$
このように普通に漢字が使えたりします。(カタカナですが^^;)
Windowsでプログラミングするときになんか問題ありそうな予感。(その内Windowsでも実験しようと思います。)