MySQL数据库
MySQL数据库笔记
不用氪金的小马哥
我是一个深藏不露的伪技术宅
展开
-
第一节----MySQL概述
①常见命令:--显示数据库show databases;--进入某个数据库use sys;--查看当前库的所有表show tables;----查看其他库的所有表show tables from mysql;--查看在哪个库select database();--建表create table stuinfo(id int,name varchar(2));--查看表结构desc stuinfo;--查看数据select * from stuinfo;--查看MySQL服务端原创 2021-01-18 17:29:40 · 55 阅读 · 0 评论 -
第二节----查询(DQL)
①基础查询#语法:select 查询列表 from 表名;#特点:1.查询列表可以是:表中的字段、常量值、表达式、函数2.查询的结果是一个虚拟的表格#查询单个字段select lastname from employees;#查询表中的多个字段select last_name,salary,email from employees;#查询表中的所有字段select from employees;#查询常量值select 100;select 'jhon';#查询表达式sel原创 2021-01-18 17:36:16 · 63 阅读 · 0 评论 -
第三节----常见函数
功能:类似于Java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名好处:1.隐藏了实现细节 2.提高代码的重用性调用:select()from 表;特点:1.函数名 2.函数功能分类:1.单行函数:concat、ifnull 2.分组函数:做统计使用,又称为统计函数、聚合函数、组函数一、单行函数①字符函数#length:获取参数值的字节个数select length ('jhon');select length ('zhangsanfenghahaha原创 2021-01-18 17:40:14 · 145 阅读 · 0 评论 -
第四节----子查询
含义:出现在其他语句中的select语句,称为子查询或内查询分类: 按子查询出现的位置: select后面: 仅支持标量子查询 from后面: 支持表子查询 where或having后面: 标量子查询 列子查询 行子查询 exists(相关子查询)原创 2021-01-18 17:43:23 · 83 阅读 · 0 评论 -
第五节----分页查询
应用场景:当要显示的数据,一页显示不全,需要分页提交SQL请求语法:select 查询列表 from 表 【join type】 join 表2 on 连接条件 where group by 分组字段 having 分组后的筛选 order by 排序的字段 limit offset,size;offset:要显示条目的起始索引(起始索引从0开始)size:要显示的条目个数特点:①limit语句放在查询语句的最后 ②公式:要显示的页数page,每页的条目数size:select 查询列原创 2021-01-18 17:44:21 · 83 阅读 · 0 评论 -
第六节----DML语言
数据库操作语言:插入:insert修改:update删除:delete一、插入语句方式一:语法:insert into 表名 (列名,......) values(值1,......)#1.插入的值的类型要与列的类型一致或兼容insert into beauty (id,name,sex,borndate,phone,photo,boyfriend_id) values(13,'唐艺昕','女','1990-4-23','1898888',null,2);#2.不可以为null的列必原创 2021-01-19 15:47:39 · 88 阅读 · 0 评论 -
第七节----DDL语言
一、库的管理#1.库的创建语法:create database [ if not exists] 库名;#案例1:创建库bookscreate database books;#2.库的修改rename database books to 新库名;#更改库的字符集alter database books character set utf8;#3.库的删除drop database books;二、表的管理#1.表的创建语法:create table 表名(列名 列的类型【(长度原创 2021-01-20 19:14:59 · 116 阅读 · 0 评论 -
第八节----数据类型
数值型: 整型 小数: 定点数 浮点数字符型: 较短的文本:char、varchar 较长的文本:text、blob(较长的二进制数据)日期型: 一、整型:特点:①如果不设置无符号还是有符号,默认是有符号,如果设置无符号,需要添加unsigned②如果插入的数值超出了整数的范围,会报out of range异常,并且插入临界值③如果不设置长度,会有默认的长度长度代表了显示的最大宽度,如果不够会在用0原创 2021-01-20 19:27:48 · 219 阅读 · 0 评论 -
第九节----约束
含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性分类:六大约束 not null:非空,用于保证该字段的值不能为空 比如:姓名、学号 default:默认,用于保证该字段有默认值 比如:性别 primary key:主键,用于保证该字段的值具有唯一性,并且非空 比如:学号、员工编号等 unique:唯一,用于保证该字段的值具有唯一性,可以为空 比如:座位号 check:检查约束【原创 2021-01-20 19:28:59 · 84 阅读 · 0 评论 -
第十节----标识列
又称为自增长列含义:可以不用手动的插入值,系统提供默认的序列值特点:①不一定与主键搭配,但要求是一个key②一个表至多一个标识列③标识列的类型只能是数值型④标识列可以通过 set auto_increment=3;设置步长,可以通过手动插入值,设置起始值一、创建表时设置标识列create table tab_identity(id int primary key auto_increment,name varchar(20));insert into tab_identity value原创 2021-01-21 18:43:08 · 100 阅读 · 0 评论 -
第十一节----事务
TCL:Transaction control language(事务控制语言)事务:一个或一组sql语句组成一个执行单元,这个执行要么全部执行,要么全部不执行特点(ACID):1. 原子性(Atomicity)原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。2. 一致性(Consistency)事务必须使数据库从一个一致性状态变换到另外一个一致性状态 。3. 隔离性(Isolation)事务的隔离性是指一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使原创 2021-01-21 18:44:38 · 82 阅读 · 0 评论 -
第十二节----视图
含义:虚拟表,和普通的表一样使用,行和列的数据来自定义视图的查询中使用的表 ,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果应用场景: 多个地方用到同样的查询结果 该查询结果使用的sql语句较复杂视图和表的对比: 创建语法的关键字 是否实际占用物理空间 使用 视图 create view 只是保存了sql逻辑 增删改查,只是一般不能增删改表 create table原创 2021-01-21 18:45:24 · 137 阅读 · 0 评论 -
第十三节----变量
系统变量: 全局变量 会话变量自定义变量: 用户变量 局部变量一、系统变量说明:变量由系统提供,不是用户定义,属于服务器层面使用语法:1.查看所有的系统变量show global|【session】variables;2.查看满足条件的部分系统变量show global|【session】variables like '%char%';3.查看指定的某个系统变量的值select @@global|【session】.系统变量名;4.为某原创 2021-01-21 18:45:59 · 108 阅读 · 0 评论 -
第十四节----流程控制
顺序结构:程序从上往下依次执行分支结构:查询从两条或多条路径中选择一条去执行循环结构:程序在满足一定条件按的基础上,重复执行一段代码一、分支结构#1.if函数功能:实现简单的双分支语法:select if(表达式1,表达式2,表达式3)执行顺序:如果表达式1成立,则if函数返回表达式2的值,否则返回表达式3的值应用:任何地方#2.case结构:情况1:一般用于等值判断语法: case 变量|表达式|字段 when 要判断的值 then 返回的值1; when 要判断的值 t原创 2021-01-21 18:46:35 · 80 阅读 · 0 评论