• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:データベース設計について)

データベース設計について

このQ&Aのポイント
  • データベース設計についてのオーソドックスな考え方を教えてください
  • ポストグレSQL 8.15を使用して、150台の端末のログイン時間を記録するデータベースを作成する方法について教えてください
  • ログイン時間とログオフ時間を記録するためのデータベース設計について教えてください

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

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

テーブルデザインを気にされているようですが、すでに更新用のツールが準備されている状態であるなら、テーブルの構造を悩む余地はないのではないですか?(そのツールの書き込み方で決まりでは?) 書かれた形でデータを保持できるならば検索には理想的ですが、通常ログはINSERTするものです。 ログイン時間とログオフ時間を同一レコードに記録するためには、 ログイン時にはデータを追加し、ログオフ時にはログイン時間が記録されていてログオフ時間が未収録のデータがあれば更新し、なければ追加するというようなハンドリングが必要になります。 (そうしないとどのような事情であれログインが記録されなかったときにログオフ情報がロストしますので) パフォーマンス面も考えれば、ツールがそんな仕様になっているとは考えにくいですよね。したがって、結局は「連番、端末名、IN/OUT、時刻」とせざるを得ないのではと思います。

drdrdrdr
質問者

補足

>更新用のツールが準備されている状態であるなら、テーブルの構造を悩む余地はないのではないですか 前任者が作成したツールとデータベースがあるのですが データベースが配列を使用した構造になっていて 端末名が主キーにしてlogon,logoff の箇所に毎回の時間 が入っています(数百回分も入っている)。 データを取り出して加工するのに非常に不便なためデータ ベースは作り直してツールも改造しようと思い相談した次第です。 連番、端末名、IN/OUT、時刻 とすればスマートにいきそうです。 ありがとうございました。

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

その他の回答 (1)

回答No.2

端末を使用するユーザが固定でないなら、ログインユーザ名も必要では?

drdrdrdr
質問者

補足

アドバイスありがとうございます。 それも入っているのですが今回のフォーカスは ログイン、ログオフ 時間データの持ち方だっ たので割愛しました。

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

関連するQ&A