|
本帖最后由 flytosky060920 于 2018-5-23 10:29 编辑
Mysql的学习
Mysql课程的学习重点:
1. Mysql的环境搭建;
2. 单表的增删改查;
3. 多表的关联查询;
1. 什么是数据库?
数据库是指长期储存在计算机内的,有组织的,可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
2. Mysql的安装和环境搭建
3. 数据表(行用记录表示,列用字段表示)
4. Mysql的常用数据类型:
(1) 整数型:int
(2) 小数型:decimal
(3) 字符型:char、varchar(char表示定长字符串,varchar表示变长字符串)(在建表时后面必须有定义字符串的多少)
Eg:ID char (11); name varchar (20);
(4) 日期型:date 格式:20170504
(5) 枚举型:enum eg:gender enum(‘f’,‘m’)
*****字符型和枚举型的值必须有引号,数字型可以不加引号
5. 常见的约束类型:
(1) 主键约束:primary key
(2) 唯一约束:unique
(3) 外键约束:foreign key
(4) 非空约束:not null
(5) 默认值:default value
*****主键约束是表中很重要的,代表非空唯一的意一般用给表中最为明显和重要的列
####外键约束一般和references一起使用,是这个表的这列参照那个表的那列,两相参照的列类型必须一致。
6. 建表的基本语法:
(1) 建立数据库:create database test;(数据库名);
(2) 运行数据库:use test; 运行test数据库
(3) 建立表格: create table 表名(
字段1(列) 字段类型1 (外键约束),
字段2 字段类型2 (外键约束),
….. ……. ……
字段n 字段类型n (外键约束)
);
***** Mysql的输入全部都是英文输入,除了最后一列不加逗号外其他必须要有逗号。外键约束可有可没有,需看实际情况。
*****若一个表中有几个的主键约束,不能直接在后面加约束类型,必须重新换一行,采用联合主键。Primary key (列1,列2)
*****外键约束:foreign key 表名(列)references 表名(列)
7. Mysql数据插入的语法(增):
Insert into 表名(列1,列2,列3,….,列n)
values (值1,值2,…,值n),(值1,值2,…,值n),
…..(值1,值2,….,值n);
***添加数据时不是每一列都要添加的,有数据的才添加
***每个值得位置要和列的位置对好
8. Mysql删除数据的语句(删):
(1)drop database 数据库名 删除某数据库
drop table 表名 删除某表
(2)delete from 表名 [where 删除条件];
当不加where时删除的是表中的全部信息
Eg:delete from student where no=‘102’
在student表中删除学号为102学生的信息(记录)
*****当涉及外键约束时,删除信息必须先删除关联表的信息(记录)
*****drop删除的是表,delete from删除的是表中的信息(记录)。
9. Mysql中更新记录的语法(改):
update表名set字段1(列)=值1,字段2=值2,……,字段n=值n
[where 更新条件];
10. Mysql中数据的查询(查):
(1) select * from 表名;(查询表内全部信息)
(2) select */字段1(列),字段2,……,字段n(查询过滤后满足条件的字段)
(3) select distinct 字段;(简单的一列去重复)
***select 字段 +
(4) from 表名 (确定是哪个表)
(5) where 条件 (过滤满足的条件)
(6) group by 字段 (对这列进行分组)
(7) having 条件 (对分组后的结果再进行条件限制过滤)
(8) order by 字段 desc/ase(降/升序);(对查询结果进行排序)
11. 别名:
select sname [as] 姓名,sno [as] 学号 from student 学生;
*查询student表中的sname和sno两列信息,并将sname和sno两列的列名改为姓名和学号,把student的表名改为学生。
**别名只是改了显示时的名字,程序里的名字并没有修改
12. Mysql常用的运算符号:
(1) 算术运算符:+,-,*,/
(2)关系运算素符:=,!=,>,<,<=,>=,in,between
(3)逻辑运算符and, or, not, like, not like, is null, is not null(空值判断)
(4)通配符:%, _
***%和_通常用于和(like和not like)一起的模糊查询
****%可以匹配任意个字符(包括0个)
****_只可以匹配一个字符
13. Mysql常用的统计函数
**函数的要点:
(1) 函数实现了什么功能
(2) 它接收了怎样的输入
(3) 它产生了怎样的输出
**统计函数:(通常跟分组语句一块使用)
(1) 技数:count
(2) 求和:sum
(3) 最大值:max
(4) 最小值:min
(5) 平均值:avg
c:\学习.JPG |
|