数据类型与建表

56.3 数据类型与建表

SQLite 常用类型:INTEGER(整数)、REAL(浮点)、TEXT(文本)、BLOB(二进制)、NULL。

PRIMARY KEY 主键唯一;AUTOINCREMENT 让 id 自动递增。

NOT NULL 不允许空值;UNIQUE 不允许重复;DEFAULT 设置默认值。

  • INTEGER PRIMARY KEY AUTOINCREMENT — 自增 id
  • TEXT — 姓名、备注等字符串
  • REAL — 成绩、价格等小数
  • DEFAULT — 插入时可省略该列

创建学生表

import sqlite3

sql = '''
CREATE TABLE IF NOT EXISTS students (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    gender TEXT DEFAULT '未知',
    score REAL NOT NULL,
    created_at TEXT DEFAULT (datetime('now','localtime'))
)
'''
with sqlite3.connect('school.db') as conn:
    conn.execute(sql)
print('students 表已就绪')