- 締切済み
perlでデータベース
こんばんは。 現在perlを用いてHPの管理システムができるよう勉強しております。 次に、HP上にアクセスした人のログをデータベース化して保管する事をしたいのですが、 持っている本ではデータベースの事に触れておりません。 perlにデータベースの機能が備わっていると聞きましたが、 それについて勉強するのに、段階的に読み進めれる・判り易いお勧めの本がありましたら教えて下さい。 宜しくお願いします。 現在perlの入門的な本を2冊程読んだレベルです。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- zebedeer
- ベストアンサー率66% (80/121)
データベースって言ってもピンキリなので、CSVもデータベースって言えばデータベースです。 (実際DBD::CSVとかあるし) 所詮アクセス解析なんだし、textで持たせれば十分では? (勉強の意味合いならXMLやDBMって手もあると思いますが) ちなみに、「Perl を256倍使う本 DBI編」をDBIの入門本として買うのはお勧めしません。 これはDBDを自作する人か、DBIの速度アップをしたい人向けの本です。 (O'Reillyの「入門Perl DBI」は、読んだ事無いので知りません)
- nightowl
- ベストアンサー率44% (490/1101)
こんばんは。No.1 の方のおっしゃる通り、ログが大規模なら データベースと接続するのが常道でしょうが、もしかしたら ハッシュ(連想配列)を使え、という意味なのかもしれませんね。 ハッシュは「キー」から「値」を素早く検索するためのデータ構造で、 見出し語から本文を引くようにも見えることから「辞書」とも呼ばれます(Python)。 ログがどのような形式かはわかりませんが、あまり複雑な構造をしておらず、 アクセス者の名前でその接続時間などを調べたいということなら ハッシュでもいけるかもしれません。 http://www.rfs.co.jp/sitebuilder/perl/02/05.html Perl とデータベースの接続については、「Perl を256倍使う本 DBI編」 (川合孝典著、アスキー)がこの目的にかないますかどうか。 ぜひとも「プログラミング Perl 第3版」(ラクダ本)は バイブルとして手元に置きたいところです。 二分冊になって、よりお求めにくくなりましたけれど(^^; 私は Perl4 時代「Perl の国へようこそ」(斎藤靖、小山裕司、前田薫、布施有人共著、 サイエンス社)という本を読んでいたんですが、「やっぱり本書は 初心者の独習用には全然向かない」なんて評する人もいて不安になりました。 今は Perl5 に対応した「新 Perl の国へようこそ」が出ています。 http://www.pro.or.jp/~fuji/computerbooks/perl/perl.welcome.html 他はこんな本とかサイトで調べてみてください。 http://www.oreilly.co.jp/BOOK/perldbi/ http://flex.ee.uec.ac.jp/texi/perl-nyuumon/
- hofuhofu
- ベストアンサー率70% (336/476)
> データベースの機能が備わっている DBIのことでしょうか。 これはあくまでデータベースと連携できるだけであって、データベースそのものではありませんが。 実際に使うにはデータベース用のソフト(PostgreSQL ・MySQL・Oracleなど)がインストールされている必要があるので、もしHPスペースを借用しているようであれば、対応しているか確認してみてください。 無料のところであれば対応していないことのほうが多いと思います。 http://www.rfs.jp/sitebuilder/perl/dbi/ 簡易のものでよければ、Perlモジュールの形で作られたデータベースがあります。 あまりレコード数が増えると、さすがパフォーマンスが落ちるらしいですが。 http://www.vector.co.jp/soft/unix/business/se182749.html でもアクセスログくらいなら、データベースに頼らず、自作してしまってもいいと思いますよ。 どの程度の情報を保存・利用するのかにもよりますが、そのままテキストファイルに保存するようにしても、割と簡単に作れるはずです。
補足
> DBIのことでしょうか。 申し訳ありません、 「perlにデータベースの機能があるからそれを使って作って」と言われたので、 発言者が何に対して言ったものか判りません。 私もそれについては知らないのであるものだと思っていましたから。 > もしHPスペースを借用しているようであれば、 > 対応しているか確認してみてください。 サーバは学内のものですが、現在は使えないようです。 > そのままテキストファイルに保存するようにしても~… そうですよね。それではダメなのか尋ねてみます。