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

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

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

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

Q&A

5回答

4900閲覧

カラム名の付け方

退会済みユーザー

退会済みユーザー

総合スコア0

MySQL

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

0グッド

0クリップ

投稿2016/09/25 17:10

データベースのカラムで「日本語名」、「英語名」みたいなのを定義する場合
jp_name,en_name

name_jp, name_en
どちらがよいでしょうか?

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

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

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

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

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

guest

回答5

0

ネーミングルールがあるならそれに従うまでですが、ない場合は個人の主観になりますね。
私個人としては name だけでみれば、name_jp の方が良いかと思いますが、もっとたくさんカラムがあると国別にグルーピングしたくなるかもしれません。
例えば、この程度なら name_jp とします。

address name_jp name_en age

この場合だと jp_name にするかもしれません。

jp_name jp_address jp_memo en_name en_address en_memo

もっともこのようにカラム数が増えるようであれば、IDを持たせてレコードを分けます。

lang … 0=jp,1=en name address memo

投稿2016/09/26 01:39

ttyp03

総合スコア16998

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

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

0

今回のご質問に対しては絶対的な答えはございません。
担当されていつ開発環境や開発手法や使用するフレームワーク、
使っているツールなどによって、何が楽な方法なのかは違うと思います。

ただ組織内で命名規約やルールなどが決まっている場合があるので
そちらを参照された方が良いのではないでしょうか?

組織内にルールがないということであれば後にデータをどのように
扱うかによって決められたら良いと思います。

最初にnameを持って来てアルファベット検索時に統一的に見やすくするか?
あえて後ろに持ってくるかは処理次第です。

投稿2016/09/26 00:27

Yatsurugi

総合スコア1628

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

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

0

ご質問の内容については、他の方も述べられている通り、案件やチームごとにケースバイケースで決定されることかと思いますので、どちらが良いとは言えないと思います。

質問の本題からはそれますが、1点、「jp」は国名コードであり、言語コードではありません。
「日本語」の言語コードは「ja」です。
「日本」の国名コードが「jp」です。

言語コード: https://ja.wikipedia.org/wiki/ISO_639-1コード一覧
国名コード: https://ja.wikipedia.org/wiki/ISO_3166-1

よって、「ja_name, en_name」もしくは「name_ja, name_en」の方がより良いと考えます。

投稿2016/09/27 07:19

moriyama

総合スコア259

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

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

0

「物理列名」ということが多いでしょうか? ソフトウェア業界で統一された表現かは知りませんが。
質問の例はどちらでも良いですが、一貫したネーミングルールが欲しいです。ローマ字表現するなら必ずヘボン式で統一する。オフショア開発するなら英語でネーミングするのがミスが少ないです。複数のメンバーで設計するならネーミングルールをわかり易い文章で必ず共有しておきましょう。
ネーミングが雑だと同じ論理列名なのにテーブルによって桁数やデータ型違っていて、本番にのせたら桁あふれで落ちたり、暗黙の型変換の為にパフォーマンスが出なかったり、と困ったシステムが少なくないです。
テーブルが多ければERツール も使いましょう。

投稿2016/09/25 20:24

編集2016/09/25 21:33
Orlofsky

総合スコア16415

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

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

0

ネーミングルールについては組織内での意思統一の問題や慣例とされるルールがあるので、どれを取り入れるかはケースバイケースだと思います。
ただ今回のご質問のようなケースだと、アルファベット昇順で並べたときに名称本体部分(この場合"name")が固まった方がよいのか、言語部分が固まった方がよいのか、という判断になるのではないでしょうか。

投稿2016/09/25 23:43

ynakano

総合スコア1894

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問