8.23(周五):MySQL-1安装和SQL基本操作
一.MySQL-1安装
- 卸载是注意把隐藏文件夹:ProgramData 中的MySql删掉,否则下次安装会出现问题
- 启动mysql服务:使用services.msc 找到服务启动
- c:>mysql -u root -p 回车输入密码即可
- 修改my.ini文件:
将# default-character-set= 修改为:default-character-set=utf8
将# character-set-server= 修改为:character-set-server=utf8
二.SQL基本操作
- Create, Read, Update, and Delete 通常称为CRUD操作。
- DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等。
- DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据)。
- DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别。
- DQL(Data Query Language):数据查询语言,用来查询记录(数据)。
2.1 DDL
- 创建数据库:CREATE DATABASE [IF NOT EXISTS] db_name;
- 查看当前数据库服务器中的所有数据库:SHOW DATABASES;
- 修改字符集:ALTER DATABASE mydb2 character SET utf8;
- 删除:DROP DATABASE [IF EXISTS] db_name;
- 命令行时会使用:切换数据库:USE 退出MySQL:mydb2;quit;或exit;
2.2 DDL
- 创建新表:CREATE TABLE IF NOT EXISTS student( id INT NOT NULL) CHARSET=utf8;
- 删除:DROP TABLE table_name;
- 查看表的字段信息:DESC student;
- 增加一个image列:ALTER TABLE student ADD image blob;
- 修改address列,使其长度为60:ALTER TABLE student MODIFY address varchar(60);
- 删除image列,一次只能删一列:ALTER TABLE student DROP image;
- 表名改为user:RENAME TABLE student TO user;
- 列名name修改为username:ALTER TABLE user CHANGE name username varchar(100);
2.3 DML
- 插入操作:INSERT INTO() VALUES();
- 修改操作:UPDATE student SET age=50, … WHERE …;
- 删除操作:DELETE FROM student WHERE name=‘zhangsan’;
注意:TRUNCATE 删除的数据不能找回。执行速度比DELETE快。
2.4 DQL
- 比较运算符:=、!=、<>、<、<=、>、>=; BETWEEN…AND;IN(set);IS NULL;
- 逻辑运算符:AND;OR;NOT;
- 查询语句书写顺序:select 列 from 表 【where- group by- having- order by-limit】
- 模糊查询(LIKE):_ 任意一个字符;%:任意0~n个字符
- 去除重复记录:SELECT DISTINCT sal FROM emp;
- 字符串的合并:concat(ename,’____’,job);
- IFNULL:SELECT *,sal+IFNULL(comm,0) FROM emp;
- 降序:DESC;升序(默认):ASC
- 当需要纵向统计时可以使用COUNT()。
- group by和having一起使用,having可以写聚合函数,where不可以
SELECT deptno, SUM(sal)
FROM emp
GROUP BY deptno
HAVING SUM(sal) > 9000;
- LIMIT用来限定查询结果的起始行,以及总行数。可用于分页查询。