2016-03-21 8 views
-1

スキーマをPostgreSQLに設計していますが、データ型のサイズに関する疑問はほとんどありません。たとえば、Addressテーブルのcountryカラムでは、フルバージョンのUSSRを心に留めて48を与えました。 pin code 10は大丈夫ですか、私は8を与えなければなりませんか?SQLのデータ型にサイズを効果的に割り当てる方法は?

同様に、company idemployee idのような列については、Big intまたはIntは問題ありませんか?

また、project membersの列にはsmall intを使用できますが、数字は大きくない可能性があります。

実際にはSmall Intのデータ型が使用されていますか?

答えて

2

これらの質問に答えるには、data profilingをする必要があります。ビジネスと話したり、データを調べたりすることなく、これらの質問に答えることは難しいでしょう。
data profilingタスクの出力の1つは、他の情報に加えて、データ型、長さ、NULL値の発生に関する提案です。もちろん、これはサンプルデータによって異なります。
Company idおよびemployee idは、自動増分された数字がビジネスキーであるかどうかによって異なります。
Small Int datatypeがそのフィールドの別個の値または大きな値をあまり期待していない場合に使用されます。参照/参照テーブルのIDフィールド(例: = 1の場合はGender = '男性' 、GenderID = 2、Gender = '女性'、GenderID = 3、Gender = 'その他')。

+0

返信いただきありがとうございます。私は新しい単語「データプロファイリング」について知りに来て、実際に「small int」が使用されていることを理解しました。 –

+1

Postgresでは、性別フィールドのようにENUMを使うこともできます。また、フィールド名をすべて小文字にすることをお勧めします。あなたがそれらを引用する必要はありませんように。 varcharで長さを指定する場合、私は安全対策以外のファンではありません(アプリケーションが何かばかげている場合は、あなたのフィールドで1GBにならないようにしています)。そのようなものについて本当に気にしているならば、先頭にスペースや後ろにスペースがないようにする必要があります。 –

関連する問題