質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

Q&A

解決済

1回答

1170閲覧

データベースのフィールド名について

bananacoffee

総合スコア260

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

0グッド

0クリップ

投稿2020/03/27 09:55

ニュースリリース用のテーブル(MySQL)を作成する際、

  • 記事作成日時
  • 公開開始日時
  • 公開終了日時
  • 公開フラグ(公開期間中に非表示にする必要がある)
  • 最終編集日時
  • 削除日時(論理削除)

を記録する必要があり、
記事の公開判定が

  1. 削除日時 < 現在なら非公開
  2. 公開フラグがOFFなら非公開
  3. 公開開始日時が指定されている場合は公開開始日時 > 現在で非公開
  4. 公開終了日時が指定されている場合は公開終了日時 < 現在で非公開

となる場合のテーブル定義の名付けに悩んでおります

ひとまず以下のように日時を過去形(〇〇された日時)として定義しているのですが、
正直あまり気持ちよくないなぁと思っております。

項目フィールド名データ型NULL
記事作成日時createddatetime
公開開始日時publisheddatetime
公開終了日時closeddatetime
公開フラグpublish_flagtinyint(1)
最終編集日時updatedtimestamp
削除日時deletedtimestamp

妥当な名付けはございますでしょうか。
または、皆様ならどのような名付けをするのかお伺いできればと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gentaro

2020/03/27 10:04

https://teratail.com/help/avoid-asking > teratailは困っている人の質問を解決するサービスです。そのため、漠然とした興味から票を募るような質問や、意見の主張をすることを目的とした投稿は推奨していません。 何か困っている理由があり、最適解を見つける為の知見を得たい場合は、その理由や何が知りたいのかを明確に記述してください。 この質問で「困っていること」が何なのかサッパリわかりませんし、「気持ちよくない」を理由に「皆さんならどうしますか?」という質問がここの趣旨に合っているとは思えませんが。 まぁ回答じゃないですけど、質問文に書いてあるカラム名でもだいたい問題ないと思いますけどね。 flagってやつだけ、名前からオンとオフが何を表すのか伝わってこないから「published」はこっちに使いたいし、そうすると日付項目と被るから、日付の方を「publishedAt」とか「publishDate」とか、時間を指していることがわかる接尾辞を統一的につけるぐらい。
guest

回答1

0

ベストアンサー

現状がそこまでわかりにくい訳でも無いので好みで決めてしまっていい範囲だと思います。

個人的な好みとしては

  • created_atみたいな形で時間を示すフィールドであることをフィールド名に表現する
  • publish_flagis_publishedにして、trueの時の状況把握が自明にするのが好きです。(tinyintなのでpublish_flagでも十分に自明だとは思いますが、他のフラグ系フィールドが出てきたときに辛くなりそうなので)

投稿2020/03/27 10:07

tanat

総合スコア18713

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問