水果商店系统数据库

一、实验目的与要求:

1、掌握MySQL中如何创建数据库和表的方法(要求在交互式命令提示符下完成,
截图)
2、熟练掌握MySQL的数据类型、主键实体完整性的设置
3、参照完整性的定义及应用(Navicat可视化操作,熟悉代码)
4、插入数据(Navicat完成)
5、数据库的备份操作

二、实验内容:

1、创建名为fruitshop的数据库,并创建数据表fruits、customers(客户)、orderitems(订单详单)、suppliers(供货商)和orders(订单总表),表结构和约束条件如下:
注:
1.各表中的“字段说明”属性仅用于辅助说明该属性的含义,不用定义在表的结构中
2.表中没有明确指定外键,试分析找出各表中的外键并定义其外键约束、级联删除、级联更新操作;
在这里插入图片描述

三、实验源码:

创建表源码:

SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- 1.Table structure for customers
-- ----------------------------
DROP TABLE
IF
	EXISTS `customers`;
CREATE TABLE `customers` (
	`c_id` INT NOT NULL AUTO_INCREMENT COMMENT '客户编号',
	`c_name` CHAR ( 50 ) NOT NULL COMMENT '客户名',
	`c_address` CHAR ( 50 ) DEFAULT NULL COMMENT '客户地址',
	`c_city` CHAR ( 50 ) DEFAULT NULL COMMENT '地址',
	`c_zip` CHAR ( 10 ) DEFAULT NULL COMMENT '邮编',
	`c_contact` CHAR ( 50 ) DEFAULT NULL COMMENT '联系人',
	`c_email` CHAR ( 255 ) DEFAULT NULL COMMENT '电子邮箱',
	PRIMARY KEY ( c_id ) 
) ENGINE = INNODB DEFAULT CHARSET = utf8;

-- ----------------------------
-- 2.Table structure for suppliers
-- ----------------------------
DROP TABLE
IF
	EXISTS `suppliers`;
CREATE TABLE `suppliers` (
	`s_id` INT NOT NULL AUTO_INCREMENT COMMENT '供应商编号',
	`s_name` CHAR ( 50 ) NOT NULL COMMENT '供应商名',
	`s_city` CHAR ( 50 ) DEFAULT NULL COMMENT '城市',
	`s_zip` CHAR ( 10 ) DEFAULT NULL COMMENT '邮编',
	`s_call` CHAR ( 50 ) NOT NULL COMMENT '电话',
	PRIMARY KEY ( s_id ) 
) ENGINE = INNODB DEFAULT CHARSET = utf8;
-- ----------------------------
-- 3.Table structure for fruits
-- ----------------------------
DROP TABLE
IF
	EXISTS `fruits`;
CREATE TABLE fruits (
	f_id CHAR ( 10 ) NOT NULL COMMENT '水果编号',
	s_id INT NOT NULL COMMENT '供应商编号',
	f_name CHAR ( 255 ) NOT NULL COMMENT '水果名',
	f_price DECIMAL ( 8, 2 ) NOT NULL COMMENT '价格',
	PRIMARY KEY ( f_id ),
	CONSTRAINT fk_s_id FOREIGN KEY ( s_id ) REFERENCES suppliers ( s_id ) ON DELETE CASCADE ON UPDATE CASCADE 
);
-- ----------------------------
-- 4.Table structure for orders
-- ----------------------------
DROP TABLE
IF
	EXISTS `orders`;
CREATE TABLE `orders` (
	`o_num` INT NOT NULL AUTO_INCREMENT COMMENT '订单号',
	`o_date` datetime NOT NULL COMMENT '订购日期',
	`c_id` INT NOT NULL COMMENT '客户编号',
	PRIMARY KEY ( o_num ),
	CONSTRAINT fk_c_id FOREIGN KEY ( c_id ) REFERENCES customers ( c_id ) ON DELETE CASCADE ON UPDATE CASCADE 
) ENGINE = INNODB DEFAULT CHARSET = utf8;
-- ----------------------------
-- 5.Table structure for orderitems
-- ----------------------------
DROP TABLE
IF
	EXISTS `orderitems`;
CREATE TABLE `orderitems` (
	`o_num` INT NOT NULL COMMENT '订单号',
	`o_item` INT NOT NULL COMMENT '订单项',
	`f_id` CHAR ( 10 ) NOT NULL COMMENT '水果编号',
	`quantity` INT NOT NULL COMMENT '数量',
	`item_price` DECIMAL ( 8, 2 ) NOT NULL COMMENT '单价',
	PRIMARY KEY ( o_num, o_item ),
	CONSTRAINT fk_o_num FOREIGN KEY ( o_num ) REFERENCES orders ( o_num ) ON DELETE CASCADE ON UPDATE CASCADE,
	CONSTRAINT fk_f_id FOREIGN KEY ( f_id ) REFERENCES fruits ( f_id ) ON DELETE CASCADE ON UPDATE CASCADE 
) ENGINE = INNODB DEFAULT CHARSET = utf8;

数据输入源码:

--*****************数据输入************** 
INSERT INTO customers
VALUES
	( '10001', 'ReadHook', '200 Street', 'Tianjin', '300000', 'LiMing', 'LMing@163.com' );
INSERT INTO customers
VALUES
	( '10002', 'Stars', '333 Fromage Lane', 'Dalian', '116000', 'Zhangbo', 'Jerry@hotmail.com' );
INSERT INTO customers
VALUES
	( '10003', 'Netbhood', '1 unny Place', 'Qingdao', '266000', 'LuoCong', '' );
INSERT INTO customers
VALUES
	( '10004', 'JOTO', '829 Riverside Drive', 'Haikou', '570000', 'YangShan', 'sam@hotmail.com' );

INSERT INTO suppliers
VALUES
	( '101', 'FastFruit Inc.', 'Tianjin', '300000', '48075' );
INSERT INTO suppliers
VALUES
	( '102', 'LT Supplies', 'Chongqing', '400000', '44333' );
INSERT INTO suppliers
VALUES
	( '103', 'ACME', 'Shanghai', '200000', '90046' );
INSERT INTO suppliers
VALUES
	( '104', 'FNK Inc.', 'Zhongshan', '528437', '11111' );
INSERT INTO suppliers
VALUES
	( '105', 'Good Set', 'Taiyuang', '030000', '22222' );
INSERT INTO suppliers
VALUES
	( '106', 'Just Eat Ours', 'Beijing', '010', '45678' );
INSERT INTO suppliers
VALUES
	( '107', 'DK Inc.', 'Zhengzhou', '450000', '33332' );
	
INSERT INTO fruits
VALUES
	( 'a1', '101', 'apple', '5.20' );
INSERT INTO fruits
VALUES
	( 'a2', '103', 'apricot', '2.20' );
INSERT INTO fruits
VALUES
	( 'b1', '101', 'blackberry', '10.20' );
INSERT INTO fruits
VALUES
	( 'b2', '104', 'berry', '7.60' );
INSERT INTO fruits
VALUES
	( 'b5', '107', 'pear', '3.60' );
INSERT INTO fruits
VALUES
	( 'bs1', '102', 'orange', '11.20' );
INSERT INTO fruits
VALUES
	( 'bs2', '105', 'melon', '8.20' );
INSERT INTO fruits
VALUES
	( 'c0', '101', 'plum', '3.20' );
INSERT INTO fruits
VALUES
	( 'l2', '104', 'lemon', '6.40' );
INSERT INTO fruits
VALUES
	( 'm1', '106', 'mango', '15.60' );
INSERT INTO fruits
VALUES
	( 'm2', '105', 'watermelon', '2.60' );
INSERT INTO fruits
VALUES
	( 'm3', '105', 'cherry', '11.60' );
INSERT INTO fruits
VALUES
	( 'o2', '103', 'coconut', '9.20' );
INSERT INTO fruits
VALUES
	( 't1', '102', 'banana', '10.30' );
INSERT INTO fruits
VALUES
	( 't2', '102', 'grape', '5.30' );
INSERT INTO fruits
VALUES
	( 't4', '107', 'peanut', '3.60' );

INSERT INTO orders
VALUES
	( '30001', '2018-09-01 00:00:00', '10001' );
INSERT INTO orders
VALUES
	( '30002', '2018-09-12 00:00:00', '10003' );
INSERT INTO orders
VALUES
	( '30003', '2018-09-30 00:00:00', '10004' );
INSERT INTO orders
VALUES
	( '30004', '2018-10-03 00:00:00', '10005' );
INSERT INTO orders
VALUES
	( '30005', '2018-10-08 00:00:00', '10005' );
	
INSERT INTO orderitems
VALUES
	( '30001', '1', 'a1', '10', '5.20' );
INSERT INTO orderitems
VALUES
	( '30001', '2', 'b2', '3', '7.60' );
INSERT INTO orderitems
VALUES
	( '30001', '3', 'bs1', '5', '11.20' );
INSERT INTO orderitems
VALUES
	( '30001', '4', 'bs2', '15', '9.20' );
INSERT INTO orderitems
VALUES
	( '30002', '1', 'b3', '2', '20.00' );
INSERT INTO orderitems
VALUES
	( '30003', '1', 'c0', '100', '10.00' );
INSERT INTO orderitems
VALUES
	( '30004', '1', 'o2', '50', '2.50' );
INSERT INTO orderitems
VALUES
	( '30005', '1', 'c0', '5', '10.00' );
INSERT INTO orderitems
VALUES
	( '30005', '2', 'b1', '10', '8.99' );
INSERT INTO orderitems
VALUES
	( '30005', '3', 'a2', '10', '2.20' );
INSERT INTO orderitems
VALUES
	( '30005', '4', 'm1', '5', '14.99' );

运行测试结果截图:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、源码描述 本系统基于SSM(Spring+SpringMVC+MyBatis)框架,适用于毕业设计,采用javaweb,基于B/S模式,Myeclipse或者eclipse idea为开发工具,mysql数据库,感兴趣的朋友们可以下载研究一下。 二、功能介绍 1、用户注册:有用户进入系统后,可进行浏览水果蔬菜,若想购买水果蔬菜,必须先进行注册,注册需要填写账号、真实姓名、密码、电话、性别、地址等信息。 2、登录:用户在注册账号之后,就进行登录,然后可以购买水果蔬菜。 3、查看水果蔬菜:在进入系统后,用户可根据水果蔬菜的名字进行搜索,也可根据水果蔬菜的分类进行查看自己想查看的水果蔬菜。 4、加入购物车:用户在选中一个水果蔬菜后,可暂时把水果蔬菜放到购物车中,一起结账。 5、提交订单:用户进入购物车后,可以把加入购物车的水果蔬菜一起下单。 6、查看订单:用户在登录系统后,可以在查看订单里查看自己的订单。 7、水果蔬菜管理:管理员在登录系统后,可以对水果蔬菜进行增删操作,当管理员添加一个水果蔬菜后,该水果蔬菜就会在客户端显示出来,当管理员把一个水果蔬菜删除后,该水果蔬菜就会下架,不会在商城首页中显示。 8、客户管理:管理员可对水果蔬菜进行增删改查操作,也可根据客户的名字进行查询单个客户信息。 9、分类管理:分类管理主要有一级分类和二级分类,二级分类是在一级分类的基础上进行的,一级分类和二级分类添加后,会在前台客户端列出来。当添加一个水果蔬菜时,会选择水果蔬菜的二级分类,然后在前台就可以根据分类查询出该水果蔬菜。 10、订单管理:前台用户生成的订单,都会在该页面显示出来,并且管理员可对其进行操作。 三、注意事项 1、管理员账号:hsg 密码:hsg 2、开发环境为eclipse idea/Myeclipse均可,含数据库建立脚本,jdk7.0以上,tomcat7以上, 使用ssm框架,jsp/java语言开发。 3、采用jdbc连接方式,数据库版本>mysql5.7需要更改数据库连接等和增加连接驱动,兼容所有mysql版本 4、数据库连接src\applicationContext.xml中和src\com\util\db.java中修改, 5、如果你的mysql数据库密码为空,导入即可运行,方便快捷

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值