位置: 编程技术 - 正文

三十分钟MySQL快速入门(图解)(mysql速成要多久)

编辑:rootadmin

推荐整理分享三十分钟MySQL快速入门(图解)(mysql速成要多久),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql一秒可以存多少数据,mysql一秒钟能处理多少条数据,mysql时间在30天内,mysql速成要多久,mysql 时间 分钟,mysql速成要多久,mysql 时间 分钟,mysql一秒钟能处理多少条数据,内容如对您有帮助,希望把文章链接给更多的朋友!

一、MySQL安装

MySQL的下载

Workbench 6.3 CE进入MySQL客户端

二、SQL基础

SQL语句分类

1.DDL(Data Definition Languages)语句:数据定义语言,这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象。常用的语句关键字主要包括create/drop/alter

2.DML(Data Manipulation Language)语句:数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。常用的语句关键字主要包括 insert/delete/update/select等

3.DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可和访问级别的语句。这些语句定义了数据库、表、字段、用户的访问权限和安全级别。主要的语句关键字包括grant/revoke等

DDL语句(涉及表的定义、结构的修改)

一、create语句

Query Ok代表语句执行成功

1 row affected代表数据库一行收到影响

0. sec代表操作执行的时间

1.查看系统中都存在哪些数据库(show databases;)

2.在查看系统中已有的数据库后,可以用(use dbname)选择对应的数据库

3.在选择对应的数据库后,查询该数据库下面的所有的表(show tables)

二、删除数据库

删除数据库的语法:drop databse dbname;

三、创建表

语法:create table tablename(column_name_1 column_type_1 constraints,column_name_2 column_type2 constrationts)

mysql的表名是以目录形式存储在磁盘上,表名的字符可以是任何目录名允许的字符。

column_name是列名

column_type是列的数据类型

constrationts是列的约束条件

1.查看表定义:desc tablename

2.查看创建表的SQL语句:show create table tablename

四、删除表

删除表的语法:drop table tablename;

五、修改表

aleter 语法 | 说明

修改字段的排列顺序

在alter的语法后面都有[firstafter columnname]可选项

DML(对数据库表记录进行操作,增(insert)删(delete)改(update)查(select))

1.insert语句

语法:

插入一条:insert into tablename(columnname1,columnname2...)values(val1,val2...);

插入多条:insert into tablename(columnname1,columnname2...)values(val1,val2...),(val1,val2...);

2.update语句

语法:update tablename set columnname=value [where condition]

如果使用MySQL Workbench,update语句不加where条件的会执行错误,需要如下图设置取消设置:

-3.delete语句

语法:delete from tablename where condition

-4.select语句

语法:select * from tablename [where condition]

5.表连接

1.内连接(仅选出两张表中互相匹配的数据)

2.外连接

外连接又区分:

1.左连接(left join):包含左边表的所有记录,右边没有的为Null

2.右连接(right join):包含右边表的所有记录,左边没有的为null

6.子查询

-7.记录联合

语法:

union all与union的区别:

union all是把结果集直接合并在一起,而union是将union all后的结果进行一次distinct,去除重复后的结果

DCL语句(DCL语句主要是dba用来管理系统中的对象权限)

grant与revoke

三、MySQL支持的数据类型

数值类型

MySQL支持类型后面的小括号指定显示宽度,例如:int(5)表示当数值宽度小于5的时候在数字前面填满宽度,如果不显示指定宽度则默认为int()。如果插入的数据大于这个数值宽度,对实际的插入值是没有影响的,是按照int类型的实际大小进行的。

数据插入bit类型字段时,首先转换为二进制,如果位数允许,将插入成功,如果位数小于实际的位置,则插入失败。

日期时间类型

mysql里面获取当前时间为now().mssql获取当前时间为getdate()

timestamp,支持的范围非常小,从-年,timestamp受时区的影响

系统会自动给tp赋予默认值current_timestamp(系统日期),但是mysql只给第一个timestamp设置默认值,如果有第二个timestamp类型,则默认值设置为0

字符串类型

1.char与varchar类型的区别:

char列最后的空格已经删除,而varchar保留空格

四、MySQL中运算符

算术运算符

比较运算符,满足返回1,否则返回0

逻辑运算符(布尔运算符)

位运算符

运算符优先级,大多情况下使用()进行操作

五、常用函数

三十分钟MySQL快速入门(图解)(mysql速成要多久)

字符串函数

数值函数

日期和时间函数

流程函数

其他函数

六、选择合适的数据类型

char与varchar

在Innodb存储引擎中,建议使用varchar类型。对于Innodb数据表,内部的行存储格式没有区分固定长度和可变长度列,因此固定长度列的性能不一定比不可变长度的性能好。

Text与blob

一般在保存少量字符串的时候,我们会选择char或者varchar,而在保存较大文本的时候,通常会选择使用text或者blob。两者的区别:text只能保存字符数据,比如日志。blob能保存二进制数据,比如照片。

浮点数与定点数

在MySQL中,decimal或者(numberic)用来表示定点数

日期类型的选择

date/time/datetime/timestamp

七、索引的设计和使用

索引概述

索引是数据库中用来提高性能的最常用工具。在MySQL中,MyISAM与Innodb存储引擎的表默认创建的都是Btree索引。

1.索引的创建

insert into indextest (memberid,createtime,orderserial)values(,'--','sz')说明:上面创建一个表,其中定义orderserial为唯一索引。

语法:create [uniquefulltextspatial] index index_name on tablename(columname)

2.设计索引的原则

1.最合适的索引列是出现在where子句中列,或连接子句中指定的列,而不是出现在select关键字后面的选择列表的列

2.使用唯一索引,需要考虑列中某个值得分布,如果索引列种的基数越大,则索引的效果越好。举个例子:订单号就可以设置唯一索引,因为订单号的不一样。而对于rowstatus就无须了,因为rowstatus要么是有效要么是无效。这样的筛选出的范围还是很多,没有意义

3.不要过度索引。因为所有也要占用额外的磁盘空间,如果一个索引很少使用,那么会不必要的减缓表的修改速度显示MySQL的执行计划:explain 后面加mysql语句

八、视图

视图(View)

定义:视图是一种虚拟存在的表,对于使用视图的用户来说基本上是透明的,视图并不是在数据库中实际存在。

优势:

1.简单,用户完全不需要关心后面对应的表的结构/关联条件和筛选条件。对用户来说已经是过滤好的符合条件的结果集

2.安全,使用视图的用户只能访问他们被允许查询的结果集

3.数据独立,一旦视图的结构确定了,可以屏蔽表结构变化对用户的影响,源表增加列对视图没有影响。

语法:

1.创建create [or replace] view viewName as select ...

2.查询 select * from 视图名称

3.展示视图 show tables;

4.删除视图 drop view viewname

九、存储过程和函数

一、存储过程(store procedure)和函数

存储过程和函数是事先经过编译并存在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的

语法:

注释:delimiter $$命令就是将语句的结束符从分号;修改成其他符号,这里指的是$$为结尾。这样在number后面的分号就不会认为结束。

1.调用存储过程

2.存储过程的好处

逻辑封装在数据库端,调用者不需要了解中间的处理逻辑,一旦调用逻辑发生变化,只需要修改存储过程即可,而对调用者的程序完全没有影响。

3.删除存储过程

4.查看存储过程差状态

5.查询存储过程的定义

二、存储过程变量的使用

存储过程可以使用变量,并且在MySQL5.1版本后,不区分大小写

1.变量的定义

变量的作用域只能在begin...end块中,可以嵌套在块中

declare currentTime date;

2.变量的赋值

3.定义条件和处理

handler_type:

1.continue;2.exit;3.undo;

condition_value:

1.sqlstate2.sqlwarning3.not found4.sqlexception

eg: declare continue handler for sqlstate '2' set @x=1;

三、光标的使用

在存储过程和函数中,可以使用光标对结果集进行循环处理,光标的使用包含光标的声明: open、fetch、close

定义:

declare cur_id cursor for select * from orders;open cur_id;fetch cur_id;close cur_id;

四、事件调度器

事件调度器是MySQL5.1后面新增的功能,可以将数据库按照自定义时间周期触发某种操作。数据库默认操作是关闭的。需要打开

十、 触发器

触发器

触发器是在5.版本后支持的,触发器是与表有关的数据库对象,在满足条件时触发,并执行触发器中定义的语句集合。可以协助应用在数据库端确保数据的完整性

解释:上面描述的是创建一个触发器,当往订单表中插入数据之后,在订单日志表插入一条记录。使用old和new来引用触发器发生变化的记录内容,目前只支出行级触发,不支持语句级触发

触发器执行的顺序

十一、 事务控制和锁定语句

MySQL存储引擎的事务说明

1.Lock Table与Unlock Table

语法:

use finance;lock table orders read;unlock table;

如果某个进程(session1)lock定了表,那么其他的进程(session2)可以查询,但是不能进行更新操作,直到第一个进程释放了锁

2.事务控制

十二、总结

很高兴您能阅读到这里,可能在三十分钟很难吸收这么多的知识,这篇文章也是我之前学习MySQL笔记整合的。这篇文章也是理论偏多,对于其中比较比较难理解知识点写些Demo,权当个人理解,如有不足的地方,请您指出。如果对您有所帮助,请点个赞!

macOS安装Solr并索引MySQL 安装Java语言的软件开发工具包brewcaskinstalljava或者在Oracle官网中选择Mac版本jdk-8u-macosx-x.dmg下载并安装。安装Solrbrewinstallsolr当前(--)brew源的Solr版

mysql 通过拷贝数据文件的方式进行数据库迁移实例 mysql通过拷贝数据文件的方式进行数据库迁移--环境windows将源机器A数据库拷贝到目标机器B:我先在目标机器B上安装MySQL,停止mysql服务,然后将源机器A的

mysql 启动错误 问题及解决方法 本文向码农们介绍mysql服务无法启动报错误解决方法。试了谷歌到的几种方法,都没有解决,然后突然想起在启动apache的时候,iis的端口占用情况(

标签: mysql速成要多久

本文链接地址:https://www.jiuchutong.com/biancheng/349253.html 转载请保留说明!

上一篇:详解MySQL恢复psc文件记录数为0的解决方案(恢复mysql数据库)

下一篇:macOS安装Solr并索引MySQL(mac安装surge)

  • 税务机关如何处理公司多交税
  • 研发活动计入当期损益怎么计算
  • 城镇土地使用税纳税义务发生时间
  • 无金额的合同印章有效吗
  • 个人为什么不能寄活鱼
  • 非关联企业之间无偿借款要交税嘛
  • 员工旅游费怎么记账
  • 堤围费是什么意思
  • 管理费用福利费和应付职工薪酬福利费区别
  • 高危行业企业安全费用提取
  • 其他应收款利息收入税务规定
  • 公司账户存定期 定期要做利息出纳账吗
  • 从个人处借款的法律规定
  • 快递费的进项税可以抵扣吗
  • 购入的固定资产
  • 租赁公司运输费计入什么科目
  • 营业账簿印花税怎么算
  • 所得税税负率是多少
  • 风险纳税人如何解除
  • 废旧物资销售如何征税
  • 分期付款确认收入借方写啥
  • 广告费预付后收条怎么写
  • 不动产登记房屋已竣工的材料
  • 知道发票代码怎么查询发票号码
  • 无法取得发票的费用如何入账
  • 1697511073
  • 房产税计税依据是含税还是不含税
  • 应收账款坏账收回影响利润么
  • 购买办公用品发放给各部门使用
  • 现金流量表的编制方法
  • 主营业务收入和营业收入的区别
  • PHP:preg_quote()的用法_PCRE正则函数
  • PHP:session_unregister()的用法_Session函数
  • 挂账多年的往来账怎么处理
  • 软件企业职工培训费税前扣除标准
  • 交易性金融资产属于流动资产
  • 内置天线手机
  • 生产企业出口退税全部流程
  • 流动资产占总资产比重多少较为合适
  • 跨年度广告费需不需要摊销
  • 外币借款费用
  • 固定资产已提完折旧后丢失怎么处理
  • vue 组件调用
  • 无需本地部署的软件
  • jqueryfor
  • 语义分割入门教程
  • ijk解码是什么意思
  • 退还多缴纳税款
  • 固定资产盘盈、盘亏的账务处理?
  • 原财政补助结余对应新账
  • 公司收不到的账款而发不出去怎么办
  • 土增税预征计征依据
  • js日期选择
  • 增值税加计扣除计入什么科目
  • 应税货物及劳务 增加
  • 税金及附加需不需要计提
  • 代开租金发票的税金怎样入账?
  • 进口免税产品如何开票
  • 未分配利润为负代表什么
  • 账务处理程序是指什么
  • 增值税专用发票查询系统官方网站
  • 因产品质量问题造成的损失怎么赔偿
  • 事业单位用电收费标准
  • 会计学主要是学什么
  • 设立明细账的目的
  • CentOS7下MySQL5.7安装配置方法图文教程(YUM)
  • 加入跨子网路由什么协议
  • 直接在u盘上工作
  • win7系统多久不动自动关机
  • centos 做bond
  • win10自定义你的设备有什么用
  • linux和windows的区别?
  • Win10 PC版 Build 14328上手体验视频评测
  • JavaScript中的NaN代表什么
  • linux的启动顺序
  • cmd更改文件属性
  • python中2和2.0的区别
  • 清理服务器c盘
  • python datetime.now
  • js缩小图片尺寸
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设