MySQL多用戶商城表設計是一個極其重要的任務,對于商城的運行和維護都至關重要。下面我們來看一下如何設計MySQL多用戶商城表。
一、用戶表設計:
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用戶ID', `username` varchar(20) NOT NULL COMMENT '用戶名', `password` varchar(32) NOT NULL COMMENT '密碼', `email` varchar(50) NOT NULL COMMENT '郵箱', `phone` varchar(20) NOT NULL COMMENT '手機號碼', `createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`), UNIQUE KEY `email` (`email`), UNIQUE KEY `phone` (`phone`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用戶表';
二、商品表設計:
CREATE TABLE `goods` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '商品ID', `name` varchar(50) NOT NULL COMMENT '商品名稱', `categoryId` int(11) NOT NULL COMMENT '分類ID', `price` decimal(10,2) NOT NULL COMMENT '商品價格', `stock` int(11) NOT NULL COMMENT '商品庫存', `image` varchar(200) NOT NULL COMMENT '商品圖片', `description` varchar(2000) DEFAULT NULL COMMENT '商品描述', `createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (`id`), KEY `categoryId` (`categoryId`), CONSTRAINT `categoryId` FOREIGN KEY (`categoryId`) REFERENCES `category` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='商品表';
三、訂單表設計:
CREATE TABLE `order` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '訂單ID', `userId` int(11) NOT NULL COMMENT '用戶ID', `orderNo` varchar(30) NOT NULL COMMENT '訂單號', `totalPrice` decimal(10,2) NOT NULL COMMENT '訂單總金額', `createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間', PRIMARY KEY (`id`), UNIQUE KEY `orderNo` (`orderNo`), KEY `userId` (`userId`), CONSTRAINT `userId` FOREIGN KEY (`userId`) REFERENCES `user` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='訂單表';
四、訂單詳情表設計:
CREATE TABLE `orderDetail` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '訂單詳情ID', `orderId` int(11) NOT NULL COMMENT '訂單ID', `goodsId` int(11) NOT NULL COMMENT '商品ID', `goodsName` varchar(50) NOT NULL COMMENT '商品名稱', `goodsPrice` decimal(10,2) NOT NULL COMMENT '商品價格', `goodsCount` int(11) NOT NULL COMMENT '商品數量', PRIMARY KEY (`id`), KEY `orderId` (`orderId`), KEY `goodsId` (`goodsId`), CONSTRAINT `orderId` FOREIGN KEY (`orderId`) REFERENCES `order` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, CONSTRAINT `goodsId` FOREIGN KEY (`goodsId`) REFERENCES `goods` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='訂單詳情表';
以上是MySQL多用戶商城表設計的整體結構,包含了用戶表、商品表、訂單表和訂單詳情表。在實際開發中,根據具體需求,可以對表進行適當擴展和修改,使得商城的功能更加完善。
下一篇css角標漢子