• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テーブル構成について)

テーブル構成についての質問

このQ&Aのポイント
  • Perl + PostgreSQLを使用してWEBシステムを作成中です。テーブル構成について悩んでいます。
  • 携帯キャリアの管理をどのように行うか検討中です。DB上で管理するメリットやテキストデータの管理のメリットを比較しているところです。
  • テーブル構成について皆さんのご意見を頂きたいです。DB上で一元的に管理するか、テキストデータとして管理するか、どちらが良いと思いますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • zebedeer
  • ベストアンサー率66% (80/121)
回答No.2

個人的には、データを取り出す際に完全にDBに依存できるなら、それに越したことはないと思います。 「$dbh->selectall_hashref(q[SELECT * FROM hoge join fuga on foo = bar])」とかの帰り値をそのまま表示系のルーチンに渡せたほうが楽じゃないですか? (管理画面とかを作るにしても定型化しやすいし) >■DB上での管理 >柔軟性が乏しい(仮に運用途中でテーブル項目が増えたりしたら面倒) テーブルの列をhashとして扱えば柔軟性は十分では? (列が追加されようが、削除されようが関係なし) >■テキストデータの管理 >バックエンドとの通信がない為処理が早い どのみち取り出すときにSQLにするならDBへの接続が必要なので、速度に関してはそんなに変わらないと思う。 (よほどDBに負荷をかけたくないなら別だけど)

myosuke
質問者

お礼

ご回答ありがとうございました。 > テーブルの列をhashとして扱えば柔軟性は十分では? (列が追加されようが、削除されようが関係なし) 確かに・・・ > どのみち取り出すときにSQLにするならDBへの接続が必要なので、速度に関してはそんなに変わらないと思う。 それもそうですね、気づいておりませんでした。 今回私が作成しているシステムに関しては、DB上で一元管理することにいたします。 ご意見ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • ttyp03
  • ベストアンサー率28% (277/960)
回答No.1

プログラム中にハッシュで登録しておくのが一番楽だと思います。 何ならそのハッシュのところだけ外部ファイルにして使用するプログラムでインクルードすればいいでしょう。 ハッシュで良いと思う理由は、携帯電話のキャリアはほぼ固定されているもので、頻繁に更新されるわけではないからです。 またテキストファイルとして作成してしまうと、結局それを読み込む処理等が発生してしまいます。 ただ今時のコンピューターは高速ですので、よっぽど大量に処理しなければどれを選んでもたいして変わらないとは思いますが。 ですので作りこみが楽なハッシュをおすすめします。

myosuke
質問者

お礼

ご回答ありがとうございました。 そうですね、この場合テキストデータより外部ファイルとした方がよいですね。 また、どれを選んでも変わらないという点が悩みどころですね(^^; ご意見ありがとうございました。 御礼遅れましたことお詫びいたします。

すると、全ての回答が全文表示されます。

関連するQ&A