SQLite 创建用户表和智能家居状态表教程

本教程将引导您使用 SQLite 创建用户表和智能家居状态表,并通过外键建立一对一关系,实现一个用户对应一个智能家居状态表的结构。

1. 创建用户表


上述代码将创建一个名为 'users' 的表,包含以下字段:

- `uid`: 用户ID,整型,主键,自动递增。
- `username`: 用户名,可变长度字符串,最大长度为10个字符。
- `passwd`: 密码,可变长度字符串,最大长度为10个字符。

### 2. 插入用户数据

```sqlINSERT INTO users (username, passwd) VALUES ('AA', '123456');INSERT INTO users (username, passwd) VALUES ('B', '121212');

这两行代码将向 'users' 表中插入两条用户数据。

### 3. 创建智能家居状态表 

```sqlCREATE TABLE IF NOT EXISTS Status (    sid INTEGER PRIMARY KEY AUTOINCREMENT,    uid INTEGER,    device_name varchar(10),    device_state varchar(10),    value REAL,    mode varchar(10),    FOREIGN KEY (uid) REFERENCES users (uid));

 这段代码将创建一个名为 'Status' 的表,包含以下字段:

- `sid`: 状态ID,整型,主键,自动递增。
- `uid`: 用户ID,整型,外键,关联 'users' 表的 'uid' 字段。
- `device_name`: 设备名称,可变长度字符串,最大长度为10个字符。
- `device_state`: 设备状态,可变长度字符串,最大长度为10个字符。
- `value`:  值,浮点型。
- `mode`: 模式,可变长度字符串,最大长度为10个字符。

 `FOREIGN KEY (uid) REFERENCES users (uid)` 语句定义了外键约束,确保 'Status' 表中的每个 'uid' 值都必须存在于 'users' 表的 'uid' 字段中,从而实现了一对一的关系。

### 4. 插入智能家居状态数据

```sqlINSERT INTO Status(uid, device_name, device_state, value, mode) VALUES (1, 'Curtains', 'On', 1.1, '睡眠模式');

这行代码将向 'Status' 表中插入一条数据,并将 'uid' 设置为 1,对应 'users' 表中的用户 'AA'。

### 总结

通过以上步骤,您已经成功创建了用户表和智能家居状态表,并通过外键建立了一对一关系。您可以根据实际需求修改表结构和数据,构建更复杂的数据库应用。
SQLite 创建用户表和智能家居状态表教程

原文地址: https://www.cveoy.top/t/topic/fAv4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录