创建关系数据库表是数据库设计的核心步骤,下面从基本概念 → 设计原则 → 创建方式(SQL + 示例) → 常见注意事项给你一个完整说明。
关系数据库由**表(Table)**组成,每个表包含:
CREATE TABLE 表名 (
列名 数据类型 [约束],
列名 数据类型 [约束],
...
);
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) NOT NULL UNIQUE,
email VARCHAR(100) NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE orders (
id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT NOT NULL,
order_no VARCHAR(50) NOT NULL,
amount DECIMAL(10,2),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id)
);
CREATE TABLE products (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100),
price DECIMAL(10,2)
);
CREATE TABLE order_items (
order_id INT,
product_id INT,
quantity INT,
PRIMARY KEY (order_id, product_id),
FOREIGN KEY (order_id) REFERENCES orders(id),
FOREIGN KEY (product_id) REFERENCES products(id)
);
INT:整数VARCHAR(n):字符串DECIMAL:精确小数DATETIME:时间TEXT:长文本BOOLEAN:布尔PRIMARY KEY:主键NOT NULL:不能为空UNIQUE:唯一FOREIGN KEY:外键DEFAULT:默认值AUTO_INCREMENT:自增(MySQL)✅ 表名、字段名清晰易懂
✅ 每张表有主键
✅ 避免冗余字段(符合范式)
✅ 外键保证数据一致性
✅ 不为 NULL 的字段尽量加 NOT NULL
如果你有具体业务场景(如博客、商城、管理系统),我可以帮你直接设计表结构。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。