MySQL总结(1)

MySQL流程操作:

登录:(快捷键Windows+R)

mysql -u (用户名称)-p(密码)

创建数据库:

create database + 数据库名称;(以;作为结束标记)

选择一个数据库:

use + 数据库名称;(此时若显示"Database changed"即为成功)

创建表:

create table +表的名称(属性1 类型 完整性约束条件【可无】,属性2 类型 …,属性n 类型);

----> 完整性约束条件的说明:

primary key:(不为空 不能重复 且只有一个)表示当前属性为该表的主键 可区分不同的行记录。
foreign key:修饰的属性为该表的外键,表之间关联使用的键。
not null:表示属性不为空。
unique:表示属性值唯一。
auto-increment:(MySQL的特色)表示属性自增,自增类型为整形。
default :给属性设定默认值。

----> 表的说明:

:元组
:属性
阈值:属性的取值范围

----> 创建表的原则----范式,一般范式有以下几种:

第一范式:1NF 每列保持原子性
第二范式:2NF非主属性完全依赖于主键
第三范式:3NF属性不依赖与其他非主属性(一般都是第三范式)
BC范式:一个表只能有一个候选键(即不重复的属性)
第四范式

修改表的名称:

alter table 旧表名称 rename 新表名称;

查看表的详细结构:

show create table +表的名称;

查看表的结构:

desc+表的名称;

只修改表的属性的数据类型:

alter table 表名 modify+ 属性名+新类型;
同时修改表的属性名和数据类型:
alter table +表名 change +旧属性名+新属性名+新数据类型;

增加字段:

alter table +表名 add+ 属性名 +数据类型 +(完整性约束条件)+first/after某个属性名;

删除字段:

alter table 表名+drop 属性名;

修改字段位置:

alter table 表名 modify 属性名 类型 first/after +某个属性名;

删除表的外键约束:

alter table 表名 drop foreign key 属性名;

删除表:

drop table 表名;(单表)
先删子表,再删父表(联表)

插入数据:

insert into 表名 values(,,,),(,,,);
若数据为字符类型则需要用‘ ’,插入完可通过 select* from表名;查看表。

更新数据:

update 表名 set 属性1=…,属性2=… where+条件;

查询数据:

select+(*:代表查询全部)(还可+某个属性)

—>where +条件;(不能与group by同时使用 得用having+筛选条件)

where后的条件的几种关键字
关键字in:表示范围(与between and 关键字用法所表示的含义一样);
关键字like:当条件为完整字符串时则等价于‘=’(‘_’只表示一个字符‘%’表示字符串)
关键字空值:属性名+is null;
关键字and和or
关键字limit off,len:off表示从第几位开始;len表示共几位

—>group by+属性:表示按某个属性分组
—>order by +属性:表示按照某个属性排序(其中+ASC 是正常默认排序+DESC是相反顺序排序)
连接查询:

外连接查询(可查出相同字段相等时的数据):select 属性1,2…from 表1,2…where+两表连接条件;
内连接查询(字段相同时取值不等):select 属性1,2…from 表1,2…left join(左连接)/right join(右连接查询)on +连接条件;
复合连接查询:select 属性1,2,…from 表1,2…where +条件 and+条件;

子查询:

select 属性 from 表 where 属性+关键字(select 属性 from 某个表);
关键字:in,exists,any,all

常用函数:

count(属性名)表示计数;sum()表示总和;avg()表示平均;max()表示最大值;min()表示最小值;cast函数:用于数据类型的转换一般用法是:cast(字段名+as+转换类型);dec函数:dec(总位数,小数点后保留位数)

删除语句:

delete from 表名 where +条件;

查询表的详细结构(也可以查看表的字段名、字段的数据类型、完整性约束条件、表的默认存储引擎和字符编码、数据库的默认编码等信息):

show create table +表名;

改变编码形式:

法1:(最方便)使用char 或者varchar换成nchar或nvarchar;
法2:建表时在属性类型后边加一个character set utf8;
法3:建完表后执行语句:alter table 表名modify…character set utf8;
前三种方法都是只改变一个属性的编码形式;
法4:(改变整张表的编码形式用于建表时)create table 表名()charset=utf8;

存储引擎engine(表的类型):

InnoDB:.ibd表的数据结构和表的索引;.frm表的结构;
myIsam:.frm表的结构;.myd表的数据;.myi表的索引;
memory:存储内存中的一种类型;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图像识别技术在病虫害检测中的应用是一个快速发展的领域,它结合了计算机视觉和机器学习算法来自动识别和分类植物上的病虫害。以下是这一技术的一些关键步骤和组成部分: 1. **数据收集**:首先需要收集大量的植物图像数据,这些数据包括健康植物的图像以及受不同病虫害影响的植物图像。 2. **图像预处理**:对收集到的图像进行处理,以提高后续分析的准确性。这可能包括调整亮度、对比度、去噪、裁剪、缩放等。 3. **特征提取**:从图像中提取有助于识别病虫害的特征。这些特征可能包括颜色、纹理、形状、边缘等。 4. **模型训练**:使用机器学习算法(如支持向量机、随机森林、卷积神经网络等)来训练模型。训练过程中,算法会学习如何根据提取的特征来识别不同的病虫害。 5. **模型验证和测试**:在独立的测试集上验证模型的性能,以确保其准确性和泛化能力。 6. **部署和应用**:将训练好的模型部署到实际的病虫害检测系统中,可以是移动应用、网页服务或集成到智能农业设备中。 7. **实时监测**:在实际应用中,系统可以实时接收植物图像,并快速给出病虫害的检测结果。 8. **持续学习**:随着时间的推移,系统可以不断学习新的病虫害样本,以提高其识别能力。 9. **用户界面**:为了方便用户使用,通常会有一个用户友好的界面,显示检测结果,并提供进一步的指导或建议。 这项技术的优势在于它可以快速、准确地识别出病虫害,甚至在早期阶段就能发现问题,从而及时采取措施。此外,它还可以减少对化学农药的依赖,支持可持续农业发展。随着技术的不断进步,图像识别在病虫害检测中的应用将越来越广泛。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值