1. INTEGER: 用于存储整数值。
CREATE TABLE example (
id INTEGER,
age INTEGER
);
2. REAL: 用于存储浮点数值。
CREATE TABLE example (
price REAL,
temperature REAL
);
3. TEXT: 用于存储文本字符串。
CREATE TABLE example (
name TEXT,
description TEXT
);
4. BLOB: 用于存储二进制数据,比如图像、音频等。
CREATE TABLE example (
image BLOB,
audio BLOB
);
5. NUMERIC: 用于存储日期和时间值,可以包括整数和浮点数。
CREATE TABLE example (
date_col NUMERIC,
time_col NUMERIC
);
在 SQLite 中,数据类型是灵活的,列可以存储不同类型的值。SQLite 会根据实际存储的值自动进行类型转换。例如,如果你尝试将一个整数插入到 TEXT 类型的列中,SQLite 会自动将其转换为文本。
除了上述基本数据类型,SQLite 还支持其他一些特殊的数据类型和列约束,例如:
- BOOLEAN: 在 SQLite 中没有专门的 BOOLEAN 数据类型,但你可以使用 INTEGER 表示布尔值,0 表示假,非零值表示真。
- DATE 和 TIME: 可以使用 NUMERIC 类型存储日期和时间值,也可以使用 TEXT 或 INTEGER 类型。
- PRIMARY KEY: 用于定义主键列,可以是 INTEGER 或 TEXT 类型。
- AUTOINCREMENT: 用于自动增长的列,通常与 INTEGER 类型的主键一起使用。
以下是一个包含多种数据类型和列约束的表的示例:
CREATE TABLE products (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
price REAL,
stock INTEGER DEFAULT 0,
description TEXT,
release_date NUMERIC
);
在这个示例中,id 是一个自增的主键列,name 是文本类型,price 是浮点数类型,stock 是整数类型,并设置了默认值,description 是文本类型,release_date 是日期和时间的 NUMERIC 类型。
转载请注明出处:http://www.zyzy.cn/article/detail/9138/SQLite