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

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

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

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

データベース設計

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

Q&A

解決済

4回答

7070閲覧

DB テーブル名とカラム名の重複はダメですか?

退会済みユーザー

退会済みユーザー

総合スコア0

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

データベース設計

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

0グッド

0クリップ

投稿2022/02/15 05:55

DBを設計する際、テーブル名とカラム名が重複してしまうのは問題でしょうか?

例えば、体重を管理するDBを設計するとき、DB名をweightとします。
カラムにはid, 日付, 体重を設定するとして、それぞれのカラム名は英語に直訳すると id, date, weightとなります。
このとき、DB名のweightとカラム名のweightが名前として被ってしまうのですが、これは問題でしょうか?

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

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

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

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

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

guest

回答4

0

ベストアンサー

DB名のweightとカラム名のweightが名前として被ってしまうのですが、これは問題でしょうか?

それ自体には問題ないですが、一般にテーブルは複数行入れるものですので、テーブル名は複数形で命名したほうがわかりやすいです。

投稿2022/02/15 06:30

maisumakun

総合スコア146550

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

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

退会済みユーザー

退会済みユーザー

2022/02/15 07:31

テーブル名を複数形にすることも考えたのですが、`weight`は不可算名詞なので複数形にするのはおかしいのでは?と考えてしまいました。実際の開発現場ではそこまで気にしないものでしょうか?
maisumakun

2022/02/15 08:19

> 実際の開発現場ではそこまで気にしないものでしょうか? むしろ、RailsやLaravelなど、「特別に設定しなければテーブル名は複数形」というフレームワークもあります。
退会済みユーザー

退会済みユーザー

2022/02/15 08:48

ということは、現場では不可算名詞でも無理やり「weights」のような複数形にしてしまうということでしょうか? 何度も質問してしまい、申し訳ないです。
maisumakun

2022/02/15 09:14

本題ではありませんが、用法によっては「weights」も成り立ちます。
退会済みユーザー

退会済みユーザー

2022/02/15 10:35

そうなのですね。ご丁寧にありがとうございました。
guest

0

予約語などもあるわけですし、命名のルールはDBに限った話ではありません。
オブジェクトに対しての命名ルールなどを参考にしても似たような話がありますし。
最近は、長くても目的が分かるような名称にするのが流行りの様ですけどね。

質問はテーブルとカラムの名称が被ったらという事ですけど、先ずは、それがどのようなオブジェクトなのかが分かるようにするのが一般的だと思います。

例えば、テーブル名をt_weightのようにすれば被る事はありません。

投稿2022/02/15 09:16

sazi

総合スコア25430

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

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

0

システム的な制約はないでしょうけど運用上混乱のもとになるのであまりよろしくはないでしょう

投稿2022/02/15 06:06

yambejp

総合スコア117678

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

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

0

文法的にも定義的にも可能なことなので別に問題はないです。
アプリケーション要件次第でしょう。
気になるならもっと大きな枠で「名前」を考えることですね。

投稿2022/02/15 06:00

m.ts10806

総合スコア80888

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問