最近切り替えたレンタルサーバーのサポートページで始めてDBMという言葉を知りました。
簡易的なデータベースライブラリ(そもそも、このライブラリという意味もよく・・)なのかな?となんとなく想像してるのですが、実際にどれくらいの規模のものなのか、まったく手がかりがつかめないでいます。
いろいろ検索してまわったのですが、実用するにはどうすればいい、そもそもこういうものである、などの入門の入門的なドキュメントは発見できずじまいでした。

これをうまくcgiで使うと、もしかして、データの管理(例えば、投稿してもらった小説などでも)が凄く簡潔になるのでは!?未知の世界が待っているのでは!?と実体を知らないだけに、どんどん幸せな事ばかり想像してしまっています。。(^^;

どうか、DBMについてわかりやすいご説明(もしくは参考になるサイト)、こんな事ができるよ、など教えていただけないでしょうか!
もう、気になって気になって・・・
よろしくお願いします。


補足:
現在のわたしの知識は、
.linux→MACにインストールしてちらっと触った程度 
・Perl→既存の掲示板などのcgiに機能をちょっとカスタマイズする程度
です。
レンタルサーバーのHPには、DBMはGDBM_File・DB_File・ SDBM_File・NDBM_Fileのどれかを使ってください、といった内容がかかれていました。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

ハッシュあるいは連想配列と呼ばれるタイプの変数を使ったことがありますか?データとそのキーネームがセットになっていて、キーによってデータを呼び出せる変数です。


DBMの基本的な使い勝手は、HDに読み書き出来るハッシュという感じです。スピードに関しても私の経験では、1万件程度のデータベースでも全然問題ありませんでした。ただ基本構造がキーとデータの一対一対応なので、同一データに複数のキーを設定したりする場合は作業が冗長になって遅くなるかもしれません。
MacPerlでは確かNDBMが扱えたと思います。サーバの方でもNDBMが使えるならそれが便利だと思います。
    • good
    • 0
この回答へのお礼

お礼が遅くなってすみませんでした。
わかりやすい回答ありがとうございます!
全く想像がつかなかったのですが、おかげでかなりイメージをつかめることができました。

>MacPerlでは確かNDBMが
それは是非試してみたいです!
まずはやってみます。ありがとうございました!

お礼日時:2001/02/02 10:36

入門ということでおすすめしておきます。


「一歩先行くインターネット CGIプログラミング入門
 -PerlでCGIスクリプトを書くための入門書-」
秋本祥一 古川剛/著 翔泳社
ISBN4-88135-457-4
 
    • good
    • 0
この回答へのお礼

ありがとうございます。
ちゃっかり下で催促してしまってすみません(^^;

私がチェックした(ビギナー向けの)本では、DBMまで書かれていなかったので、嬉しいです。
さっそくチェックしてみます。
ありがとうございました!

お礼日時:2001/02/02 10:38

仰るとおり、簡易的なデータベースをPerlで作成するのに適していると


思います。大規模なデータベースになってくると検索速度等の面でどう
なるのか分かりませんが、掲示板程度のデータであれば、サーバー容量が
十分であれば、1000件程度なら速度的にも全く問題ないと思います。
Perlの知識さえあれば簡単ですよ。

詳しくはWebで探すより、2000円程度で買える、PerlでCGIを作る関係の本
を買ってじっくり読んだほうがいいです。
具体的な書名は今分からないので後で書きます。
では。

この回答への補足

なるほど、ありがとうございます!
わたしの考えているようなものと大体はあっているようで安心しました。
perlの応用も勉強できて、おススメな本などありましたら、教えていただけると嬉しいです。
よろしくお願いします

補足日時:2001/01/22 15:17
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QCGI(HTTP://dbgw_relay.cgi)の呼び出しができま

CGI(HTTP://dbgw_relay.cgi)の呼び出しができませんでした。
サーバーへ接続できませんでした。リモート名を解決できませんでした:'dbgw_relay.cgi'

ホームページビルダーで作ったページに買い物かご(ダヴィンチカート)を設定したいのですが、ショッピングカートを設置するサーバを設定する段階で上記のエラーになってしまいます。これはどうしたら解決できるのでしょうか。どなたかご教示お願いいたします。(ちなみに初心者です)

Aベストアンサー

http://www.netdeoshigoto.com/nso_support/2008/02/cgihttpdbgw_relaycgi404.html

最低限 FAQ くらいは目を通してから質問するべきだと思うんだ

QCGIのライブラリ表示について。

初心者で申し訳ございません。

今現在、参考書を読みながら時間を表示するCGIを作っています。
フォルダ"time1"に二つのファイル"time1.html"と"time1.pl"があります。
それぞれのファイルは、本を参考に次のように記述しています。
===time1.html===
<html>
<title>time1</title>
<body>
<h1>時間を表示する</h1>
<hr />
<!--#exec cmd="./time1.pl"-->
</body>
</html>
======

===time1.pl===
#!/usr/local/bin/perl

($sec, $min, $hour, $day, $mon, $year, $wdy, $yday, $isdst) = localtime(time);
@youbi = ("日", "月", "火", "水", "木", "金", "土");
$year += 1900;
$mon++;

print "$year-$mon-$day, @youbi[$wdy], $hour:$min:$sec\n";
exit;
======

以上をIE7で表示しますと、

「時間を表示する」は表示されるものの、.plファイル内の時間が表示されません。

何かやり残していることがありますでしょうか。

申し訳ございませんが、よろしくお願いいたします。

初心者で申し訳ございません。

今現在、参考書を読みながら時間を表示するCGIを作っています。
フォルダ"time1"に二つのファイル"time1.html"と"time1.pl"があります。
それぞれのファイルは、本を参考に次のように記述しています。
===time1.html===
<html>
<title>time1</title>
<body>
<h1>時間を表示する</h1>
<hr />
<!--#exec cmd="./time1.pl"-->
</body>
</html>
======

===time1.pl===
#!/usr/local/bin/perl

($sec, $min, $hour, $day, $mon, $year, $wdy, $yday, $isdst) = loca...続きを読む

Aベストアンサー

使ってるHTTPサーバーソフトは何ですか
SSIの設定は終わっていますか
ブラウザで見てるアドレスはちゃんとhttp://で始まってますか

QMK_GIFのCGI配布先

現在「MK_GIF」の掲示板をレンタルしています。
顔絵が表示される掲示板です!!
今度レンタルではなく、CGIを直接、設置しようと考えているのですが、
元のCGIの配布先がわかりません。検索して調べてもわかりませんでした。
この掲示板を改造して配布してるサイトでもいいです。どなたがわかるかた教えてください!!

Aベストアンサー

残念ながらma-cha-さんのご希望は叶いそうにありません。

まず、オリジナルを作成、配布していたテクノウィン商会のサイトは閉鎖されているようです。
http://www2a.biglobe.ne.jp/~yama/
また、CGI 利用規定に「改造の有無にかかわらず、ソフトウェアの販売、再配布、無断利用によるレンタルはしてはならない。」などとありますので、第三者からの入手の道も断たれています。

Qpublic_html外でCGIやPHPを動かすには?

WWWからは見ることのできないディレクトリpublic_htmlですがここにCGIやPHPを置き、動かすことは可能でしょうか?

実際に試しましたが動いてくれませんでした。

動かせるのでしたら稼動方法などを教えていただけると幸いです。

Aベストアンサー

Intel_404さんこんにちは

動かす(実行する)というのはブラウザ以外からということでしょうか?

通常公開ディレクトリというのがあり、一般にブラウザでアクセスできるデータの格納場所になります。
Intel_404さんがお借りのレンタルサーバーの公開ディレクトリの名前が「public_html」だと思います。
「public_html」以外に設置した場合、ブラウザからのアクセスはできないので、そのほかの実行方法をとることになります。

ちなみにどうして「public_html」以外に設置したいか教えていただければ、他の方法で目的を達成できるかも知れません。

QCGI_lite.pmを使ったファイルのアップロード

CGI_lite.pmを使いファイルをアップロードしたところちゃんとファイル自体はアップロードできているのですがファイル名が変わってしまっています。
たとえば「index.html」というファイル名ならば「980815043__index.html」と
なってしまいます。

サーバーはunixです。

どうか詳しい方教えてください。お願いします。

Aベストアンサー

1普通にテキストエリアからテキストを読むようにする
(多分これでとれたと思います)
2アップロードされたファイルから取得する
(ディレクトリの中を検索。先代はこれでやっていました)

最悪2でできるのでやってみてください
(ただしアクセスが多くなって処理し切れなくなると
どうなるか、考えただけでぞっとしますが...)

多分一番でできますのでやってみてください

っていうかソースプログラムにファイル名変換という気になる
フレーズがあるのでそっちの方が確実かも知れませんね

後は正規表現との戦いです(笑)


このカテゴリの人気Q&Aランキング

おすすめ情報