[SQLiteメモ]SQLiteのデータ型

SQLiteでテーブルを作成するときよく参照する情報なのにすぐ忘れてそのたびに調べるのでメモっておきます。正確な情報は書籍やドキュメントを読んだ方がいいです。

SQLite Version3のデータ型(説明は機械翻訳)

型名 説明
NULL 値はNULL値です。
INTEGER 価値は、価値の大きさに応じて、2、3、4、6または8バイト、署名された整数(1に保管される)です。
REAL 値は、8バイトのIEEE浮動小数点として保存された、浮動小数点値です。
TEXT 価値はテキスト文字列です。そして、データベース符号化(UTF-8、UTF-16BEまたはUTF-16-LE)を使って保存されます。
BLOB 価値はデータの点です。そして、それが入力されたので、正確に保存されます。(バイナリデータそのまま保存画像とか保存するのに利用。)

 

実際には下の様な方を定義時に指定できます。NUMERICを指定するとテキストが指定された場合、数値への変換を試みて変換できればREAL又はINTEGERで保存するようです。ややこしくなりそうな気もするけどw。

  • TEXT
  • NUMERIC
  • INTEGER
  • REAL
  • NONE

実際には下の様なSQLを書いてテーブルを作成します。

 

CREATE TABLE TBL_ADDRESS(
    id          INTEGER PRIMARY KEY,
    name     TEXT,
    tel         TEXT,
    address  TEXT,
    old         NUMERIC,
    photo     BLOB
);

 

上のファイルをaddress.sqlというファイルで保存した場合、下の様な感じでコマンドプロンプトやシェルでコマンドをたたくと指定した名前の(ここではaddress.db)が作成されます。

> sqlite3 address.db < address.sql

 

SQLite Home Page
http://www.sqlite.org/

Datatypes In SQLite Version 3
http://www.sqlite.org/datatype3.html

 

SQLite入門 第2版
amazon 楽天
(Visited 207 times, 1 visits today)

タグ :