JavaWeb笔记第一弹
一、MYSQL的安装
1、MYSQL的安装
可以去官网找到与自身计算机向对应的版本进行下载
网址如下:
MySQL :: Download MySQL Community Server
2、MYSQL的环境配置
前往设置中的设置环境变量,新建一个名为MYSQL_HOME的系统变量
如图所示:
再通过浏览目录到MYSQL的下载位置,保存
再选择编辑Path变量,在里面新建一个名为%MYSQL_HOME%\bin的变量,点击保存
3、MYSQL的相关配置
可以查看该网址:(菜鸟教程)https://www.runoob.com/mysql/mysql-install.html
二、MYSQL的数据模型
关系型数据库(通过表存储数据)
优点: 1、格式一致,易于维护
2、使用方便,便于查询较为复杂的数据
3、数据存储在磁盘中,安全性高
数据库:本质上是硬盘上面的文件夹
三、SQL
1、通用语法
SQL可以单行或者多行书写,每一行以分号结尾(仅有分行没有分号不代表结束)
SQL语句不区分大小写
单行注释:- 注释内容 或者#注释内容
多行注释:/* 注释内容 */
2、SQL分类
DDL、DML、DQL、DCL
1、DDL:操作数据库
(db代指数据库名称)
1、创建数据库
命令:create database dbl;
create database if not exists dbl;
不可以创建名称相同的数据库
2、遍历出数据库的名称
命令:show database;
3、删除数据库
命令:drop database dbl;
drop database if exists dbl;
4、使用数据库
命令:首先,use dbl;(进入到该数据库中)
select database ();
show tables;(显示出该数据库中所有的表)
5、查询表的结构
命令:desc dbl;
6、操作表
1、创建表
语法:
相关数据类型:
举例:
score double(总长度.小数点后保留的位数);
name varchar(10); (char的存储性能高,浪费空间,varchar的存储性能低,节约空间)
2、删除表
语法:
1、drop table 表名;
2、drop table if exists 表名;
3、修改表
语法:
1、修改表名
命令:alter table 表名 rename to 新的表名;
2、新增一列
命令:alter table 表名 add 列名 数据类型;
3、修改数据类型
命令:alter table 表名 modify 列名 新数据类型;
4、修改列名和数据类型
命令:alter table 表名 change 列名 新列名 新数据类型;
5、删除列
命令:alter table 表名 drop 列名;
若是目前想要让表的操作更为简单一些,可以查看我的上一篇博客,当然,两种操作都是需要学习的!
2、DML:操作数据
1、添加数据
命令:
1、给指定列添加数据:insert into 表名(值1,值2,...) values(值1,值2,...);
2、给全部列添加数据:insert into 表名 values(值1,值2,...);
3、批量添加数据:insert into 表名(值1,值2,...) values(值1,值2,...),(值1,值2,...),(值1,值2,...)...;
2、修改数据
命令:
1、update 表名 set 列名=需要修改成为的值 where 列名=值;
3、删除数据
命令:
1、delete from 表名 where 列名=值;
3、DQL:基础查询
1、查询指定列:**select 列名1,列名2 from 表名;**
2、查询所有列:**select * from 表名;**
3、在查询某一列数据时,去除重复的数据:**select distinct from 表名;**
4、查询指定某一行的指定的数据:**select 列名1,列名2 from 表名 where 列名=值;**
5、取别名:**列名 (as) 指定别名;**(as可以省略)
4、DQL:条件查询
1、在什么范围之内:**select * from 表名 where between 范围1 and 范围2;**
2、等于条件:只需要一个“=”号;
3、不等于条件:!=或者<>;
4、或者关系:or 或者in(几个范围);
5、null:前面加**is**或者**is not**
6、模糊查询:
举例:1、查询姓马的学员:select * from student where name like '马%';
2、查询第二个字是花的学员:select * from student where name like '_花%';
3、查询名字中包含德德学员:select * from student where name like '%德%';