2012-03-01 6 views
2

ためには、「値が値の大きさに応じて1、2、3、4、6、または8バイトに格納され、符号付き整数です。 "SQLiteの整数サイズ:個々に大きさや直線のSQLiteのサイトの取り出しグループ全体

は、これはあなたが8つのバイトを必要とする1つの値を持っている場合は、その列のすべての値が8バイトとして扱われることを意味しています。または、残りがすべて1バイトで、1つの値が8バイトの場合、その値だけが8バイトを使用し、残りは1のままですか?

私はあなたがそれに応じて、整数のサイズを指定するSQLにより慣れています。

私は質問は些細なようだが、知っている回答に基づいて、私はデータベースの一部を処理する方法を決定します。

答えて

3

SQLiteのデータベース構造は、データ型を処理する方法が異なります。各フィールドには、異なるタイプを持つことができます...ここで

はsqliteのからdocumentationです:

ほとんどのSQLデータベースエンジンは、静的な型付けを使用しています。データ型はテーブル内の各列 に関連付けられ、その特定のデータ型の値のみがその 列に格納されます。 SQLiteは、マニフェスト型を使用してこの制限を緩和します。マニフェスト型では、 データ型は、値が である列ではなく、値自体のプロパティです。したがって、SQLiteは、その列の宣言された型に関係なく、任意のデータ型の任意の値を任意の列 に格納することができます。 (この規則にはいくつかの例外があります。 アンINTEGER PRIMARY KEY列だけでよい店舗整数とSQLiteのは時にそれができるのカラムの宣言したデータ型に 値を強制しようとします。)

+0

をので、基本的に、それがフィットしますデータ型への各エントリは整数として(可能な場合)、列内の他のエントリのサイズや型にかかわらずできるだけ小さな反復を使用します。 – Rhyono

+0

ええ、あなたは同じ列にcharを置くことさえでき、それはそれを扱います。奇妙なハァッ! – jroyce

+1

私はそれを「椅子」として最初に読んだ(遅い)。応答していただきありがとうございます。 – Rhyono

関連する問題