接下来,将要进行我学习一个SSH网上商城的笔记,前面的需求分析已经忽略,直接开始数据库设计的学习
基本上一个模块就对应一个表:①用户模块②一级分类③二级分类④商品表⑤订单表⑥订单项表⑦后台登录用户表
创建数据库shop:CREATE DATABASE shop;
删除数据库:DROP DATABASE database_name;
①用户表
用户序号 | 用户名 | 密码 | 真实姓名 | 邮箱 | 地址 | 电话 | 用户状态 | 激活码(0为未激活,1为已激活) | |
主码 |
②一级分类
一级分类序号 | 一级分类名称 |
主码 |
③二级分类
二级分类序号 | 二级分类名称 | 一级分类序号 |
外码 | ||
主码 |
④商品表
商品序号 | 商品名称 | 商品商城价格 | 商品市场价格 | 商品描述 | 商品图片(路径) | 二级分类序号 |
外码 | ||||||
主码 |
⑤订单表
订单序号 | 订单金额 | 订单状态 | 订单地址 | 订单电话 | 订单收货人 | 用户序号 |
外码 | ||||||
主码 |
⑥订单项表
订单项序号 | 商品序号 | 订单序号 | 数量 | 小计 |
外码 | 外码 | |||
主码 |
⑦后台登录用户表
用户名 | 密码 |
主码 |
mysql 语句实现
DROP TABLE IF EXISTS `adminuser`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `adminuser` (
`uid` INT(11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(255) DEFAULT NULL,
`password` VARCHAR(255) DEFAULT NULL,
PRIMARY KEY (`uid`)
) ENGINE=INNODB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `category`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `category` (
`cid` INT(11) NOT NULL AUTO_INCREMENT,
`cname` VARCHAR(255) DEFAULT NULL,
PRIMARY KEY (`cid`)
) ENGINE=INNODB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `categorysecond`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `categorysecond` (
`csid` INT(11) NOT NULL AUTO_INCREMENT,
`csname` VARCHAR(255) DEFAULT NULL,
`cid` INT(11) DEFAULT NULL,
PRIMARY KEY (`csid`),
KEY `FK936FCAF21DB1FD15` (`cid`),
CONSTRAINT `FK936FCAF21DB1FD15` FOREIGN KEY (`cid`) REFERENCES `category` (`cid`)
) ENGINE=INNODB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `orderitem`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `orderitem` (
`itemid` INT(11) NOT NULL AUTO_INCREMENT,
`count` INT(11) DEFAULT NULL,
`subtotal` DOUBLE DEFAULT NULL,
`pid` INT(11) DEFAULT NULL,
`oid` INT(11) DEFAULT NULL,
PRIMARY KEY (`itemid`),
KEY `FKE8B2AB6166C01961` (`oid`),
KEY `FKE8B2AB6171DB7AE4` (`pid`),
KEY `FKE8B2AB6140ACF87A` (`oid`),
CONSTRAINT `FKE8B2AB6140ACF87A` FOREIGN KEY (`oid`) REFERENCES `orders` (`oid`),
CONSTRAINT `FKE8B2AB6171DB7AE4` FOREIGN KEY (`pid`) REFERENCES `product` (`pid`)
) ENGINE=INNODB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `orders`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `orders` (
`oid` INT(11) NOT NULL AUTO_INCREMENT,
`total` DOUBLE DEFAULT NULL,
`ordertime` DATETIME DEFAULT NULL,
`state` INT(11) DEFAULT NULL,
`name` VARCHAR(20) DEFAULT NULL,
`phone` VARCHAR(20) DEFAULT NULL,
`addr` VARCHAR(50) DEFAULT NULL,
`uid` INT(11) DEFAULT NULL,
PRIMARY KEY (`oid`),
KEY `FKC3DF62E5AA3D9C7` (`uid`),
CONSTRAINT `FKC3DF62E5AA3D9C7` FOREIGN KEY (`uid`) REFERENCES `user` (`uid`)
) ENGINE=INNODB AUTO_INCREMENT=9004 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `product`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `product` (
`pid` INT(11) NOT NULL AUTO_INCREMENT,
`pname` VARCHAR(255) DEFAULT NULL,
`market_price` DOUBLE DEFAULT NULL,
`shop_price` DOUBLE DEFAULT NULL,
`image` VARCHAR(255) DEFAULT NULL,
`pdesc` VARCHAR(255) DEFAULT NULL,
`is_hot` INT(11) DEFAULT NULL,
`pdate` DATETIME DEFAULT NULL,
`csid` INT(11) DEFAULT NULL,
PRIMARY KEY (`pid`),
KEY `FKED8DCCEFB9B74E02` (`csid`),
CONSTRAINT `FKED8DCCEFB9B74E02` FOREIGN KEY (`csid`) REFERENCES `categorysecond` (`csid`)
) ENGINE=INNODB AUTO_INCREMENT=80 DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS `user`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `user` (
`uid` INT(11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(255) DEFAULT NULL,
`password` VARCHAR(255) DEFAULT NULL,
`name` VARCHAR(255) DEFAULT NULL,
`email` VARCHAR(255) DEFAULT NULL,
`phone` VARCHAR(255) DEFAULT NULL,
`addr` VARCHAR(255) DEFAULT NULL,
`state` INT(11) DEFAULT NULL,
`code` VARCHAR(64) DEFAULT NULL,
PRIMARY KEY (`uid`)
) ENGINE=INNODB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;