今日目录
1、MySQL的简介
2、MySQL的安装
3、MySQL的配置
一、MySQL的简介
1、MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
2、MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
3、MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
百度百科:MySQL的简介
二、MySQL的安装
1、下载MySQL:最新版MySQL下载地址,但是我推荐用低版本:百度云盘下载 密码:yo5q
2、安装:
第一步:双击下载的安装包,勾选同意,然后点击下一步:
第二步:选中Typitail,然后一直下一步,直到出现这个界面,然后点下一步
第三步:然后一直下一步,直到出现这个界面,
第四步:然后输入密码,然后下一步,选着Execute,然后finish,
三、MySQL的配置
1、MySQL的安装路径下的bin目录(C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin)配置到高级环境变量:
2、检验Mysql安装是否成功
mysql -u root -p
图形化工具:百度云盘下载 密码:yo5q,安装和破解我就不多说了,安装好mysql后,安装SQLyog,点击注册表就破解好了,就是这么简单。。
今日目录
1、整数类型、浮点数类型和定点数类型
2、日期与时间类型
3、字符串类型
4、二进制类型
一、整数类型、浮点数类型和定点数类型
1、整数类型
定点数类型
M:数据的总长度(不包括小数位);D:小数位
二、日期与时间类型
字符串类型
二进制类型
今日目录
1、数据库简介
2、显示所有数据库
3、创建数据库
4、删除数据库
一、数据库简介
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库;
二、显示所有数据库
show databases;
三、创建数据库
create database 数据库名;
四、删除数据库
drop database 数据库名;
今日目录
1、创建表
2、查看表结构
3、修改表
4、删除表
一、创建表
表是数据库存储数据的基本单位。一个表包含若干字段或记录;
语法:
CREATE TABLE 表名(
属性名 数据类型 [完整性约束条件],
属性名 数据类型 [完整性约束条件],
.
.
属性名 数据表格 [完整性约束条件]
);
二、查看表结构
1、查看基本表结构: DESCRIBE(DESC) 表名;
2、查看表详细结构: SHOW CREATE TABLE 表名
三、修改表
1、修改表名:ALTER TABLE 旧表名 RENMAE 新表名 ;
2、修改字段:ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型
3、增加字段:ALTER TABLE 表名 ADD 属性名 1 数据类型 [完整性约束条件] [FIRST |AFTER 属性名 2]
4、删除字段:ALTER TABLE 表名 DROP 属性名
四、删除表
1、删除表:DROP TABLE 表名;
今日目录
1、插入数据
2、查询数据
3、更新数据
4、删除数据
用到的数据库:表一:
/*
SQLyog 企业版 - MySQL GUI v8.14
MySQL - 5.1.49-community
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
create table `t_grade` (
`id` int ,
`stuName` varchar (60),
`course` varchar (60),
`score` int
);
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('1','张三','语文','91');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('2','张三','数学','90');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('3','张三','英语','87');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('4','李四','语文','79');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('5','李四','数学','95');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('6','李四','英语','80');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('7','王五','语文','77');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('8','王五','数学','81');
insert into `t_grade` (`id`, `stuName`, `course`, `score`) values('9','王五','英语','89');
表二:
/*
SQLyog 企业版 - MySQL GUI v8.14
MySQL - 5.1.49-community
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
create table `t_student` (
`id` double ,
`stuName` varchar (60),
`age` double ,
`sex` varchar (30),
`gradeName` varchar (60)
);
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('1','张三','23','男','一年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('2','张三丰','25','男','二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('3','李四','23','男','一年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('4','王五','22','男','三年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('5','珍妮','21','女','一年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('6','李娜','26','女','二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('7','王峰','20','男','三年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('8','梦娜','21','女','二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('9','小黑','22','男','一年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('10','追风','25','男','二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('11','小小张三','21',NULL,'二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('12','小张三','23','男','二年级');
insert into `t_student` (`id`, `stuName`, `age`, `sex`, `gradeName`) values('13','张三锋小','24',NULL,'二年级');
表三:
/*
SQLyog 企业版 - MySQL GUI v8.14
MySQL - 5.1.49-community : Database - db_book
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_book` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `db_book`;
/*Table structure for table `t_book` */
DROP TABLE IF EXISTS `t_book`;
CREATE TABLE `t_book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`bookName` varchar(20) DEFAULT NULL,
`price` decimal(6,2) DEFAULT NULL,
`author` varchar(20) DEFAULT NULL,
`bookTypeId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
/*Data for the table `t_book` */
insert into `t_book`(`id`,`bookName`,`price`,`author`,`bookTypeId`) values (1,'Java编程思想','100.00','埃史尔',1),(2,'Java从入门到精通','80.00','李钟尉',1),(3,'三剑客','70.00','大仲马',2),(4,'生理学(第二版)','24.00','刘先国',4);
/*Table structure for table `t_booktype` */
DROP TABLE IF EXISTS `t_booktype`;
CREATE TABLE `t_booktype` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`bookTypeName` varchar(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
/*Data for the table `t_booktype` */
insert into `t_booktype`(`id`,`bookTypeName`) values (1,'计算机类'),(2,'文学类'),(3,'教育类');
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
表四:
/*
SQLyog 企业版 - MySQL GUI v8.14
MySQL - 5.1.49-community
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
create table `t_pricelevel` (
`id` int ,
`priceLevel` int ,
`price` float ,
`description` varchar (300)
);
insert into `t_pricelevel` (`id`, `priceLevel`, `price`, `description`) values('1','1','80.00','价格贵的书');
insert into `t_pricelevel` (`id`, `priceLevel`, `price`, `description`) values('2','2','60.00','价格适中的书');
insert into `t_pricelevel` (`id`, `priceLevel`, `price`, `description`) values('3','3','40.00','价格便宜的书');
一、插入数据
1、给表的所有字段插入数据
格式:INSERT INTO 表名 VALUES(值 1,值 2,值 3,...,值 n);
2、给表的指定字段插入数据
格式:INSERT INTO 表名(属性 1,属性 2,...,属性 n) VALUES(值 1,值 2,值 3,...,值 n);
3、同时插入多条数据
格式: INSERT INTO 表名 [(属性列表)]VALUES(取值列表 1),(取值列表 2) ...,(取值列表 n);
二、查询数据
1、单表查询
1.1、查询所有字段
1.1.1、SELECT 字段 1,字段 2,字段 3...FROM 表名;
1.1.2、SELECT * FROM 表名;
1.2、查询指定字段
1、SELECT 字段 1,字段 2,字段 3...FROM 表名;
1.3、Where 条件查询
1、SELECT 字段 1,字段 2,字段 3...FROM 表名 WHERE 条件表达式;
1.4、带 IN 关键字查询
1,SELECT 字段 1,字段 2,字段 3...FROM 表名 WHERE 字段 [NOT] IN (元素 1,元素 2,元素 3);
1.5、带 BETWEENAND 的范围查询
1、SELECT 字段 1,字段 2,字段 3...FROM 表名 WHERE 字段 [NOT] BETWEEN 取值 1 AND 取值 2;
1.6、带 LIKE 的模糊查询
1、SELECT 字段 1,字段 2,字段 3...FROM 表名 WHERE 字段 [NOT] LIKE ‘字符串’;“%”代表任意字符;“_” 代表单个字符;
1.7、空值查询
1、SELECT 字段 1,字段 2,字段 3...FROM 表名 WHERE 字段 IS [NOT] NULL;
1.8、带 AND 的多条件查询
1、SELECT 字段 1,字段 2...FROM 表名 WHERE 条件表达式 1 AND 条件表达式 2 [...AND 条件表达式 n]
1.9、带 OR 的多条件查询
1、SELECT 字段 1,字段 2...FROM 表名 WHERE 条件表达式 1 OR 条件表达式 2 [...OR 条件表达式 n]
1.10、DISTINCT 去重复查询
1、SELECT DISTINCT 字段名 FROM 表名;
1.11、对查询结果排序
1、SELECT 字段 1,字段 2...FROM 表名 ORDER BY 属性名 [ASC|DESC]
1.12、GROUP BY 分组查询
1、GROUP BY 属性名 [HAVING 条件表达式][WITH ROLLUP]
1,单独使用(毫无意义);
2,与 GROUP_CONCAT()函数一起使用;
3,与聚合函数一起使用;
4,与 HAVING 一起使用(限制输出的结果);
5,与 WITH ROLLUP 一起使用(最后加入一个总和行);
1.13、LIMIT 分页查询
1、SELECT 字段 1,字段 2...FROM 表名 LIMIT 初始位置,记录数;
2、使用聚合函数查询
2.1、COUNT()函数
1、COUNT()函数用来统计记录的条数,与 GOUPE BY 关键字一起使用;
2.2、SUN()函数
1、SUN()函数函数用来统计记录的条数,与 GOUPE BY 关键字一起使用;
2.3、AVG()函数
1、AVG()函数用来统计记录的条数,与 GOUPE BY 关键字一起使用;
2.4、MAX()函数
1、MAX()函数用来统计记录的条数,与 GOUPE BY 关键字一起使用;
2.5、MIN()函数
1、MIN()函数用来统计记录的条数,与 GOUPE BY 关键字一起使用;
3、连接查询
连接查询是将两个或两个以上的表按照某个条件连接起来,从中选取需要的数据;
3.1、内连接查询
内连接查询是一种最常用的连接查询。内连接查询可以查询两个或者两个以上的表
3.2、外连接查询
外连接可以查出某一张表的所有信息;SELECT 属性名列表 FROM 表名 1 LEFT|RIGHT JOIN 表名 2 ON 表名 1.属性名 1=表名 2.属性名 2;
3.2.1、 左连接查询
可以查询出“表名 1”的所有记录,而“表名 2”中,只能查询出匹配的记录;
3.2.2、右连接查询
可以查询出“表名 2”的所有记录,而“表名 1”中,只能查询出匹配的记录;
3.3、多条件连接查询
4、子查询
4.1、带 In 关键字的子查询:一个查询语句的条件可能落在另一个 SELECT 语句的查询结果中。
4.2、带比较运算符的子查询:子查询可以使用比较运算符;
4.3、带 Exists 关键字的子查询:假如子查询查询到记录,则进行外层查询,否则,不执行外层查询
4.4、带 Any 关键字的子查询:ANY 关键字表示满足其中任一条件;
4.5、带 All 关键字的子查询:ALL 关键字表示满足所有条件;
5、合并查询结果
5.1、UNION:使用 UNION 关键字是,数据库系统会将所有的查询结果合并到一起,然后去除掉相同的记录;
5.2、UNION ALL:使用 UNION ALL,不会去除掉系统的记录;
6、为表和字段去别名
6.1、为表取别名
格式: 表名 表的别名
6.2、为字段取别名
格式: 属性名 [AS] 别名
三、更新数据
1、UPDATE 表名 SET 属性名 1=取值 1,属性名 2=取值 2,...,属性名 n=取值 n WHERE 条件表达式;
四、删除数据
1、DELETE FROM 表名 [WHERE 条件表达式];
添加小编微信可以获取免费资源,二维码
要用到的工具,关注公众号直接免费获取:
领取专属 10元无门槛券
私享最新 技术干货