数据库和表


前言

大二的数据库实验了,无情的搬运工呜啦啦


一、实验目的与要求:

1、掌握MySQL中如何创建数据库和表的方法
2、掌握navicat中创建数据库、表,导入及导出表结构及数据。
3、熟练掌握MySQL的数据类型、主键、实体完整性的设置。

二、实验内容:

1.1、创建名为fruitshop的数据库,并创建数据表fruits、customers(客户)、orderitems(订单详单)、suppliers(供货商)和orders(订单总表),表结构和约束条件如下:

表 1 fruits表结构
在这里插入图片描述

表 2 customers表结构
在这里插入图片描述

表 3 orderitems表结构
在这里插入图片描述

表 4 suppliers表结构
在这里插入图片描述

表 5 orders表结构
在这里插入图片描述

代码如下:

创建数据库:
CREATE DATABASE fruitshop;

创建fruits表
USE fruitshop;
CREATE TABLE  fruits
          (f_id  CHAR(10)NOT NULL UNIQUE, 
           s_id  INT NOT NULL,  
           f_name CHAR(255) NOT NULL,
           f_price DECIMAL(8,2) NOT NULL,
           PRIMARY KEY (f_id,s_id) 
           );
创建customers表:
CREATE TABLE  customers
          (c_id  INT NOT NULL UNIQUE,  
           c_name CHAR(50) NOT NULL,
           c_address CHAR(50) ,
           c_city CHAR(50) ,
           c_zip CHAR(10) ,
           c_contact CHAR(50) ,
           c_email CHAR(255),       
           PRIMARY KEY (c_id) 
           );
创建orderitems表:
CREATE TABLE  orderitems
          (
           o_num INT NOT NULL,
           o_item INT NOT NULL,
           f_id CHAR(10) NOT NULL,
           quantity INT NOT NULL,
           item_price DECIMAL(8,2) NOT NULL,
           PRIMARY KEY (o_num,o_item)
           );
创建suppliers表:
CREATE TABLE  suppliers
          (
           s_id INT NOT NULL UNIQUE AUTO_INCREMENT,
           s_name CHAR(50) NOT NULL,
           s_city CHAR(50),
           s_zip CHAR(10),
           s_call CHAR(50) NOT NULL,
           PRIMARY KEY (s_id)
           );
创建orders表:
CREATE TABLE  orders
          (
           o_num INT NOT NULL UNIQUE AUTO_INCREMENT,
           o_date DATETIME NOT NULL,
           c_id INT NOT NULL,
           PRIMARY KEY (o_num)
           );

1.2运行测试结果截图:

1.创建数据库和表:

在这里插入图片描述
五个表:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、向数据表fruits、customers、orderitems和suppliers、orders中插入给定的如下数据

fruits表数据
在这里插入图片描述
customers表数据
在这里插入图片描述
orderitems表数据
在这里插入图片描述
suppliers表数据
在这里插入图片描述
orders表数据
在这里插入图片描述

3. 向数据表customers和suppliers中分别插入两条记录,新记录customers的C_ID属性值统一为10000,在suppliers的S_ID属性值统一为100,S_NAME数据为JMU,其余属性值为本人的真实信息;向数据表fruits、orderitems、orders表中插入分别插入五条与本人相关的新记录

第2题和第3题的源码:
第二题:
为节约时间就示例一条,其他直接用可视化添加:
INSERT
INTO fruits (f_id,s_id,f_name,f_price)
VALUES (‘a1’,101,‘apple’,5.2);

运行测试结果截图:
第二题截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第三题截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、实验小结

1.实验中遇到的问题及解决过程
刚开始在理解题意上有个问题,就是插入自己相关数据那里,后来问了同学,决定都统一用自己的信息,如果后面不行的话再修改
2.实验中产生的错误及原因分析
暂时还没有
3.实验体会和收获。
确实是一个不难的建表和建库的一个实验,难的点可能在于数据量好大,
但是其实也大不到哪里去,可能是一开始在限制时间里写,然后就觉得很有紧迫感,但是讲道理后面发现自己也真的能在那个时间段写完,全身灌入的做完实验就觉得还蛮开心的,不然按照我的拖拖拉拉的性格可能会慢悠悠写,然后今晚再教。
原本供应商的第三题供应表里的供应商以为是自己的名字,改成JMU了。
还需要改进的地方有两个,一个是输入数据那个其实也可以勤快点全部用代码,二就是感觉整个我复制代码的格式还可以再改进改进,做个表啥的,就会更美观。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值