X



フィールド名は日本語にするか、英語にするか

0001NAME IS NULL
垢版 |
2006/06/15(木) 15:28:10ID:uKjpjL1Y
プログラミング的には、変数名と同じ感覚で英語なのかもしれないが、
英語にすると、日本語との変換データが必要になる。

ユーザーの感覚では日本語が当然わかりやすい。

特にユーザーがなんらかのUIを経て、テーブルやフィールドを
自由に作成する場合は日本語が良い?
0035NAME IS NULL
垢版 |
2006/06/23(金) 17:00:03ID:???
>>34
ぱっと思いつくのは、
@携帯
A古ーいシステムに引き渡すためにCSVを吐くという腐った案件
これらはデータ内容の問題だけど、
BWin98から古ーいツールを使ってアクセスしたいとユーザがわがままを言う

ま、@はともかく後のはどーでもいい話だと思ってるけどね。
ちなみに俺は>>19です。
0036NAME IS NULL
垢版 |
2006/06/28(水) 22:57:00ID:???
AccessからSQLServerに変えたときに「ー」を使ってたフィールドがらみのSQL文がみんな
エラーになってびっくらこいた。
0037NAME IS NULL
垢版 |
2006/07/05(水) 18:03:42ID:???
>>23
うん
ただ、それだとシステムの追加や入れ替えのとき
そのまま動かすには新しいシステムもそれに縛られちゃうから
システム構成を決められる権限も持ってないと
全部改修させられるリスクがあるよ
0038NAME IS NULL
垢版 |
2006/07/15(土) 04:05:35ID:rilGKiq6
遅レス・・

基本は英語にすべきじゃないかな?

まぁ、どこで製造するかにも寄るけど・・。
最近は、日本で設計したものを中国に投げるケースが多い・・。

中国人は、コメント等を日本語で書いてくれるが意味が不明なものも
多々ある・・。

英語で統一し、理解しやすいものに・・。

そもそも、PCは日本語より英語を使ってソフトを作ったほうが
処理も早いし・・。
0039NAME IS NULL
垢版 |
2006/07/15(土) 17:01:47ID:???
とりあえず、外部ツールなどもすべて日本語に対応してるのなら、
一度は日本語フィールド名使ってみたいかな。
判断はそれからだ
0040NAME IS NULL
垢版 |
2006/07/16(日) 07:52:24ID:???
自社開発の場合日本語を使用しない理由は全くない。
0041NAME IS NULL
垢版 |
2006/07/25(火) 17:18:33ID:lcoqexIT
PostgreSQLとSQLiteで日本語フィールド名を使ってる。複雑なクエリを後から見直す時でも
わかりやすくてとっても快適。


本当は英語でフィールド名考えるのがめんどうなだけなんだけどw
0042NAME IS NULL
垢版 |
2006/07/25(火) 17:33:32ID:???
UTF-8は情報量が1.5倍になる欠点がある。
ナローな回線だと致命的。
0043NAME IS NULL
垢版 |
2006/07/25(火) 23:50:28ID:???
> UTF-8は情報量が1.5倍になる欠点がある。
どうせ勘違いしているんだろうなw
0044NAME IS NULL
垢版 |
2006/08/12(土) 00:53:29ID:???
今まで見たフィールド名が日本語で構築されたDBにまともなものはなかったなあ。
0045NAME IS NULL
垢版 |
2006/08/30(水) 00:20:53ID:hS5RrkRv
プログラマー的には日本語にすべきでないと思う人が多いだろうが
その場の環境と客の要求に合わせて日本語にする事もある。
まともなDBなんて必要なくただ分かりやすければいいという場合もある。


0046NAME IS NULL
垢版 |
2006/08/30(水) 11:10:40ID:???
某大手の会計システムERPの内容を見るとオブジェクト名も項目名も全部英語だったが、
cT01みたいな暗号っぽいのばかりだったので、仕様書が不可欠だった(契約すればDB仕様書を入手できた)。
TAXPercentみたいな具体名に近い項目名がほしかったのだが・・・。
0047NAME IS NULL
垢版 |
2006/08/31(木) 20:22:43ID:JFFgs9Tp
日本語は曖昧なところが多いからなぁ
複数の人が編集する時、似たような名前で別のフィールドを作るなんてことも十分考えられる
DBの構築・管理を一人若しくは十分に意思疎通が出来るグループなら日本語でもなんでもいいんじゃない?
逆に別の階の部署の人間が弄ったりするような場合だと、英語の方がいい場合が多いと思う
0048NAME IS NULL
垢版 |
2006/08/31(木) 23:45:17ID:???
仕様決めるときはレビューくらいしろw
0049NAME IS NULL
垢版 |
2006/09/09(土) 18:56:43ID:???
ストアドで日本語のフィールド名がずらずら書いてあるのを見て気づいた。

「記号みたいな英語名になってたときと変わらねー!」
0050NAME IS NULL
垢版 |
2006/09/12(火) 12:47:43ID:???
メンテナンス性という観点では仕様書がきちんとしてれば、どっちでもありじゃないかな。
でも、解析やデバッグなんかで、SQL打つときになるべく日本語入力切替とかしたくないから
やっぱり英語表記かな・・・個人的には。ということで

英語表記>>>日本語表記>ローマ字>>>>>>>>>>英語+ローマ字
0051NAME IS NULL
垢版 |
2006/09/14(木) 01:04:52ID:???
oracleだとテーブル名、フィールド名は30byteまでですよね。
私の携わってるシステムでは、フィールド名に全角文字を使っているので、
全角15文字以下にしないといけない。項目名を日本語にすると、
意外と名称が長くなりがちです。
そうすると、無理やり名称を短縮して定義することになる。
結果分かりづらくなる事が多い。本末転倒です。
あまり勧められませんよ。
0052NAME IS NULL
垢版 |
2006/09/14(木) 09:53:28ID:???
フィールド名が日本語で15文字超えるのは、ネーミングに問題があるような気がするけど
一般的に、日本語を英語やローマ字にしたらバイト数は増えるので
30バイトに無理やり名称を短縮したら、結果分かりづらくなる事が多くね?w
0053NAME IS NULL
垢版 |
2006/09/14(木) 15:39:00ID:???
ところで英語派の人たちに聞きたいんだけど、一般的にありがちなフィールド名、
まあなんでもいいけど例えば数量とか単価とか金額とか、
注文日とか納品日とか納品予定日とか請求日とか請求締日とか
半角アルファベットではみんなどんな命名してるの?
0054NAME IS NULL
垢版 |
2006/09/17(日) 01:01:35ID:???
外資系のシステム組んだことないの?英語の仕様書くらい読めないと
0055NAME IS NULL
垢版 |
2006/09/17(日) 03:35:21ID:???
マイナーな業務の名前を辞書引いて英語にしてたら、後で見てなんのフィールドかわからんかったよw
0057NAME IS NULL
垢版 |
2006/09/25(月) 15:52:13ID:???
>>51
Oracle ならそもそも、日本語のオブジェクト名が使えるなんて保証してない。
0058NAME IS NULL
垢版 |
2006/09/25(月) 17:35:29ID:???
つーか、日本語のオブジェクト名が使えるなんて保障してるDBってあんの?
0059NAME IS NULL
垢版 |
2006/09/25(月) 19:08:03ID:???
こんなのしか見つからなかったが
ttp://www.oracle.co.jp/education/ou_enews_letter/try_om/vol25_fellow_a.html

「日本語のオブジェクト名が使えますよ」とも
「日本語のオブジェクト名は使えませんよ」とも
Oracleは明言してないような・・・


・A-Z、a-z、0-9、_、$、#以外は使用できません。
・A-Z、a-z、0-9、_、$、#以外を使用した場合は動作保障対象外です。

↑こういう書き方をしていない以上、マルチバイト文字だって文字なんだから
動作保障「している」と解釈されてもOracleは反論できないんじゃないの?
0060NAME IS NULL
垢版 |
2006/09/26(火) 14:34:45ID:???
>>59
ちゃんとマニュアル嫁。

>非引用識別子にはデータベースキャラクタセットの英数字、
>アンダースコア(_)ドル記号($)およびシャープ記号(#)のみ
>含めることができます。
という事で、引用識別子としてなら日本語が使える。

…使えるんだが、テーブル名・カラム名のすべてをダブルクォーテーションで
括る必要があるわけで、これがまた見辛い事この上ない。オススメしない。
しかもデータベース文字セットがUTF-8だったりすると漢字1文字で3バイト。
その他(Oracleの問題じゃないが)、ミドルウェアやツールの問題で
文字化けしないとも限らないし。
0061NAME IS NULL
垢版 |
2006/10/31(火) 22:57:30ID:3tVRfpbQ
Oracle8.1.7〜10gR2だと全角文字の組み合わせでselectできないフィールドとかつくれちゃう不具合ありますよ

そのためにフィールド名を別の名前にした。"とかで囲ってもそんなフィールドないっていわれます。
0062NAME IS NULL
垢版 |
2006/11/01(水) 09:57:15ID:???
>>61
""で括っても駄目ってのは強烈だな。
上司や顧客への説得材料にしたいんで、よければ再現性のある具体例を教えて
0063NAME IS NULL
垢版 |
2006/11/02(木) 09:23:17ID:???
フィールド名を英単語で付けようと思ってるんだが
通常フィールド名で使うような単語を列記したようなサイト無いかな?
0064NAME IS NULL
垢版 |
2006/11/02(木) 21:03:54ID:rf5cSscl
日本語だと単語一つですむものを
英語にすると、熟語や文章になってしまう。
どうしたもんか。
0066NAME IS NULL
垢版 |
2006/11/18(土) 22:49:55ID:???
元々英語派だったが、今は半角ローマ字派。
英語にすると、フィールド名にFromとかCurrencyとかが
避けられなくて、代わりの名前も浮かばないことがある。
勤務先では日本語できない外人でもKara、Tsukaを
使ってたりする。
0067NAME IS NULL
垢版 |
2006/12/03(日) 21:14:59ID:8cK8cWpw
>>66
それなんだよね。
日本語は単語が多い。
しかも合成語も簡単に作れる。

英語だとそうはいかない。
文章になってしまう。
0068NAME IS NULL
垢版 |
2006/12/05(火) 16:31:56ID:B4yTJgX9
実際、外国ではどうなのか?外人降臨しないかな?
0069NAME IS NULL
垢版 |
2006/12/05(火) 16:47:45ID:???
外国では日本語のフィールド名は使いません。
0070NAME IS NULL
垢版 |
2006/12/06(水) 16:48:46ID:???
>>69
そもそも日本語つかえませーんw
0071NAME IS NULL
垢版 |
2007/03/14(水) 02:30:35ID:0zI05T/K
>53
>54
>66
>67
このへん重要な気が…
0072NAME IS NULL
垢版 |
2007/03/14(水) 06:36:52ID:???
代表的なDBMSで日本語フィールド名を使うとどんなケースで
具合が悪いのか知りたくて覗いてるのだけれども、
全く具体例の出てこないね。このスレは。
せめて、ネットがらみだとドウだ、くらいの話題に展開しても
いいはずだが。
0073NAME IS NULL
垢版 |
2007/03/14(水) 16:19:21ID:???
Oralce/SQLServer + Delphi使いなのだが、フィールド名に英語が使われていると、たとえば
「MakerName」をQueryオブジェクトに取り込むとき、項目のオブジェクト名がQuery1MakerNameになって
直感的にコーディングがしやすくなるが、
「製造業者名」にしてしまうと、取り込まれたオブジェクト名がQuery1StringField1のようにIDEによって
適当につけられたNameになってしまい、コーディングのときDBの項目名とコードのオブジェクト名がまったく一致しない。
あとで直したり、あらたに対応表を作るのも大変。結局英語フィールドの方がストレスがたまらない。
.NETやJavaでDBアプリ組んだことがないからわからないけど、上手くやっているのかな?

エンドユーザーが「日本語くれ」と言ってきたら、別名でビューを切って対応している。
0074NAME IS NULL
垢版 |
2007/03/14(水) 17:48:39ID:???
見出しを付けるなら「IDEの思わぬ陥穽」となるね。
0075NAME IS NULL
垢版 |
2007/03/19(月) 13:12:27ID:???
>>72
少なくともOracle9iではマテリアライズド・ビューが作れないことがある・・・orz
0076NAME IS NULL
垢版 |
2007/04/01(日) 01:55:01ID:???
ストアドやトリガー名も日本語でやってますが
何か問題でもあんの?
0077NAME IS NULL
垢版 |
2007/08/05(日) 12:37:28ID:wwxWXJYl
VB と SQL Server で日本語使ってたけど問題なかった。
他の言語や DB だと色々大変なんだね。

日本語だと特別に考えなくても皆の認識が一致するから楽。
もちろん読んで(見て)分かり易い。

英文字だと変な英語だったりローマ字だったりでイライラする。
0078NAME IS NULL
垢版 |
2007/08/22(水) 04:12:28ID:SJy//8Ce
CREATE TABLE `meibo` (
`id` integer,
`yuuzanamae` varchar(16) NOT NULL,
`pasuwardo` varchar(32) NOT NULL,
`nickname` varchar(32) NOT NULL,
`email` varchar(40) NOT NULL,
`namae` varchar(32) default NULL,
`seibetu` char(1) default NULL,
`tanjyobi` date default NULL,
`yuubin` varchar(8) default NULL,
`adoresu1` varchar(9) default NULL,
`adoresu2` varchar(255) default NULL,
`adoresu3` varchar(255) default NULL,
`tel1` varchar(13) default NULL,
`tel2` varchar(13) default NULL,
KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=sjis COMMENT='名簿';
0079NAME IS NULL
垢版 |
2007/08/22(水) 04:16:55ID:SJy//8Ce
CREATE TABLE `meibo` (
`id` integer,
`account` varchar(16) NOT NULL,
`password` varchar(32) NOT NULL,
`ニックネーム` varchar(32) NOT NULL,
`email` varchar(40) NOT NULL,
`名前` varchar(32) default NULL,
`性別` char(1) default NULL,
`生年月日` date default NULL,
`郵便番号` varchar(8) default NULL,
`住所1` varchar(9) default NULL,
`住所2` varchar(255) default NULL,
`住所3` varchar(255) default NULL,
`電話番号` varchar(13) default NULL,
`携帯番号` varchar(13) default NULL,
KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=sjis COMMENT='名簿';
0080NAME IS NULL
垢版 |
2007/08/22(水) 04:20:22ID:SJy//8Ce
マトモに日本語が扱える言語
マトモに日本語が扱えるデータベースエンジン
これさえ揃っていれば、フィールド名が日本語でも全然支障ないね。

UNIX系OSから派生した、改行文字を”¥n”って書くタイプの言語は
マトモに日本語が扱えないダメダメ言語が多いから、こんな無意味なスレが立つんだよね。
0081NAME IS NULL
垢版 |
2007/08/22(水) 05:01:47ID:???
性別にsexは照れちゃう・・・。

チームにおなごがいるのでなおさら。
0083NAME IS NULL
垢版 |
2007/08/25(土) 11:36:16ID:AiFeupPe
>>82
スレタイ嫁
0084NAME IS NULL
垢版 |
2007/08/27(月) 15:25:41ID:???
>>80 みたいな間抜けがいるから、こういうスレが勃つんじゃね?
0085NAME IS NULL
垢版 |
2007/08/27(月) 16:44:57ID:???
まあまあ全角英数を使う人だから。
0086NAME IS NULL
垢版 |
2007/09/10(月) 03:30:31ID:???
>>81
「gender」でどうよ?
ちなみにウチのシステムの性別コードは

1.男
2.女
9.その他

って定義になってる。
0087NAME IS NULL
垢版 |
2007/09/10(月) 12:02:32ID:???
性別コードはISO 5218で決められているらしい。
0 = not known
1 = male
2 = female
9 = not specified

国内標準としてJIS X 0303でも決められてるけど、
0と9はないそうな。

参照。
tp://d.hatena.ne.jp/takahashim/20061223#p3
0089NAME IS NULL
垢版 |
2007/11/12(月) 19:37:40ID:???
国際化(i18n)にいつでも対応できるよう、極力英語に統一するようにしてるけど、
いかんせん新幹線、その英単語に自信が無くて、人様に見せるのが恥ずかしい。
0090NAME IS NULL
垢版 |
2007/11/26(月) 18:31:33ID:???
うーん、欧米との連携とかあるので英語。
結局、日本語は欧米の端末じゃそのままだと文字化けするからな。
いろいろな連携とか考えて、8文字に収まるように工夫している。
フィールド名の制限に引っかかるトラブルは
解析で出てくると面倒なので、触らないようにしている。

あんまりフリーにしていると、「○○日」なんてフィールド名が氾濫するし、
そのうち「○○日1」とかになってくるような気がして、
結局今英語で問題なことも日本語で同じように起きる気がするな。
0091NAME IS NULL
垢版 |
2007/12/29(土) 01:55:03ID:???
>○○日1

分析段階から間違ってる気がするなw

てかアトリビュート一覧管理しないのか?
0092NAME IS NULL
垢版 |
2008/01/26(土) 22:50:44ID:???
フィールド名を英語にしたいんだけど、
英語名が思いつかないよ。

みんなどうやって考えてるの?
申請書つくるにすら頭を抱える始末だよ。
0094NAME IS NULL
垢版 |
2008/02/01(金) 21:23:06ID:UT00yD32
CREATE TABLE MEIBO (
INT ID,
VARCHAR NAMAE,
VARCHAR TEL,
VARCHAR ZIP,
VARCHAR ADORESU
・・・
0096NAME IS NULL
垢版 |
2008/02/03(日) 20:19:51ID:???
VARCHARが前かよ。ばーかーw
0097NAME IS NULL
垢版 |
2008/02/04(月) 12:13:44ID:???
ZIPって可変長である必要があるのだろうか‥‥
0099NAME IS NULL
垢版 |
2008/05/07(水) 17:33:52ID:???
データの追加・更新・論理削除した日時を入れるカラム名は、みなさんどんな名前にしていますか?

insert_datetime
update_datetime
delete_datetime

↑こういう感じでしょうか?
何か長ったらしいような気がしてます><

CRUDから頭文字を取って
c_dt
u_dt
d_dt
なんてものいいかな?と思いましたが、仕様書がないとすぐに連想できないですね><
0100NAME IS NULL
垢版 |
2008/05/08(木) 11:26:34ID:???
設計はともかく俺はdatetimeをdtmにするかどうかぐらいだな
0102NAME IS NULL
垢版 |
2008/05/20(火) 17:28:52ID:???
datetimeなら日時にすべき
0103NAME IS NULL
垢版 |
2008/05/21(水) 15:51:00ID:???
>>102
修正します。
挿入日時
更新日時
論理削除日時
0104NAME IS NULL
垢版 |
2008/05/21(水) 15:53:17ID:???
さらに修正。
追加日時
更新日時
論理削除日時

つまり、>>99 の「仕様」に近いものほどよい。
0105NAME IS NULL
垢版 |
2008/07/16(水) 15:04:06ID:EcUIxzMa
結局訓令式ローマ字に落ち着いた。
0106NAME IS NULL
垢版 |
2008/09/18(木) 19:17:39ID:???
ヘボン式にしろよ
なんだよ syu とか jyu とか
0107NAME IS NULL
垢版 |
2008/09/19(金) 09:08:56ID:???
ヘボン式は例外ルール有りすぎ
あとjyuって訓令じゃねえし、お前が無知なだけ
0108NAME IS NULL
垢版 |
2008/09/21(日) 15:44:13ID:???
ヘボン式は論外。訓令式も半端。日本式で決まり。
0109NAME IS NULL
垢版 |
2008/10/09(木) 18:12:14ID:???
>>105
アジア訛りで充分だろ
東洋人丸出しの顔で白人気取りに見えんのも逆に痛いし
0111NAME IS NULL
垢版 |
2009/01/03(土) 00:15:19ID:3emwlJX+
フィールド名やテーブル名に2バイト文字(日本語)を使うか、半角アルファベットを
使うかは、難しい問題だけど、半角英数だけにするなら、アルファベットは大文字に統一もしくは
小文字に統一する、2バイト文字使うなら、半角アルファベットは使わないは守らないといけないね。
半角アルファベットで、大文字・小文字を区別して混ぜて使うのは×

Oracleの場合
"ABc"とか"あaあ"とかはやめてほしい。
ちなみに、おれの場合は、Oracleなら半角アルファベット、SQLServerやアクセスなら、全角日本語
かな
0112NAME IS NULL
垢版 |
2009/01/10(土) 10:05:45ID:???
先ずはフィールド定義時にコメントをちゃんと入れて下さい><
0113NAME IS NULL
垢版 |
2009/01/21(水) 04:04:36ID:???
nameだと思ったらnamaeだったりすると、もうやる気なくすわ
0114NAME IS NULL
垢版 |
2009/02/05(木) 01:14:23ID:???
ちとスレ違いではあるが、誰か知ってたら教えて欲しい。
SQLServer2005で、テーブル名、フィールド名ともすべて半角アルファベットで
定義されてるDBがあって、そのなかのいくつかのテーブルをJOINして
ビューを作ってるんだけど、SQL文の中で、テーブル名 as ほにゃらら みたいに
別名を使うとき、別名に全角文字を使うのと、半角アルファベットを使うのとで、
パフォーマンスが変わる。全角の別名を使うと、パフォーマンスがガタ落ちする。
これってなんだろ?
0115NAME IS NULL
垢版 |
2009/02/19(木) 13:22:28ID:???
全角の別名を使ったから
0120NAME IS NULL
垢版 |
2009/02/20(金) 19:19:01ID:???
全角の別名を使ったから
0121NAME IS NULL
垢版 |
2009/02/21(土) 10:59:37ID:???
つまり SQLServer2005 が出来損ないということか?
0122NAME IS NULL
垢版 |
2009/03/14(土) 12:50:24ID:+CMRFd3I
SQLServerは最強だお
製品C='XXX'
製品c='XXX'
どちらでも問題ないよ
0124NAME IS NULL
垢版 |
2009/03/17(火) 06:45:15ID:t882uXmU
>>36と似てるけど、テーブル名に「ー」を使ったテーブルが読めないな。
oracle10・ole接続で表またはビューがありませんとなる。
ネイティブ接続、odbc接続だと読める。
oleドライバのバグだろうけど。
0126NAME IS NULL
垢版 |
2009/04/06(月) 19:27:09ID:Vb3wrAJR
かっこつけて英語だとワコワカチなんで日本語。

病院用は英語。(DICOMとのからみで統一せんとワコワカチ)
0127NAME IS NULL
垢版 |
2009/04/24(金) 17:25:10ID:???
↑みたいな悩みは日本人だけなんだろーか?
中東の人とかはどんなSQL書いてんだろ?
) 'obiem' ELBAT ETAERC
,regetni 'di'
:
:
的な?
0128NAME IS NULL
垢版 |
2009/04/24(金) 19:40:38ID:???
英語に拒否反応を起こしてるのは日本人とフランス人だけ
0129NAME IS NULL
垢版 |
2009/04/26(日) 23:43:25ID:???
プロジェクトに外人も参加するなら英語にしといたほうが親切かもね。
0130NAME IS NULL
垢版 |
2009/06/13(土) 01:09:35ID:???
中国人に聞いたらピンインで打つ奴も多いそうだけどw
0131NAME IS NULL
垢版 |
2009/10/22(木) 02:03:00ID:???
ってかさ、海外で利用するシステムなら、DBは半角英数字表記が一番だよねぇ?
現地の端末に日本語FEPが入ってるとは思えんので、何かあった時に、現地人が
SQL書けないじゃないか。
0132NAME IS NULL
垢版 |
2009/10/22(木) 09:04:39ID:???
なんで海外利用が前提になってるんだ
0133NAME IS NULL
垢版 |
2009/12/16(水) 01:32:34ID:6MmbHqTl
未だに、大手企業の課長クラスの老害どもは、
英語やローマ字の短縮形を複数組み合わせて
暗号みたいな造語項目作って、別途、項目辞書で管理するのが
当たり前だと思ってやがる…
文字数や日本語の制限とかもう無いし、いいから早く氏んでくれよ。
海外利用どころか、日本でも通用しないよ…
0134NAME IS NULL
垢版 |
2009/12/16(水) 20:15:31ID:???
英語に決まってんだろ!
sql文を書く時、いらいらする。
そんなこともわからんのか。
レスを投稿する


ニューススポーツなんでも実況