西南交通大学智能监测 培训课程练习1

news2024/12/23 22:45:20

2023.05.24培训

task1:ER的用法、对应数据库的设计

task2:熟悉数据库基本操作、使用Navicat

目录

一、E-R图是什么

二、E-R图的组成要素

三、E-R图绘制

四、E-R图实例

4.1E-R图转换到关系模式

4.2具体数据表设计

五、Mysql基础操作

5.1操作数据库

5.1.1命令行远程连接数据库

 5.1.2查看所有数据库

 5.1.3选择需要操作的库

 5.1.4退出数据库

5.2操作数据表

5.2.1查看表中的数据

六、使用Navicat操作数据库

6.1连接数据库

6.2操作数据库

6.2.1选择数据库

6.3操作数据表 

6.3.1查看数据表

 6.3.2添加数据表

 6.3.3添加数据

6.4数据查询

6.4.1查询全部数据

6.4.2条件查询

6.4.3分组查询

6.4.4排序查询

6.4.5修改数据

6.4.6删除数据

代码合集


 

一、E-R图是什么

E-R图也称为实体-联系图,提供了表示实体类型,属性和联系的方法,用来描述现实世界的概念模型。简单来说,就是将现实中的业务场景的属性和它们之间的联系用图绘制出来。

二、E-R图的组成要素

1)实体(entity),现实世界客观存在,并区别于其他对象的“事件”或“物体”,比如产品。

2)属性(attribute),每个实体的特征,比如产品的名称、分类。

3)主键(key),能唯一区分这个实体的属性,比如产品ID。

4)联系(relationship),实体与实体之间的联系,有一对一,一对多,多对多三种,比如产品和销售员。
 

三、E-R图绘制

四、E-R图实例

4.1E-R图转换到关系模式

一个订单可能会有一个或多个产品,同时一个产品也可能会有相应的多个订单。

因此,订单和产品两个实体是多对多的联系,即n-m。

订单详情作为中间关系将二者联系起来。

4.2具体数据表设计

根据E-R图可以很容易的得到数据表

抽取订单和产品两个实体分别作一张表,额外加订单详情作一张表

抽取对应属性作为字段,得到如下设计:

订单表(order):订单编码(order_id), 日期(date), 单据状态(document_status)

产品表(product):产品编码(product_id), 产品名(name), 产品分类(type)

订单详情表(order_details):订单编码(order_id)产品编码(product_id), 数量(number), 金额(price)

五、Mysql基础操作

5.1操作数据库

5.1.1命令行远程连接数据库

mysql -h 127.0.0.1 -uroot --port=3306 -p   

 

 5.1.2查看所有数据库

show databases;

 

 5.1.3选择需要操作的库

use summerytempdb; (选择其中名为summerytempdb的数据库)

show tables; (查看该数据库中所有的表)

 

 5.1.4退出数据库

exit; 或者  quit;

 

 

5.2操作数据表

5.2.1查看表中的数据

select *from t_lyh_app; (查看表中所有数据)

 

 (建表等操作在Navicat等数据库可视化软件上更方便)

六、使用Navicat操作数据库

6.1连接数据库

左上角点击连接,选择Mysql

 输入连接名,对应的IP,用户名和密码,点击确定

 

 连接成功后下方就是数据库

 

6.2操作数据库

直接点击数据库或是新建查询使用sql语句进行操作

6.2.1选择数据库

use summerytempdb;

 

6.3操作数据表 

6.3.1查看数据表

show tables;

 6.3.2添加数据表

根据4.2 添加三个数据表

 

 6.3.3添加数据

在表中添加相应数据

单值添加 (末尾有';')

INSERT INTO t_ykx_order VALUE(2023052501,'2023-05-25 11:10:20','transport');

 

批量添加(使用values,中间用','隔开)

INSERT INTO t_ykx_order VALUES(2023052502,'2023-05-24 01:19:33','transport'),
(2023052503,'2023-01-25 10:23:40','transport'),(2023052504,'2023-05-11 14:10:20','complete'),
(2023052505,'2023-02-25 04:11:21','complete'),(2023052506,'2023-03-22 17:10:50','transport'),
(2023052507,'2023-03-25 13:08:38','transport'),(2023052508,'2023-02-22 23:19:31','complete');

 

剩下的表也同样插入数据

INSERT INTO t_ykx_product VALUES(1,'book1','book'),(2,'book2','book'),(3,'book3','book'),
(4,'book4','book'),(5,'pen1','pen'),(6,'pen2','pen'),(7,'pen3','pen'),(8,'cup1','cup'),
(9,'cup2','cup'),(10,'cup3','cup');

 INSERT INTO t_ykx_order_details VALUES(2023052501,3,10,99),(2023052503,7,4,88),(2023052505,10,1,9.9),
(2023052502,4,3,66),(2023052508,8,7,520),(2023052507,2,22,1024);

 

6.4数据查询

6.4.1查询全部数据

SELECT *FROM t_ykx_order;

 

6.4.2条件查询

SELECT *FROM t_ykx_order WHERE order_id>2023052504;

 

 

6.4.3分组查询

SELECT TYPE,COUNT(*)FROM t_ykx_product GROUP BY TYPE;

 

 

6.4.4排序查询

SELECT * FROM t_ykx_order_details ORDER BY price DESC; (加上DESC表示降序,不加默认是升序)

6.4.5修改数据

UPDATE t_ykx_product SET TYPE = 'BOOK' WHERE TYPE = 'book';

 

 

6.4.6删除数据

DELETE FROM t_ykx_order WHERE order_id = 2023052501;

 

 

代码合集

USE summerytempdb;
SHOW TABLES;

INSERT INTO t_ykx_order VALUE(2023052501,'2023-05-25 11:10:20','transport');
INSERT INTO t_ykx_order VALUES(2023052502,'2023-05-24 01:19:33','transport'),
(2023052503,'2023-01-25 10:23:40','transport'),(2023052504,'2023-05-11 14:10:20','complete'),
(2023052505,'2023-02-25 04:11:21','complete'),(2023052506,'2023-03-22 17:10:50','transport'),
(2023052507,'2023-03-25 13:08:38','transport'),(2023052508,'2023-02-22 23:19:31','complete');

INSERT INTO t_ykx_product VALUES(1,'book1','book'),(2,'book2','book'),(3,'book3','book'),
(4,'book4','book'),(5,'pen1','pen'),(6,'pen2','pen'),(7,'pen3','pen'),(8,'cup1','cup'),
(9,'cup2','cup'),(10,'cup3','cup');

INSERT INTO t_ykx_order_details VALUES(2023052501,3,10,99),(2023052503,7,4,88),(2023052505,10,1,9.9),
(2023052502,4,3,66),(2023052508,8,7,520),(2023052507,2,22,1024);

SELECT *FROM t_ykx_order;

SELECT *FROM t_ykx_order WHERE order_id>2023052504;

SELECT TYPE,COUNT(*)FROM t_ykx_product GROUP BY TYPE;

SELECT * FROM t_ykx_order_details ORDER BY price DESC;

UPDATE t_ykx_product SET TYPE = 'BOOK' WHERE TYPE = 'book';

DELETE FROM t_ykx_order WHERE order_id = 2023052501;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/567203.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

燃料电池系统控制技术的演进

背景 随着环保意识的不断提高,对清洁能源的需求也日益增加。燃料电池作为一种高效、低污染的清洁能源,受到了广泛关注和重视。与传统燃烧发电相比,燃料电池具有高效、无污染、静音等优点,可以成为未来清洁能源的主要来源之一。 …

docker拉取镜像报错Error response from daemon: Get https://registry-1.docker.io/v2/:

阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量。文章设置为仅粉丝可见,是因为写博客确实花了不少精力。希望互相进步谢谢!! 文章目录 阅读前请看一下:我是…

chatgpt赋能python:Pythonshutil.move:一个强大的文件移动工具

Python shutil.move:一个强大的文件移动工具 文件的移动和重命名是我们日常工作中经常会碰到的操作之一。Python的shutil模块提供了很多方便的工具,其中shutil.move是其中一个强大的工具,可以在文件系统中移动和重命名文件。在本文中&#x…

chatgpt赋能python:Python模型保存的完整指南:如何保存和加载模型

Python模型保存的完整指南:如何保存和加载模型 介绍 Python是一个十分强大的编程语言,它的简单易用的语法和丰富的库使其成为了机器学习开发者的首选。在机器学习领域,我们经常需要训练和保存模型,以便在实际应用中使用。本文将…

SpringCloud:(图书预约的操作)

借阅图书的操作主要是添加借阅记录: 在这张表上添加记录,并在t_book这张表上扣除库存的操作 下面我们开始进行操作: 首先我们创建t_borrow表的实体类在book项目中: package com.laosan.book.entity;import lombok.Data;import j…

成都PMP培训机构有推荐的吗?

PMP考试是不是必须要报班?自学可以考试吗?不需要报班的话,自学难度大吗?成都PMP培训机构有推荐的吗? 首先,PMP考试并非必须要报班,自学也可以考试。但是需要注意的是,PMP考试难度较大…

Centos7.9基于Kubeasz部署k8s 1.27.1高可用集群

一:kubeasz 的介绍 kubeasz 致力于提供快速部署高可用k8s集群的工具, 同时也努力成为k8s实践、使用的参考书; 基于二进制方式部署和利用ansible-playbook实现自动化;既提供一键安装脚本, 也可以根据安装指南分步执行安装各个组件。 kubea…

简单分享在微信上扫码点餐小程序怎么做

目前市场上有很多扫码点餐的小程序系统,制作方法有三种: 1、使用微信商家推出的扫码点餐小程序,上传营业执照和食品经营许可证就可以开通使用,然后上传自己的菜品信息就可以了,功能相对比较简单。 2、购买餐饮系统公司…

java链表——LinkList详解

LinkList详解 注:在学习LinkList之前可以先去看一下我的另一篇博客单链表的定义及其模拟实现——java https://editor.csdn.net/md/?articleId130642627,有助于本博客的理解 ArrayList和LinkedList的区别 LinkList模拟实现 定义三个类:MyL…

数据中台建设浪费,数据分析系统如何设计,听听 Gartner 怎么说

2023 年数据分析趋势:数据即业务、从平台到生态、以人为中心 作者 | 宋慧 出品 | CSDN 云计算 数据的价值被越来越多的行业用户看到。不过各种数据系统百花齐放,前几年关于数据中台的讨论仍然众说纷纭。国际研究机构 Gartner 持续对数据分析市场做了调研…

动态规划-数位DP

数字游戏 题目 链接:https://www.acwing.com/problem/content/1084/ 科协里最近很流行数字游戏。 某人命名了一种不降数,这种数字必须满足从左到右各位数字呈非下降关系,如 123 123 123, 446 446 446。 现在大家决定玩一个游…

杂记阅读(三)

目录 校徽和校训 权杖 学术竞赛与荣誉 香港罗德学人 中国大陆罗德学者 富布赖特项目 海外 学友 本土发展 海外扩展 史匹爾財富管理調查 880年,悉尼大学获得了一笔可观的捐赠。富商和慈善家约翰亨利查雷斯在遗嘱中将他的大部分遗产赠予悉尼大学。经过身为…

JavaScript WebAPI 实战

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE初阶 本篇文章为大家带来JavaScript WebAPI的使用,请各位过目~~ 目录 文章目录 一、什么是JavaScript WebAPI 1.1 什么是DOM 二、常用的DOM API 2.1 获取元素 2.2 什么是事件 2.2.1 …

Hive数据分层有哪些优点?具体每一层含义是什么?

为什么要分层? 作为一名数据的规划者,我们肯定希望自己的数据能够有秩序地流转,数据的整个生命周期能够清晰明确被设计者和使用者感知到。直观来讲就是如图这般层次清晰、依赖关系直观。 但是,大多数情况下,我们完成的数据体系却…

深度学习基础知识-误差反向传播+训练技巧(无代码仅用来理解)

参考书籍:(找不到资源可以后台私信我) 《深度学习入门:基于Python的理论与实现 (斋藤康毅)》 《Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition (Aurelien Geron [Gron, Aurlien])》 神经网络…

Delphi日薄西山?不仅用户300万,还大佬无数,转身就风靡全球

主人公名叫David Vacanti,是Delphi的长期开发人员,已有接近30年以上的编程经验。 我之所以注意到他,一是因为Delphi属实一波回忆杀。 二是不可思议:他在1983年,便开启了自己的副业。 开了一家叫做“Vacanti Yacht D…

成功加冕!用友大易获评2023最佳招聘管理软件供应商

人力资源服务业旗帜性商业奖项2023金帜奖(HRFLAG AWARDS)颁奖典礼于近日隆重举行。经过3个月的评选,用友大易从615家人力资源服务机构中脱颖而出,最终荣获「2023最佳招聘管理软件供应商」奖项。 2023金帜奖(HRFLAG AWARDS)是人力资源服务行业旗帜性的商业…

STM32cubemx配置驱动DHT11模块

文章目录 前言一、DHT11模块介绍二、DHT11引脚连接及cubemx配置三、DHT11时序分析四、DHT11代码编写总结 前言 本篇文章将带大家学习使用DHT11湿温度模块,使用这个模块可以获取当前的温度和湿度数据。DHT11可以用于智能家居,蔬菜大棚等项目当中适用范围…

SpringBoot+layUI实现表格的某一列数据刷新功能案例分享

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

mysql执行计划explain

mysql 执行计划 explain 介绍 mysql8.0为例:https://dev.mysql.com/doc/refman/8.0/en/explain-output.html EXPLAIN为语句中使用的每个表返回一行信息 SELECT。它按照 MySQL 在处理语句时读取它们的顺序列出输出中的表。这意味着 MySQL 从第一个表中读取一行&…