首页  > 数据库 > mysql数据库规划实例

mysql数据库规划实例

数据库 2024-12-20 6

MySQL数据库规划实例能够依据不同的使用场景和需求来规划。以下是一个简略的实例,假定咱们需求规划一个简略的博客体系,包含用户、文章和谈论三个实体。

1. 用户表(users): user_id(主键):用户仅有标识 username:用户名 password:暗码 email:邮箱地址 created_at:创立时刻

2. 文章表(articles): article_id(主键):文章仅有标识 user_id(外键):相关用户表,表明文章的作者 title:文章标题 content:文章内容 created_at:创立时刻 updated_at:更新时刻

3. 谈论表(comments): comment_id(主键):谈论仅有标识 article_id(外键):相关文章表,表明谈论所属的文章 user_id(外键):相关用户表,表明谈论的作者 content:谈论内容 created_at:创立时刻

下面是相应的MySQL创立表的SQL句子:

```sqlCREATE TABLE users NOT NULL, password VARCHAR NOT NULL, email VARCHAR NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMPqwe2;

CREATE TABLE articles NOT NULL, content TEXT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, FOREIGN KEY REFERENCES usersqwe2;

CREATE TABLE comments REFERENCES articles, FOREIGN KEY REFERENCES usersqwe2;```

MySQL数据库规划实例:构建一个简略的在线书店

一、需求剖析

用户注册与登录

图书阅读与查找

购物车办理

订单办理

谈论与评分

二、数据库规划准则

在进行数据库规划时,咱们需求遵从以下准则:

榜首范式(1NF):保证表中每个字段都是不可分割的原子值。

第二范式(2NF):保证表中所有非主特点都彻底依靠于主键。

第三范式(3NF):保证表中不存在传递依靠,即非主特点不依靠于其他非主特点。

三、数据库表规划

依据需求剖析,咱们能够规划以下数据库表:

1. 用户表(users)

用户表存储用户的基本信息,包含用户ID、用户名、暗码、邮箱、注册时刻等。

CREATE TABLE users (

user_id INT AUTO_INCREMENT PRIMARY KEY,

username VARCHAR(50) NOT NULL,

password VARCHAR(50) NOT NULL,

email VARCHAR(100),

register_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP

2. 图书表(books)

图书表存储图书的基本信息,包含图书ID、书名、作者、出书社、出书时刻、价格、库存等。

CREATE TABLE books (

book_id INT AUTO_INCREMENT PRIMARY KEY,

title VARCHAR(100) NOT NULL,

author VARCHAR(50),

publisher VARCHAR(50),

publish_time DATE,

price DECIMAL(10, 2),

stock INT

3. 购物车表(carts)

购物车表存储用户在购物车中的图书信息,包含购物车ID、用户ID、图书ID、数量等。

CREATE TABLE carts (

cart_id INT AUTO_INCREMENT PRIMARY KEY,

user_id INT,

book_id INT,

quantity INT,

FOREIGN KEY (user_id) REFERENCES users(user_id),

FOREIGN KEY (book_id) REFERENCES books(book_id)

4. 订单表(orders)

订单表存储用户的订单信息,包含订单ID、用户ID、图书ID、数量、订单时刻、订单状况等。

CREATE TABLE orders (

order_id INT AUTO_INCREMENT PRIMARY KEY,

user_id INT,

book_id INT,

quantity INT,

order_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

status VARCHAR(20),

FOREIGN KEY (user_id) REFERENCES users(user_id),

FOREIGN KEY (book_id) REFERENCES books(book_id)

5. 谈论表(comments)

谈论表存储用户对图书的谈论信息,包含谈论ID、用户ID、图书ID、谈论内容、谈论时刻等。

CREATE TABLE comments (

comment_id INT AUTO_INCREMENT PRIMARY KEY,

user_id INT,

book_id INT,

content TEXT,

comment_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

FOREIGN KEY (user_id) REFERENCES users(user_id),

FOREIGN KEY (book_id) REFERENCES books(book_id)

本文经过构建一个简略的在线书店实例,展现了MySQL数据库规划的基本准则和过程。在实践项目中,数据库规划需求依据详细需求进行调整和优化。期望本文能对您在数据库规划方面有所协助。


Copyright © 2016-2028零基础教程 Rights Reserved. XML地图