タグ付けされた質問 「rdbms-agnostic」

12
なぜ歴史的にデータベースフィールドの大きさに256ではなく255を使用するのでしょうか。
255文字の大きさに設定されたデータベースフィールドをよく目にしますが、なぜ伝統的/歴史的な理由なのですか?私はそれがページング/メモリ制限とパフォーマンスに関係していると思いますが、255と256の違いは常に私を混乱させました。 varchar(255) これがインデクサーではなく容量または大きさであることを考えると、なぜ256は256よりも255が推奨されますか?バイトは何らかの目的(ターミネーターまたはnullなど)のために予約されていますか? おそらくvarchar(0)はナンセンスです(容量がゼロです)?どちらの場合、2 ^ 8のスペースは確かに256である必要がありますか? パフォーマンス上の利点を提供する他の大きさはありますか?たとえば、varchar(512)はvarchar(511)またはvarchar(510)よりもパフォーマンスが低いですか? この値は、新旧のすべてのリレーションデータベースで同じですか? 免責事項 -私はDBAではなく開発者です。既知のビジネスロジックに適したフィールドサイズとフィールドタイプを使用しますが、この設定の歴史的な理由を知りません。それがまだ関連している場合はより多く)。 編集: 答えをありがとう、サイズを格納するためにバイトが使用されるといういくつかの合意があるようですが、これは私の心の中で決定的に問題を解決するものではありません。 メタデータ(文字列の長さ)が同じ連続したメモリ/ディスクに格納されている場合、それはある程度の意味があります。1バイトのメタデータと255バイトの文字列データは非常にうまく適合し、256の連続したストレージのバイトに適合します。これはおそらくきちんと整頓されています。 しかし...メタデータ(文字列の長さ)が実際の文字列データとは別に(おそらくマスターテーブルに)格納される場合、1バイトの整数のみを格納する方が簡単だからといって、文字列のデータの長さを1バイトに制限します。メタデータの部分は少し変わっているようです。 どちらの場合も、おそらくDBの実装に依存するのは微妙なことのようです。255を使用する習慣はかなり広まっているように思われるので、最初にどこかで誰かがその良い事例について議論したに違いありません。プログラマーは理由なしに新しい慣行を採用することはありません。

14
ビューは何に適していますか?
私はRDBMSでどのようなビューが使用されているかについての一般的な考えを得ようとしているだけです。つまり、私はビューとは何か、どのようにビューを作成するかを知っています。また、過去に何のために使用したかも知っています。 しかし、ビューが何に役立つのか、ビューが何に役立つべきではないのかを徹底的に理解したいと思います。すなわち: ビューは何に役立ちますか? ビューを使用するべきではないときに、ビューを使用したくなるような状況はありますか? テーブル値関数などの代わりにビューを使用するのはなぜですか? 一見しただけではわからない、ビューが役立つかもしれない状況はありますか? (そして、記録のために、これらの質問のいくつかは意図的にナイーブです。これは部分的に概念チェックです。)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.