作为网站的作者,对于“J2EE 开发购物网站 经验篇 - 建表”的完整攻略,我将从以下几个方面进行详细讲解:
- 确定数据库表的设计
- 在MySQL数据库中创建表格
- 表格字段的详解
- 示例说明
1. 确定数据库表的设计
在设计购物网站数据库表时,需要先确定需要存储的数据,以及各个数据之间的关系。一般来说,购物网站需要存储用户信息、商品信息、订单信息等数据。具体来说,我们可以设计以下表格:
- 用户表(user):存储用户信息,如用户名、密码、联系方式等。
- 商品表(product):存储商品信息,如商品名称、价格、描述等。
- 购物车表(cart):存储用户加入购物车的商品信息。
- 订单表(order):存储用户的订单信息,如订单编号、订单总价、订单状态等。
2. 在MySQL数据库中创建表格
在MySQL数据库中创建表格,可以使用以下代码:
CREATE TABLE user (
id INT(11) NOT NULL AUTO_INCREMENT,
username VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL,
email VARCHAR(50) NOT NULL,
phone VARCHAR(20) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE product (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
price DECIMAL(10,2) NOT NULL,
description VARCHAR(200) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE cart (
id INT(11) NOT NULL AUTO_INCREMENT,
user_id INT(11) NOT NULL,
product_id INT(11) NOT NULL,
quantity INT(11) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (user_id) REFERENCES user(id),
FOREIGN KEY (product_id) REFERENCES product(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE order (
id INT(11) NOT NULL AUTO_INCREMENT,
user_id INT(11) NOT NULL,
total_price DECIMAL(10,2) NOT NULL,
status VARCHAR(20) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (user_id) REFERENCES user(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
3. 表格字段的详解
-
用户表(user):
-
id: 用户ID,整型,自增长,主键。
- username: 用户名,字符型,长度不超过20个字符,非空。
- password: 密码,字符型,长度不超过20个字符,非空。
- email: 邮箱,字符型,长度不超过50个字符,非空。
-
phone: 联系方式,字符型,长度不超过20个字符,非空。
-
商品表(product):
-
id: 商品ID,整型,自增长,主键。
- name: 商品名称,字符型,长度不超过50个字符,非空。
- price: 商品价格,十进制类型,长度为10,小数位为2,非空。
-
description: 商品描述,字符型,长度不超过200个字符,非空。
-
购物车表(cart):
-
id: 购物车ID,整型,自增长,主键。
- user_id: 用户ID,整型,非空,外键,参照用户表的主键id。
- product_id: 商品ID,整型,非空,外键,参照商品表的主键id。
-
quantity: 商品数量,整型,非空。
-
订单表(order):
-
id: 订单ID,整型,自增长,主键。
- user_id: 用户ID,整型,非空,外键,参照用户表的主键id。
- total_price: 订单总价,十进制类型,长度为10,小数位为2,非空。
- status: 订单状态,字符型,长度不超过20个字符,非空。
4. 示例说明
以用户表为例,我们来详细说明下表格的各个字段:
CREATE TABLE user (
id INT(11) NOT NULL AUTO_INCREMENT,
username VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL,
email VARCHAR(50) NOT NULL,
phone VARCHAR(20) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- id: 用户ID,整型,自增长,主键。每个用户都有独一无二的ID。
- username: 用户名,字符型,长度不超过20个字符,非空。用户注册时需要填写用户名。
- password: 密码,字符型,长度不超过20个字符,非空。用户注册时需要填写密码。
- email: 邮箱,字符型,长度不超过50个字符,非空。用户注册时需要填写邮箱。
- phone: 联系方式,字符型,长度不超过20个字符,非空。用户注册时需要填写联系方式。
以上是关于“J2EE 开发购物网站 经验篇 - 建表”的完整攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:J2EE 开发购物网站 经验篇 – 建表 - Python技术站