学习目录
数据库技术
- 数据库技术是随着信息社会对数据处理任务的需要而产生的。
- 数据库就是一个文件系统,通过标准的SQL语句获取数据。
- 常见的关系型数据库MySQL、Oracle、SQLServer、DB2、SyBase
MySQL
一个关系型数据库系统。
什么是MySQL
关系型数据库存放的是实体之间的关系。
MySQL安装
-
搜索官网https://www.mysql.com/cn/
-
打开安装文件
-
一路next
-
直到这里,选择Custom
-
选择路径
-
结束安装
在命令行窗口熟悉MySQL
1.开启服务
2. 修改账号、密码
3. 登录
- exit退出
- 连接远程服务器
在IDEA在使用MySQL
在新建的项目的右侧·点击Database
服务器的概念
什么是服务器
服务器要从硬件和软件两个方面来说:
- 硬件:指的就是一台计算机。
- 软件:需要在这台电脑上安装数据库服务器。
MySQL数据库存储的方式
一台数据库服务器中会创建很多数据库(一个项目,会创建一个数据库)。在数据库中会创建很多张表(一个实体会创建一个表)。在表中会有很多记录(一个对象的实例会添加一条新的记录)。
MySQL基本的语句
SQL的分类
- DDL:数据定义语言,例如:create,drop,alter…
- DCL:数据控制语言,例如:grant,if…
- DML:数据操纵语言,例如:insert,update,delete…
- DQL:数据查询语言,例如:select
SQL对数据库进行操作
-
创建数据库
语法:
create database 数据库名称 [character set 字符集 collate 字符集校对规则]; -
查看数据库
语法:
查看数据库服务器中所有的数据库:show databases;
查看某个数据库的定义信息: show create database 数据库名称; -
修改数据库
语法:
alter database 数据库名称 character set 字符集 collate 校对规则; -
删除数据库
语法:
drop database 数据库名称; -
其他数据库操作
切换数据库:use 数据库名称;
查看当前正在使用的数据库:
SQL对数据库表进行操作
-
SQL创建表
语法:
create table 表名称(字段名称 字段类型(长度) 约束,字段名称 字段类型(长度) 约束…);
字段类型
一个实体对应一个表,一个实体属性对应表的一个字段。
约束
约束作用:保证数据的完整性
单表约束分类:
主键约束:primary key 主键约束默认就是唯一 非空的
唯一约束:unique
非空约束:not null -
SQL查看表
查看某个数据库下的所有的表
语法:show tables;
查看某个表的结构信息
语法:desc 表名; -
SQL删除表
删除表
语法:drop table 表名; -
SQL修改表
修改表:添加列
alter table 表名 add 列名 类型(长度) 约束;
修改表:修改列类型,长度和约束
alter table 表名 modify 列名 类型(长度) 约束;
修改表:删除列
alter table 表名 drop 列名;
修改表:修改列名称
alter table 表名 change 旧列名 新列名 类型(长度) 约束;
修改表:修改表名
rename table 表名 to 新的表名;
修改表:修改表的字符集
alter table 表名 character set 字符集;
SQL对数据库表的记录进行操作
-
SQL添加表的记录
语法:
向表中插入某些列:insert into 表名 (列名1,列名2,列名3…) values (值1,值2,值3…)
向表中插入所有列:insert into 表名 values (值1,值2,值3…);
添加记录
添加某几列
insert into user (id,username,password) values (null,‘aaa’,‘123’);
添加所有列
insert into user values (null,‘bbb’,‘123’,23,‘1993-09-01’);
添加中文记录
insert into user values (null,‘张三’,‘123’,23,‘1993-09-01’);
重新启动MySQL的服务器
services.msc -
SQL修改表的记录
语法:
update 表名 set 列名=值,列名=值 [where 条件];
注意事项
1.值的类型与列的类型一致。
2.值的最大长度不能超过列设置的最大长度。
3.字符串类型和日期类型添加单引号。
修改某一列的所有值
update user set password = ‘abc’;
按条件修改数据
update user set password = ‘xyz’ where username = ‘bbb’;
按条件修改多个列
update user set password=‘123’,age=34 where username=‘aaa’; -
SQL删除表的记录
语法:
delete from 表名 [where 条件];
注意事项
1.删除表的记录,指的是删除表中的一行记录。
2.删除如果没有条件,默认是删除表中的所有记录。
删除某一条记录
delete from user where id = 2;
删除表中的所有记录
delete from user;
删除表中的记录有两种做法:
delete from user;
删除所有记录,属于DML语句,一条记录一条记录删除。事务可以作用在DML语句上的
truncate table user;
删除所有记录,属于DDL语句,将表删除,然后重新创建一个结构一样的表。事务不能控制DDL的 -
SQL查看表的记录(重点)
基本查询
语法:select [distinct] *|列名 from 表 [条件];
SQL对数据库进行查询
- 可以为属性起别名查询,select name,english+chinese+math as sum from exam;
- 用where条件进行筛选查询,使用的运算符和关键字:
> , < , >= , <= , <> ,=
like:模糊查询
in:范围查询
条件关联:and , or ,not - 分组查询、排序查询等复杂查询:
排序查询
使用order by 字段名称 asc/desc;
使用limit字段进行分页查询
常见的聚合函数: