MySQL

数据库
一、数据类型

  1. 网状数据库:用有向图结构表示实体类型及实体间联系的数据模型
  2. 关系型数据库:认为数据库存储的表和表之间是有关系的-----MySQL
  3. MySQL:体积小、速度快、成本低、可移植性、开源。

二、 数据的完整性:存储在数据库中的护具应该保持准确性和可靠性。
分类:
实体完整性(行):对应关系中的记录唯一性,定义表中的所有行唯一的标识。 主属性不能为空,不能有相同值,一般使用主键、unique、唯一索引实现。
主键
表中一个或多个字段,用于唯一标识表中某一条记录。创建时指定。手动添加或代码{直接加primary key\constant 约束名 primary key()\primary key (约束名)}
修改约束–alter
1、 alter table 表名 modify 列名 数据类型 primary key;
2、alter table 表名 ADD primary key (列);
3、alter table 表名 ADD constant 指定约束名 primary 可以(列);
4、删除主键约束:alter table 表名 drop primary key;
唯一约束:
1、不能重复 、可为多个空
2、如果不给唯一约束名称,就默认和列名相同
3、MySQL会给唯一约束的列会默认创建一个唯一索引
eg:
1、creat table temp(
id int not null,
name varcher(25)((或者直接加unique)),
constraint uk_name_pwd unique(name)
);
2、 alter table temp add unique(name,passwd);
3、 alter table temp modify name varchar(25)
unique;------修改唯一约束
alter table temp drop index name;删除约束
域完整性:是对数据表中字段属性的约束,限制数据类型,确保不会输入无效值
添加默认约束
1、 在创建表时添加:
create table 表名(项 类型 default 3);
2、 通过alter语句添加:
alter table 表名 modify 项 类型 default 2;
3、删除默认约束:
alter table 表名 modify 项 类型;
参照完整性—表与表之间的数据参照引用,使用外键约束使用(外键必须能找到或为空)
1、当主表的记录被从表参照时,主表的记录不允许删除
2、如果要删除数据,需先从表中删除依赖该记录的数据
外键约束:constraint 约束名 foreign key (约束项)reference 表名(引用项)
或者:alter table 表名 add constraint 约束名 foreign key
三、 语法
1.create table 表名{
属性名 数据类型 【约束条件】,
属性名 数据类型 【约束条件】,
属性名 数据类型 【约束条件】
};
eg:creat table student{
id int primary key,
name varchar(10) not null,
age tinyint unsigned default 0,
height decimal(5,2),
gender enum(“male”,“famale”)
};
2.

四、CMD中mysql的使用

4.1 在cmd中查看初始数据库信息及命令
a.-在CMD中run mysql -u root -p,(如无密码)回车,进入MariaDB/mysql;
这里我进入的是MariaDB,两者的基本区别:
a.1–MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.
a.2–MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.
b.-输入‘show databases ;’ <记得分号> 然后出现以下界面
在这里插入图片描述 c.-use mysql ## 开始进入mysql—已从’none’ 切换为‘mysql’,这时无“;”
notes: 使用use + 数据库名,进错库时使用“exit;” 退出
我:use test
在这里插入图片描述d.-show tables; ## 显示数据库中的表
e.-show * from mysql.user; ## 查询mysql库下user表中的数据(出现很多很迷)
f.-desc user; # 查看user表中的数据结构,such as 下图
在这里插入图片描述g.- flush privileges; # 刷新数据库信息命令
h.-select host,user,password from user; #查看user表中host,user,password信息
在这里插入图片描述i.-select host,user,password from user where host="::1"; # 查询表中字段有关“::1”的数据
在这里插入图片描述4.2 传说中的增删改查
A.-新建数据表
a.1–Create table Person(表名) (
属性名 数据类型 【约束条件】,
属性名 数据类型 【约束条件】,
属性名 数据类型 【约束条件】
);
在这里插入图片描述a.2–desc Person(表名);
显示数据表的结构在这里插入图片描述b.新增列
alter table person(表名) add work[列名] varchar(255)[类型];
在这里插入图片描述c.删除列
alter table person[表名] drop column work[列名];
d.查询所需列数据
Select * from people; ##如果数据库数据多,使用此查询费时
select * from people where Id_P=02;
在这里插入图片描述e.修改表名
rename table people[旧表名] to person[新表名];
e.1–修改某一项数据值,如修改Id
update person set Id_p=5 where LastName=‘Nana’;
在这里插入图片描述
1、ORDER BY+ 排序:DESC:降序 ASC:升序
select * from 表名 order by 字段名 ASC/DESC;
2、GROUP BY :结果集进行分组
select 列名A,count() from 表名 group by 列名A;
3、Having
a、在group by 之前筛选用where,筛选的是分组前的数据
b、在group by 之后筛选用having,筛选的是分组后的数据
c、HAVING子句
仅用于*带有GROUP BY子句的查询中
d、having后面跟的条件判断的字段必须是聚合函数返回的结果,否则sql会报错
在这里插入图片描述

4、JION*
3.1 INNER JION:内连接 查询两表字段匹配关系的数据
select * from 表 a,表 b where a.列名=b.列名;
3.2 LEFT JION:左连接,以左表为主表,获取左表所有记录
select a. from 表 a LEFT JION 表 b ON where a.列名=b.列名;(以a 表为左表)
3.3 RIGHT JION:右连接,以右表为主表,获取右表所有记录*
select b.* from 表 a RIGHT JION 表 b ON where a.列名=b.列名;(以a 表为左表)
5、

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧农业是一种结合了现代信息技术,包括物联网、大数据、云计算等,对农业生产过程进行智能化管理和监控的新模式。它通过各种传感器和设备采集农业生产中的关键数据,如大气、土壤和水质参数,以及生物生长状态等,实现远程诊断和精准调控。智慧农业的核心价值在于提高农业生产效率,保障食品安全,实现资源的可持续利用,并为农业产业的转型升级提供支持。 智慧农业的实现依赖于多个子系统,包括但不限于设施蔬菜精细化种植管理系统、农业技术资料库、数据采集系统、防伪防串货系统、食品安全与质量追溯系统、应急追溯系统、灾情疫情防控系统、农业工作管理系统、远程诊断系统、监控中心、环境监测系统、智能环境控制系统等。这些系统共同构成了一个综合的信息管理和服务平台,使得农业生产者能够基于数据做出更加科学的决策。 数据采集是智慧农业的基础。通过手工录入、传感器自动采集、移动端录入、条码/RFID扫描录入、拍照录入以及GPS和遥感技术等多种方式,智慧农业系统能够全面收集农业生产过程中的各种数据。这些数据不仅包括环境参数,还涵盖了生长状态、加工保存、检验检疫等环节,为农业生产提供了全面的数据支持。 智慧农业的应用前景广阔,它不仅能够提升农业生产的管理水平,还能够通过各种应用系统,如库房管理、无公害监控、物资管理、成本控制等,为农业生产者提供全面的服务。此外,智慧农业还能够支持政府监管,通过发病报告、投入品报告、死亡报告等,加强农业产品的安全管理和质量控制。 面对智慧农业的建设和发展,存在一些挑战,如投资成本高、生产过程标准化难度大、数据采集和监测的技术难题等。为了克服这些挑战,需要政府、企业和相关机构的共同努力,通过政策支持、技术创新和教育培训等手段,推动智慧农业的健康发展。智慧农业的建设需要明确建设目的,选择合适的系统模块,并制定合理的设备布署方案,以实现农业生产的智能化、精准化和高效化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值