資料庫:綜合案例 - 商城案例表設計
阿新 • • 發佈:2021-07-28
通過對商城專案的部分表關係進行分析,完成資料庫表的設計
create database db6 character set utf8;
2. 建立使用者表
CREATE TABLE user ( uid varchar(32) PRIMARY KEY, -- 使用者ID username varchar(20) , -- 使用者名稱 password varchar(20) , -- 密碼 telephone varchar(20) , -- 電話 birthday date , --生日 sex varchar(10) -- 性別 );
INSERT INTO USER VALUES ('001','渣渣輝','123456','13511112222','2015-11-04','男'), ('002','藥水哥','123456','13533334444','1990-02-01','男'), ('003','大明白','123456','13544445555','2015-11-03','男'), ('004','長海','123456','13566667777','2000-02-01','男'), ('005','喬杉','123456','13588889999','2000-02-01','男');
CREATE TABLE orders ( oid varchar(32) PRIMARY KEY, -- 訂單id ordertime datetime , -- 下單時間 total double , -- 總金額 name varchar(20), -- 收貨人姓名 telephone varchar(20) , -- 電話 address varchar(30) , -- 地址 state int(11) , -- 訂單狀態 uid varchar(32), -- 外來鍵欄位 對應使用者表id CONSTRAINTofk_0001 FOREIGN KEY (uid) REFERENCES user (uid) );
-- 插入一條訂單資料 INSERT INTO orders VALUES('order001','2019-10-11',5500,'喬杉','15512342345','皇家洗浴',0,'001');
CREATE TABLE category ( cid varchar(32) PRIMARY KEY, cname varchar(20) );
INSERT INTO `category` VALUES ('1','手機數碼'),('2','電腦辦公'),('3','運動鞋服'),('4','圖書音像');
CREATE TABLE product ( pid varchar(32) PRIMARY KEY, -- 商品id pname varchar(50) , -- 商品名稱 price double, -- 商品價格 pdesc varchar(255), -- 商品描述 pflag int(11) , -- 商品狀態 1 上架 ,0 下架 cid varchar(32) , -- 外來鍵對應 分類表id KEY sfk_0001 (cid), CONSTRAINT sfk_0001 FOREIGN KEY (cid) REFERENCES category (cid) );
INSERT INTO `product` VALUES ('1','小米6',2200,'小米 移動聯通電信4G手機 雙卡雙待',0,'1'), ('2','華為Mate9',2599,'華為 雙卡雙待 高清大屏',0,'1'), ('3','OPPO11',3000,'移動聯通 雙4G手機',0,'1'), ('4','華為榮耀',1499,'3GB記憶體標準版 黑色 移動4G手機',0,'1'), ('5','華碩臺式電腦',5000,'爆款直降,滿千減百',0,'2'), ('6','MacBook',6688,'128GB 快閃記憶體',0,'2'), ('7','ThinkPad',4199,'輕薄系列1)',0,'2'), ('8','聯想小新',4499,'14英寸超薄膝上型電腦',0,'2'), ('9','李寧音速6',500,'實戰籃球鞋',0,'3'), ('10','AJ11',3300,'喬丹實戰系列',0,'3'), ('11','AJ1',5800,'精神小夥系列',0,'3');
-- 訂單項表 CREATE TABLE orderitem ( itemid VARCHAR(32) PRIMARY KEY, -- 訂單項ID pid VARCHAR(32), -- 外來鍵 對應商品表 id oid VARCHAR(32), -- 外來鍵 對應訂單表 id KEY fk_0001 (pid), KEY fk_0002 (oid), CONSTRAINT fk_0001 FOREIGN KEY (pid) REFERENCES product (pid), CONSTRAINT fk_0002 FOREIGN KEY (oid) REFERENCES orders (oid) );
-- 向中間表中插入兩條資料 INSERT INTO orderitem VALUES('item001','1','order001'); INSERT INTO orderitem VALUES('item002','11','order001');