一個電子商城分析(瘋購)
數據庫:crazybuy;
1 | 商品類別 | crazybuy_ product_ category |
2 | 商品 | crazybuy_ product |
3 | 用戶 | crazybuy_ user |
4 | 訂單 | crazybuy_ order |
5 | 訂單詳情 | crazybuy_ order_detail |
6 | 評論 | crazybuy_comment |
7 | 廣告、新聞 | crazybuy_news |
購物車:
表字段:提供給你的,分析字段。
DROPTABLE IF EXISTS crazybuy_product_category;
createtable crazybuy_product_category(
epc_id int primary key auto_increment,
epc_name varchar(20) not null,
epc_parent_id int,
constraint fk_epc_parent_id foreign key(epc_parent_id) references crazybuy_product_category (epc_id)
);
DROP TABLE IF EXISTS crazybuy_product_category; create table crazybuy_product_category( epc_id int primary key auto_increment, epc_name varchar(20) not null, epc_parent_id int, constraint fk_epc_parent_id foreign key (epc_parent_id) references crazybuy_product_category (epc_id) );
insert into crazybuy_product_category values(-1,'ROOT',null); insert into crazybuy_product_category values(null,'圖書影像',-1); insert into crazybuy_product_category values(null,'手機數碼',-1); insert into crazybuy_product_category values(null,'服飾/內衣',-1); insert into crazybuy_product_category values(null,'珠寶/飾品',-1); insert into crazybuy_product_category values(null,'小說',1); insert into crazybuy_product_category values(null,'教材',1); insert into crazybuy_product_category values(null,'其他書籍',1); insert into crazybuy_product_category values(null,'音樂',1); insert into crazybuy_product_category values(null,'手機',2); insert into crazybuy_product_category values(null,'相機',2); insert into crazybuy_product_category values(null,'數碼配件',2); insert into crazybuy_product_category values(null,'電腦',2); insert into crazybuy_product_category values(null,'品牌女裝',3); insert into crazybuy_product_category values(null,'精品男裝',3); insert into crazybuy_product_category values(null,'內衣',3); insert into crazybuy_product_category values(null,'時尚飾品',4); insert into crazybuy_product_category values(null,'手錶',4); insert into crazybuy_product_category values(null,'太陽鏡',4); select * from crazybuy_product_category;
DROP TABLE IF EXISTS crazybuy_product; create table crazybuy_product( ep_id int primary key auto_increment, ep_name varchar(40) not null COMMENT '商品名稱', ep_description varchar(200) COMMENT '商品描述', ep_price decimal(10,2) not null COMMENT '商品價格', ep_stock decimal(10,0) not null COMMENT '商品庫存', ep_status decimal(6,0) default 1 COMMENT '商品狀態,-1.禁用,1.普通,2.特價,3.熱賣', epc_id int not null COMMENT '大類別 外鍵', epc_child_id int COMMENT '小類別 外鍵', ep_file_name varchar(200) not null COMMENT '圖片', constraint fk_epc_id foreign key (epc_id) references crazybuy_product_category (epc_id), constraint fk_epc_child_id foreign key (epc_child_id) references crazybuy_product_category (epc_id) );
insert into crazybuy_product values(null,'MIUI/小米 2A(MI2A)','小米 型號:2A(MI2A) 上市時間:2013年 13年上市月份:4月 網絡類型:沃-聯通',1547.00,990,2,2,9,'images/product/1.jpg'); insert into crazybuy_product values(null,'Samsung/三星 I9100G','I9100G 品牌:三星 上市時間:2011年 11年上市月份:12月 網絡類型:沃-聯通',1269.00,990,3,2,9,'images/product/3.jpg'); insert into crazybuy_product values(null,'Sony/索尼 LT26ii','LT26ii 品牌:索尼 上市時間:2012年 12年上市月份:8月 網絡類型:沃-聯通',1721.00,990,1,2,9,'images/product/4.jpg'); insert into crazybuy_product values(null,'Samsung/三星 I9100','i9100 galaxy s2 品牌:三星 上市時間:2011年 11年上市月份:7月',1684.00,990,1,2,9,'images/product/5.jpg'); insert into crazybuy_product values(null,'Huawei/華爲 C8813D ','上市時間:2013年13年上市月份:2月',1028.00,990,1,2,9,'images/product/6.jpg'); insert into crazybuy_product values(null,'Samsung/三星 I9082','I9082 品牌:三星 上市時間:2012年 12年上市月份:12月 網絡類型:沃-聯通',889.00,990,2,2,9,'images/product/7.jpg'); insert into crazybuy_product values(null,'Sony/索尼 LT26w Xperia','LT26W 品牌:索尼 上市時間:2012年 12年上市月份:8月 網絡類型:GSM/WCDMA',1769.00,990,1,2,9,'images/product/8.jpg'); insert into crazybuy_product values(null,'Sony Ericsson/索尼愛立信','LT18i/Xperia Arc S 品牌:索尼愛立信 上市時間:2011年 11年上市月份:8月',1317.00,990,1,2,9,'images/product/9.jpg'); insert into crazybuy_product values(null,'Lenovo/聯想 S890','S890 品牌:聯想 上市時間:2012年 12年上市月份:11月 網絡類型:沃-聯通',1049.00,990,1,2,9,'images/product/10.jpg'); insert into crazybuy_product values(null,'HTC T329D','品牌:HTC HTC型號:T329D 上市時間:2012年 12年上市月份:12月 網絡類型:雙模',1120.00,990,1,2,9,'images/product/11.jpg'); insert into crazybuy_product values(null,'LG F100','F100 品牌:LG 上市時間:2012年 12年上市月份:7月 網絡類型:沃-聯通 主屏尺',1091.00,990,1,2,9,'images/product/12.png'); insert into crazybuy_product values(null,'Huawei/華爲 A199','A199 品牌:華爲 上市時間:2013年 13年上市月份:4月 網絡類型:雙模',1838.00,990,3,2,9,'images/product/13.jpg'); insert into crazybuy_product values(null,'Motorola/摩托羅拉 XT788','xt788 品牌:摩托羅拉 上市時間:2012年 12年上市月份:10月 網絡類型',1112.00,990,1,2,9,'images/product/14.jpg'); insert into crazybuy_product values(null,'Samsung/三星 Galaxy S 2 LTE HD','品牌:三星 上市時間:2011年 11年上市月份:11月',1498.00,990,1,2,9,'images/product/15.jpg'); insert into crazybuy_product values(null,'OPPO U705T','品牌:OPPO OPPO型號:U705T 上市時間:2012年 12年上市月份:12月 網絡類型:G3',1498.00,990,1,2,9,'images/product/16.jpg'); insert into crazybuy_product values(null,'Coolpad/酷派 8730','品牌:酷派 上市時間:2013年 網絡類型:G3-移動 主屏尺寸:5.0英寸',1432.00,990,3,2,9,'images/product/17.jpg'); insert into crazybuy_product values(null,'Sony/索尼 LT26I Xperia S','品牌:索尼 上市時間:2012年 12年上市月份:3月 網絡類型:沃-聯通',1906.00,990,1,2,9,'images/product/18.jpg'); insert into crazybuy_product values(null,'Motorola/摩托羅拉 XT910','XT910 品牌:摩托羅拉 上市時間:2011年 11年上市月份:11月 網絡類型',1660.00,990,1,2,9,'images/product/19.jpg'); insert into crazybuy_product values(null,'LG LU6200 ','P930/Optimus LTE 品牌:LG 上市時間:2011年 11年上市月份:10月 網絡類型',1229.00,990,1,2,9,'images/product/20.jpg');
-- 21 - 30(飾品) insert into crazybuy_product values(null,'JPF 925純銀項鍊','吊墜短款鎖骨首飾 韓版銀飾品時尚',58.01,850,2,4,16,'images/product/21.jpg'); insert into crazybuy_product values(null,'艾念正品 925純銀手鍊','女士時尚韓版銀首飾品,名師設計,超顯氣質、品味的項鍊',69.62,850,1,4,16,'images/product/22.jpg'); insert into crazybuy_product values(null,'銀千惠925純銀手鍊 韓版時尚','心形首飾 生日禮物 可刻字',99.00,850,1,4,16,'images/product/23.jpg'); insert into crazybuy_product values(null,'樂天韓國進口飾品','雪紡玫瑰花蕾絲髮飾頭飾韓版韓式發繩髮圈',31.00,850,3,4,16,'images/product/24.jpg'); insert into crazybuy_product values(null,'小天鵝水晶項鍊 ','女 短款 韓國 首飾 生日禮物',58.01,850,2,4,16,'images/product/25.jpg'); insert into crazybuy_product values(null,'茗琳正品採用施華洛世奇水晶項鍊','女短款鎖骨 韓版 時尚 韓國飾品',3109.01,850,1,4,16,'images/product/26.jpg'); insert into crazybuy_product values(null,'伊泰蓮娜飾品批發','日韓 可愛 甜美 光板鏡面愛心 項鍊 送女友',15.50,850,1,4,16,'images/product/27.jpg'); insert into crazybuy_product values(null,'歐美不規則幾何裝飾項鍊鎖骨鏈','韓國衣服配飾短款女時尚頸鍊飾品',19.90,850,1,4,16,'images/product/28.jpg'); insert into crazybuy_product values(null,'飾品可愛滿鑽五角星無耳洞耳環','飾品',14.09,850,1,4,16,'images/product/29.jpg'); insert into crazybuy_product values(null,'珍珠軟鏈韓式短髮新娘頭飾套裝','結婚額飾品配婚紗',39.00,850,1,4,16,'images/product/30.jpg'); -- 31 - 40(精品男裝) insert into crazybuy_product values(null,'2件79包郵 凡兔男士短袖t恤','由於這款T恤採用的是吊染工藝,所以建議親在洗滌過程中請用冷水洗滌,請勿用溫水,或者彩漂洗滌!',55.00,750,1,3,14,'images/product/31.jpg'); insert into crazybuy_product values(null,'愛立登中老年男裝短袖T恤衫','高端的設計,完美的穿着效果,充分展現中老年男性的魅力!夏天單穿,秋冬打底穿,一年四季都可穿着,商務百搭,100%實拍,保證您收到貨比照片更好!',49.00,750,1,3,14,'images/product/32.jpg'); insert into crazybuy_product values(null,'夢特嬌2013新款男裝短袖T恤','錦標,常規袖絲含量95%以上',216.00,750,1,3,14,'images/product/33.jpg'); insert into crazybuy_product values(null,'2013夏裝新款 韓國無頭人圖案男裝','此款T恤布料採用高檔棉加萊卡的組合是夏季T恤首選,加入萊卡後的棉固色和耐洗滌性都增強了不少,不變形,不褪色,不透,不縮水。',39.00,750,1,3,14,'images/product/34.jpg'); insert into crazybuy_product values(null,'男夏裝潮男韓版修身男士短袖t恤','獨特的撞色大V領,擁有永不落伍的時尚氣場,展現出個性的潮流魅力。',55.30,750,2,3,14,'images/product/35.jpg'); insert into crazybuy_product values(null,'雁翎金甲中國風短袖T恤男士半袖','吊染,常規袖,棉質,凸顯中國文化。',59.00,750,1,3,14,'images/product/36.jpg'); insert into crazybuy_product values(null,'jerryjack男裝2013新款夏裝半袖','天然纖維擁有良好的透氣性和吸溼性,好比一件會呼吸的衣服',48.00,750,2,3,14,'images/product/37.jpg'); insert into crazybuy_product values(null,'韓黛薇 短袖t恤男韓版潮男裝','採用雙車縫製走線,平整車工緊密細緻,牢固不變,整齊簡潔',49.00,750,1,3,14,'images/product/38.jpg'); insert into crazybuy_product values(null,'夏裝英倫蘭博基尼純棉男士短袖','穿在身上就彷彿是在午後,靠在藤椅,任陽光洋洋散散的打在身上。',58.00,750,1,3,14,'images/product/39.jpg'); insert into crazybuy_product values(null,'新款休閒夏裝男短袖男士立領T恤','壓花,勁拼,純色,寬鬆型,含棉量50%-69%青少年地 最佳選擇。',30.00,750,1,3,14,'images/product/40.jpg'); -- 41 - 60(圖書) insert into crazybuy_product values(null,'暢銷讀物小小孩影院早教書','採用最尖端的印刷工藝和材料,導致我們的產品成本比其他品牌更高!網上還有一些便宜劣質童書,那些和我們是完全沒有可比性的!',33.80,970,1,1,7,'images/product/41.jpg'); insert into crazybuy_product values(null,'水木樂','幼兒學習看圖書 寶寶最愛早教卡書0-3歲嬰兒早教認知卡片早教卡早教書認知卡片8本包郵',3.50,970,1,1,7,'images/product/42.jpg'); insert into crazybuy_product values(null,'寶貝晚安故事','包郵兒童書籍故事書早教童話圖書兒童正版寶寶早教書籍睡前故事',25.80,970,1,1,7,'images/product/43.jpg'); insert into crazybuy_product values(null,'365夜','兒童故事書 寶寶睡前故事書 幼兒圖書0-3歲 童話故事書 早教書 ',39.80,970,1,1,7,'images/product/44.jpg'); insert into crazybuy_product values(null,'3D立體書','早教 立體書 0-3-6歲嬰幼兒寶寶書籍兒童故事書睡前圖書4冊包郵',35.00,970,1,1,7,'images/product/45.jpg'); insert into crazybuy_product values(null,'左右腦','易讀寶 點讀筆 有聲圖書 左右腦開發 2、3.4.5.6.7歲單本價5.8折',12.00,970,1,1,7,'images/product/46.jpg'); insert into crazybuy_product values(null,'動物','滿百包郵 0-3歲寶寶撕不爛 啓蒙認知卡片 兒童圖書籍 yp091 16冊',1.00,970,0,1,7,'images/product/47.jpg'); insert into crazybuy_product values(null,'我3歲了','小紅花幼兒潛能開發我3-4-5-6歲了 兒童寶寶早教書籍 智力圖書',8.80,970,1,1,7,'images/product/48.jpg'); insert into crazybuy_product values(null,'人物','包郵 0-3歲寶寶看圖識字 啓蒙認知 嬰兒幼兒童圖書籍 早教書卡片',38.00,970,3,1,7,'images/product/49.jpg'); insert into crazybuy_product values(null,'狼來了','小小孩 經典故事① 2-3-4-5-6歲兒童幼兒寶寶早教睡前故事圖書籍',9.00,970,1,1,7,'images/product/50.jpg'); insert into crazybuy_product values(null,'我不給你','包郵0-3-6歲嬰幼兒童話故事圖書小狐狸繪本我家寶貝第1套情商管理',45.00,970,1,1,7,'images/product/51.jpg'); insert into crazybuy_product values(null,'翻一番,變一變','小紅花0-1-2-3歲寶寶圖書認知翻翻書 翻一翻變一變嬰幼兒童書籍',6.50,970,1,1,7,'images/product/52.jpg'); insert into crazybuy_product values(null,'看圖找不同','快易典有聲圖書《看圖找不同》幼兒早教有聲書點讀書',40.00,970,1,1,7,'images/product/53.jpg'); insert into crazybuy_product values(null,'我喜歡書','我喜歡書 幼兒園童小學生繪本經典批發寶寶讀物圖書012345-67歲',3.50,970,1,1,7,'images/product/54.jpg'); insert into crazybuy_product values(null,'啓蒙大卡','啓蒙大卡 撕不爛早教書 0-1歲嬰兒圖書 寶寶認知書籍正版禮盒裝',45.00,970,1,1,7,'images/product/55.jpg'); insert into crazybuy_product values(null,'恐龍','兒童小百科_恐龍圖書_幼兒書籍暢銷童書兒童百科全書 特價圖書',27.00,970,3,1,7,'images/product/56.jpg'); insert into crazybuy_product values(null,'安全','小嬰孩童書 兒童圖書幼兒大開眼界百科繪本 寶寶安全教育書讀本',4.00,970,1,1,7,'images/product/57.jpg'); insert into crazybuy_product values(null,'十萬個爲什麼','滿4本包郵嬰幼兒童十萬個爲什麼全套注音版暢銷百科全書圖書3-6歲',6.95,970,1,1,7,'images/product/58.jpg'); insert into crazybuy_product values(null,'幼兒唐詩','幼兒唐詩 寶寶早教圖書 嬰兒早教具 寶寶認知卡片 寶寶書',3.00,970,1,1,7,'images/product/59.jpg'); insert into crazybuy_product values(null,'漢語拼音','親子啓蒙書 早教翻翻書 認知卡 識字卡 幼兒圖書 早教書 漢語拼音',3.80,970,1,1,7,'images/product/60.jpg'); -- 70 - 92(品牌女裝) insert into crazybuy_product values(null,'貝蒂艾維2013夏季女裝新品韓版大碼打底衫','這是一款能創造奇蹟的寶貝!!!每5個女人看到它,就會有1位帶它回家!!!因爲它超級漂亮,還超級顯瘦!因爲它超級正品,還超級便宜!每個女人都愛它!!!',49.90,1000,1,3,13,'images/product/71.jpg'); insert into crazybuy_product values(null,'2013夏季 新款韓版女裝假兩件拼色寬鬆大碼','雅依夢品牌最新力作!韓國2013最新人氣連衣裙韓國進口版型+大牌質量=平民價格!活動期內36.8元包郵!訂單量大按付款順序排單發貨!早付款早發貨!你懂的!僅虧活動期!活動後恢復原價78元',36.80,1000,1,3,13,'images/product/72.jpg'); insert into crazybuy_product values(null,'夏季女裝新款韓版修身蕾絲雪紡連衣裙','熱賣30000件,我們一直被別人模仿,但從未被超越過,仿版橫行,請認準依然純正品購買。正品保護,實拍已經通過雲圖片認證,並保護中,請勿盜圖',99.00,1000,1,3,13,'images/product/73.jpg'); insert into crazybuy_product values(null,'女士t恤短袖2013初夏裝新款上衣半袖衣服','女士t恤短袖2013初夏裝新款上衣半袖衣服韓版純棉女裝修身白色t桖,閃耀亮片 夏裝純棉短袖女T恤',74.00,1000,1,3,13,'images/product/74.jpg'); insert into crazybuy_product values(null,'半袖女裝新款夏裝韓版初夏寬鬆短袖','掌櫃“瘋”了,只爲衝量和人氣,第一批3000件已搶光,第二批限量2000件,三天搶光,現最後一批虧本500件,賣完立刻漲價,數量有限,最後一批快搶完了,親們抓緊時間搶購!',30.00,1000,1,3,13,'images/product/75.jpg'); insert into crazybuy_product values(null,'2013夏季新款牛奶絲印花短袖V領連衣裙','每個ID限購3件,超出一件加5元郵費,以此類推,虧本沖銷量,喜歡還價的親們請繞道,見諒!',49.00,1000,1,3,13,'images/product/76.jpg'); insert into crazybuy_product values(null,'春款夏裝短袖新款雪紡袖公主連衣裙','包郵!2013春款夏裝短袖新款雪紡袖公主連衣裙雪紡女裝打底裙L935,一件包郵!只限申通快遞!',129.00,1000,1,3,13,'images/product/77.jpg'); insert into crazybuy_product values(null,'撞糖果色休閒褲超短褲女褲子夏季韓版','2013夏裝新款女裝 撞糖果色休閒褲超短褲女褲子夏季韓版熱褲裙褲',58.00,1000,1,3,13,'images/product/78.jpg'); insert into crazybuy_product values(null,'新款夏裝新品女式韓版修身上衣顯瘦','注意:價格都只是目前暫時的,後面由於要考慮推廣成本等,會陸續隨機性漲價,所以要買要提前。另外大的碼數,特別是2XL及以上的碼數用料成本是XL以下碼數的2倍還不止,所以是有2個價格,還請大碼客戶體諒 ',44.90,1000,3,3,13,'images/product/79.jpg'); insert into crazybuy_product values(null,'2013春款女裝韓版夏季新款t恤','銷量猛增,爲了更高效的發貨,本店默認圓通,申通快遞,請親們留言備註快遞,備註快遞者優先發貨!Bling女孩,店慶衝2皇冠',29.00,1000,2,3,13,'images/product/80.jpg'); insert into crazybuy_product values(null,'包郵女裝2013夏裝新款 短袖T恤','季大促推廣期,雖然虧本出售,但依然爲親們提供7天無理由退換服務,更低銷售價格,更高的服務水準,讓親買更放心。',30.00,1000,1,3,13,'images/product/81.jpg'); insert into crazybuy_product values(null,'2013夏裝卡通打底衫韓版時尚寬鬆t恤','T恤系列均爲均碼爲正常碼M左右,根據圖片上效果的修身和寬鬆不同的款式分別適合155-165身高,80-120體重的MM穿着 ',19.00,1000,3,3,13,'images/product/82.jpg'); insert into crazybuy_product values(null,'2013夏裝新款韓版女裝V領修身上衣','簡潔大方款式,是經典不敗的時尚理念。中長款鬆緊收腰設計,完美打造黃金身材比例,蕾絲飛飛袖,優雅點綴,和夏風談一場永不說再見的戀愛。',89.00,1000,2,3,13,'images/product/83.jpg'); insert into crazybuy_product values(null,'2013夏季新款韓版修身女t恤','原價60元,吐血價9.9元3件包郵,限量秒殺5萬件!現在隨便發個快遞都十幾元,本款衣服只售價9.9元5萬件賣完恢復29.9元不包郵,欲購從速!抓住機會我們用事實說話',9.90,1000,1,3,13,'images/product/84.jpg'); insert into crazybuy_product values(null,'2013夏季碎花吊帶裙圓點連衣裙夏','馬上購買,即送限量版,價值29.9元店鋪全年包郵卡(非實物卡)!',39.00,1000,3,3,13,'images/product/85.jpg'); insert into crazybuy_product values(null,'夏款女裝修身雪紡裙子連衣裙','數量有限、心動還需行動,按照親們的付款順序發貨,漲價在即先拍先發貨,限時再打折只需29.8元,送模特身上原裝腰帶還包郵!另送神祕小禮物····',29.80,1000,2,3,13,'images/product/86.jpg'); insert into crazybuy_product values(null,'韓版女裝時尚半袖修身款無袖女款T恤 ','喜歡的MM先收藏好下寶貝,過期不候!原價:78元,今日搶拍價:28元,還包郵',28.00,1000,1,3,13,'images/product/87.jpg'); insert into crazybuy_product values(null,'新款連衣裙女吊帶工字背心長裙背心裙','這款連衣裙採用的是莫代爾的面料,(*^__^*) 嘻嘻……給力吧,買了絕不後悔,不買纔會後悔噢!親們,注意了。別家110CM的都要賣到45元哦。',19.90,1000,3,3,13,'images/product/88.jpg'); insert into crazybuy_product values(null,'上衣打底衫女裝韓版t恤雪紡衫短袖','朋友休閒聚會 婚宴 派對等,讓你格外搶眼 壓倒羣芳!!同樣也是女人衣櫥裏值得收藏的一件,質量有保證,超美的限量版··珍藏版·人手必備··',39.50,1000,3,3,13,'images/product/89.jpg'); insert into crazybuy_product values(null,'2013夏季新款韓版女裝包臀短袖T恤 ','2013夏季新款韓版女裝胖MM大碼蝙蝠袖寬鬆休閒中長款包臀短袖T恤',33.00,1000,1,3,13,'images/product/90.jpg'); -- 90 - 92(太陽鏡) insert into crazybuy_product values(null,'威派男士太陽鏡男','威派A690男士偏光太陽鏡墨鏡偏光男士鋁美鏡腿司機鏡,新店開業,3折大促,此款現在僅45元秒殺,漲價是必然的,請親儘早下手,漲價了可不再少價了的哦',45.00,800,2,4,18,'images/product/91.jpg'); insert into crazybuy_product values(null,'街拍歐美復古大圓形太陽眼鏡女墨鏡','2013年度虧本促銷,市場價在:60-180元左右,包郵並配送:1、眼鏡袋 2、眼鏡布,虧本價 虧本賺吆喝!請勿再議價,謝謝您的理解!!',21.90,800,3,4,18,'images/product/92.jpg');
select * from crazybuy_product DROP TABLE IF EXISTS crazybuy_user; create table crazybuy_user( eu_user_name varchar(20) primary key COMMENT '用戶名', eu_password varchar(20) not null COMMENT '密碼', eu_actual_name varchar(20) not null COMMENT '真實姓名', eu_sex char(2) default '男' not null COMMENT '性別', eu_email varchar(20) not null COMMENT '電子郵件', eu_mobile varchar(11) not null COMMENT '電話', eu_address varchar(200) not null COMMENT '地址', eu_photo_url varchar(100) COMMENT '頭像', eu_status decimal(6,0) default 1 COMMENT '1爲普通用戶,2爲管理員' );
-- table crazybuy_user insert into crazybuy_user values('admin','admin','李明','男','[email protected]','15939923063','河南鄭州金水區','',2); insert into crazybuy_user values('zs12345','zs12345','張三','男','[email protected]','15938750383','河南鄭州金水區','',1); insert into crazybuy_user values('lucy','lucy12345','路西','女','[email protected]','13523451532','北京朝陽區','',1); insert into crazybuy_user values('tom','tom12345','湯姆','男','[email protected]','15138006548','河南鄭州二七區','',1); insert into crazybuy_user values('jack','jack12345','傑克','男','[email protected]','15939980758','上海市豐慶路','',1); select * from crazybuy_user;
--create table crazybuy_order(訂單表) DROP TABLE IF EXISTS crazybuy_order; create table crazybuy_order( eo_id int primary key auto_increment, eo_user_name varchar(20) not null, eo_user_address varchar(200) not null, eo_create_time datetime not null, eo_status decimal(6,0) not null COMMENT '1下單,2審覈通過,3配貨,4送貨中,5收貨並確認', eo_type decimal(6,0) not null COMMENT '1貨到付款,2網上支付', constraint fk_eo_user_name foreign key (eo_user_name) references crazybuy_user (eu_user_name) ); -- create table crazybuy_order_detail(訂單詳情表) DROP TABLE IF EXISTS crazybuy_order_detail; create table crazybuy_order_detail( eod_id int primary key auto_increment, eo_id int not null COMMENT '訂單id', ep_id int not null COMMENT '商品id', eod_decimal decimal(6,0) not null COMMENT '數量', constraint fk_eo_id foreign key (eo_id) references crazybuy_order (eo_id), constraint fk_ep_id foreign key (ep_id) references crazybuy_product (ep_id) ); -- create table crazybuy_news(新聞表) DROP TABLE IF EXISTS crazybuy_news; create table crazybuy_news( en_id int primary key auto_increment, en_title varchar(40) unique not null COMMENT '標題', en_content varchar(1000) not null COMMENT '內容', en_create_time datetime default now() COMMENT '創建時間' ); --create table crazybuy_comment(留言表) DROP TABLE IF EXISTS crazybuy_comment; create table crazybuy_comment( ec_id int primary key auto_increment, ec_reply varchar(200) COMMENT '回覆', ec_content varchar(200) not null COMMENT '回覆內容', ec_create_time datetime not null COMMENT '創建時間', ec_reply_time datetime COMMENT '回覆時間', ec_user_name varchar(20) not null COMMENT '用戶名', constraint fk_ec_user_name foreign key (ec_user_name) references crazybuy_user (eu_user_name) );
|
表與表之間的關聯關係
前期準備工作:搭建後臺
導入模板文件:
ctrl+s能自動格式化代碼,導包,去掉多餘的包。
1. 建實體(表與實體的對應)
1.1表名:crazybuy_ product_ category
實體名:ProductCategory
/**編號*/
private int id;
/**分類名稱*/
private String name;
/**父分類編號*/
private int parentId;
1.2表名:crazybuy_ product
實體名:Product
/**編號*/
private int id;
/**商品名*/
private String name;
/**商品描述*/
private String description;
/**單價*/
private double price;
/**庫存*/
private int stock;
/**商品狀態,-1禁用,1表示普通,2表示特價,3表示熱賣*/
private int status;
/**所屬分類id*/
private int epcId;
/**說書子分類id*/
private int epcChildId;
/**商品圖片路徑*/
private String fileName;
/**購買數量,用於購物車顯示數量*/
private int buyCount;
1.3表名:crazybuy_ user
實體名:User
/**用戶名*/
private String userName;
/** 密碼*/
private String password;
/**真實姓名*/
private String actualName;
/**性別*/
private String sex;
/**Email*/
private String email;
/**手機號*/
private String mobile;
/**住址*/
private String address;
/**頭像路徑*/
private String photoUrl;
/**狀態 1爲普通用戶 2爲管理員*/
private int status;
1.4表名:crazybuy_ order
實體名:Order
1.5表名:crazybuy_ order_detail
實體名:OrderDetail
1.6表名:crazybuy_comment
實體名:Comment
1.7表名:crazybuy_news
實體名:News
2. 寫DbUtil
3. 寫Dao
項目結構
各個接口中的方法
UserDao
package com.crazybuy.dao;
import java.util.List;
import com.crazybuy.entity.User;
/** * 用戶數據訪問層接口 * * @author 湯Emily * @version 2017-4-16 */ public interface UserDao { /** * 登陸 * * @param user * 用戶對象 * @return 用戶對象 */ public User login(User user) throws Exception;
/** * 查找用戶 * * @param user * 用戶 * @return 用戶集合對,爲null則表示未找到 */ public List<User> findUser(User user) throws Exception;
/** * 添加用戶 * * @param user * 用戶對象 * @return 受影響的行數 */ public int insert(User user) throws Exception;
/** * 驗證用戶名是否存在 * * @param userName * 用戶名 * @return */ public boolean checkUserNameIsExist(String userName) throws Exception;
/** * 獲取所有用戶 * * @return 用戶集合 */ public List<User> getUsers() throws Exception;
/** * 通過用戶名獲取用戶信息 * * @param userName * 用戶名 * @return 用戶對象 */ public User getUserByUserName(String userName) throws Exception;
/** * 更新用戶信息 * * @param user * 用戶對象 * @return true成功 false失敗 */ public boolean update(User user) throws Exception;
/** * 刪除一個用戶 * * @param userName * 用戶名 * @return true成功 false失敗 */ public boolean delete(String userName) throws Exception; } |
ProductCategoryDao
package com.crazybuy.dao;
import java.util.List;
import com.crazybuy.entity.ProductCategory;
/** * 商品類別數據訪問層接口 * * @author 湯Emily * @version 2017-4-16 */ public interface ProductCategoryDao { /** * 獲取所有商品類別 * * @return 商品類別集合 */ public List<ProductCategory> getAll() throws Exception;
/** * 通過ID獲取一個類別 * * @param id * 編號 * @return 商品類別對象 */ public ProductCategory getProductCategoryById(int id) throws Exception;
/** * 添加商品類別 * * @param pc * 商品類別對象 * @return true成功 false失敗 */ public boolean insert(ProductCategory pc) throws Exception;
/** * 更新商品類別 * * @param pc * 商品類別對象 * @return true成功 false失敗 */ public boolean update(ProductCategory pc) throws Exception;
/** * 通過ID刪除商品類別 * * @param id * 編號 * @return true成功 false失敗 */ public boolean deleteById(int id) throws Exception;
/** * 通過父分類ID刪除商品類別 * * @param id * 父分類編號 * @return true成功 false失敗 */ public boolean deleteByParentId(int id) throws Exception; } |
ProductDao
package com.crazybuy.dao;
import java.util.List;
import com.crazybuy.entity.Product;
/** * 商品數據訪問層接口 * * @author 湯Emily * @version 2017-4-16 */ public interface ProductDao { /** * 通過商品狀態獲取部分商品 * * @param Status * 商品狀態 * @param number * 商品條數 * @return 商品集合 */ public List<Product> getProductsByStatus(int status, int number) throws Exception;
/** * 通過類別獲取商品,並限制數據範圍 * * @param id * 商品類別ID * @param level * 類別級別 * 1.類別級別 id不是-1,level不是-1,查大類 2.level爲2就查子類數量 * 3.id=-1,level爲-1(代表根) ep_status狀態沒禁用 查所有的商品 * @param pageSize * 每頁顯示數量 * @param pageIndex * 頁碼 * @return 商品集合 */ public List<Product> getProductsByCategory(int id, int level, int pageSize, int pageIndex) throws Exception;
/** * 獲取指定商品類別ID的商品數量,level就是控制調哪一條 sql語 * * @param id * 商品類別ID * @param level * 類別級別 * 1.類別級別 id不是-1,level不是-1,查大類 2.level爲2就查子類數量 * 3.id=-1,level爲-1(代表根) ep_status狀態沒禁用 查所有的商品 * @return 商品數量 */ public int getCountByCategory(int id, int level) throws Exception;
/** * 獲取可以顯示的總頁數 * * @param count * 商品數量 * @param pageSize * 每頁顯示數量 * @return 總頁數 10條數據,每頁顯示3條,求多少頁4 10%3==0?10/3 : 10/3+1 */ public int getTotalPages(int count, int pageSize) throws Exception;
/** * 通過ID獲取商品信息 * * @param id * 商品ID * @return 商品對象 */ public Product getProductById(int id) throws Exception;
/** * 通過ID刪除商品 * * @param id * 編號 * @param columnType * 列類型。 1:商品ID 2:分類ID 3:子分類ID * @return true成功 false失敗 */ public boolean deleteById(int id, int columnType) throws Exception;
/** * 添加一條商品 * * @param product * 商品對象 * @return true成功 false失敗 */ public boolean insert(Product product) throws Exception;
/** * 更新一條商品 * * @param product * 商品對象 * @return true成功 false失敗 */ public boolean update(Product product) throws Exception;
/** * 禁用一個商品 * * @param id * 商品ID * @return true成功 false失敗 */ public boolean setDisable(int id) throws Exception; } |
上面三個dao要求當天完成。
三個dao接口實現類中sql語句參考:
UserDaoImpl
package com.crazybuy.dao.impl;
import java.util.List;
import com.crazybuy.dao.UserDao; import com.crazybuy.entity.User;
public class UserDaoImpl implements UserDao {
@Override public boolean checkUserNameIsExist(String userName) throws Exception { String sql = "select 1 from crazybuy_user where eu_user_name=?"; return false; }
@Override public boolean delete(String userName) throws Exception { String sql = "delete from crazybuy_user where eu_user_name = ?"; return false; }
@Override public List<User> findUser(User user) throws Exception { String sql = "select * from crazybuy_user where eu_user_name=? and eu_password=?"; return null; }
@Override public User getUserByUserName(String userName) throws Exception { String sql = "select * from crazybuy_user where eu_user_name = ?"; return null; }
@Override public List<User> getUsers() throws Exception { String sql = "select * from crazybuy_user"; return null; }
@Override public int insert(User user) throws Exception { String sql = "insert into crazybuy_user values(?,?,?,?,?,?,?,?,default)"; return 0; }
@Override public User login(User user) throws Exception { String sql = "select * from crazybuy_user where eu_user_name=? and eu_password=?"; return null; }
@Override public boolean update(User user) throws Exception { String sql = "update crazybuy_user set eu_password=?,eu_actual_name=?,eu_sex=?,eu_email=?,eu_mobile=?,eu_address=? where eu_user_name=?"; return false; }
} |
ProductCategoryDaoImpl
package com.crazybuy.dao.impl;
import java.util.List;
import com.crazybuy.entity.ProductCategory;
public class ProductCategoryDaoImpl implements com.crazybuy.dao.ProductCategoryDao {
@Override public boolean deleteById(int id) throws Exception { String sql = "delete from crazybuy_product_category where epc_id = ?"; return false; }
@Override public boolean deleteByParentId(int id) throws Exception { String sql = "delete from crazybuy_product_category where epc_parent_id = ?"; return false; }
@Override public List<ProductCategory> getAll() throws Exception { String sql = "select * from crazybuy_product_category"; return null; }
@Override public ProductCategory getProductCategoryById(int id) throws Exception { String sql = "select * from crazybuy_product_category where epc_id = ?"; return null; }
@Override public boolean insert(ProductCategory pc) throws Exception { String sql = "insert into crazybuy_product_category(epc_name,epc_parent_id) values(?,?)"; return false; }
@Override public boolean update(ProductCategory pc) throws Exception { String sql = "update crazybuy_product_category set epc_name=?,epc_parent_id=? where epc_id=?"; return false; }
} |
ProductDaoImpl
package com.crazybuy.dao.impl;
import java.util.List;
import com.crazybuy.dao.ProductDao; import com.crazybuy.entity.Product;
public class ProductDaoImpl implements ProductDao {
@Override public boolean deleteById(int id, int columnType) throws Exception { String sql = "delete from crazybuy_product where"; if (columnType == 1) { sql += " ep_id = ?"; } else if (columnType == 2) { sql += " epc_id = ?"; } else if (columnType == 3) { sql += " epc_child_id = ?"; } else { return false; } return false; }
@Override // 1 2 public int getCountByCategory(int id, int level) throws Exception { String sql = "select count(*) from crazybuy_product where epc_id = ? and ep_status != -1"; if (level == 2) { sql = "select count(*) from crazybuy_product where epc_child_id = ? and ep_status != -1"; } if (id == -1 && level == -1) { sql = "select count(*) from crazybuy_product where ep_status != -1"; } // return 0; }
@Override public Product getProductById(int id) throws Exception { String sql = "select * from crazybuy_product where ep_id = ?"; return null; }
@Override public List<Product> getProductsByCategory(int id, int level, int pageSize, int pageIndex) throws Exception { String sql = "select * from crazybuy_product where epc_id = ? and ep_status != -1 limit ?,?"; if (level == 2) { sql = "select * from crazybuy_product where epc_child_id = ? and ep_status != -1 limit ?,?"; } if (id == -1 && level == -1) { sql = "select * from crazybuy_product where ep_status != -1 limit ?,?"; } return null; }
@Override public List<Product> getProductsByStatus(int status, int number) throws Exception { String sql = "select * from crazybuy_product where ep_status = ? limit 0,?"; return null; }
@Override public int getTotalPages(int count, int pageSize) throws Exception { return count % pageSize == 0 ? count / pageSize : count / pageSize + 1; }
@Override public boolean insert(Product product) throws Exception { String sql = "insert into crazybuy_product values(null,?,?,?,?,?,?,?,?)"; return false; }
@Override public boolean setDisable(int id) throws Exception { String sql = "update crazybuy_product set ep_status=-1 where ep_id=?"; return false; }
@Override public boolean update(Product product) throws Exception { String sql = "update crazybuy_product set ep_name=?,ep_description=?,ep_price=?,ep_stock=?,ep_status=?,epc_id=?,epc_child_id=?,ep_file_name=? where ep_id=?"; return false; }
} |
請大家完成實現類。