To ensure data integrity, four ways can be used - constraints, rules, default values, triggers. The question asks about integrity constraints in CREATE TABLE, which include: Primary key (PRIMARY KEY), Foreign key (FOREIGN KEY), Unique (UNIQUE), Not null (NOT NULL), Check (CHECK), Default (DEFAULT), Auto increment (AUTO_INCREMENT).
正确答案是:A: NOT NULL B:PRIMARY KEY C:DEFAULT D: UNIQUE
专业分析如下:
1. **NOT NULL**:该约束用于确保列不能存储NULL值。这意味着每一行在该列中必须有一个值。
2. **PRIMARY KEY**:该约束用于唯一标识表中的每一行。一个表只能有一个主键,主键列中的值必须唯一且不能为NULL。
3. **DEFAULT**:该约束用于为列指定一个默认值。如果在插入数据时没有提供该列的值,则使用默认值。
4. **UNIQUE**:该约束用于确保列中的所有值都是唯一的。与PRIMARY KEY不同的是,一个表可以有多个UNIQUE约束。
这些约束都可以在CREATE TABLE语句中实现,以确保数据的完整性和一致性。示例如下:
```sql
CREATE TABLE example_table (
id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
age INT DEFAULT 18,
email VARCHAR(100) UNIQUE
);
```
在上述示例中:
- `id`列被定义为主键,确保每一行有唯一的标识。
- `name`列被定义为NOT NULL,确保每一行都有一个名称。
- `age`列被定义了一个默认值18,如果插入时没有提供值,则默认使用18。
- `email`列被定义为UNIQUE,确保每一行的电子邮件地址都是唯一的。