1. 首先安装mysql,官网https://dev.mysql.com/downloads/ 一步一步即可
2. 配置环境 ,mac打开终端
cd 到mysql的bin目录下,配置环境
export PATH =$PATH:/usr/local/mysql/bin
3. 启动数据库
myqsl -u root -p 本地
myqsl -u 用户名 -h IP -P端口号-p 数据库名
需要输入数据库密码
4. sql命令跑数据库
去重,distinct
数据库每一个语句完成后都要加英文分号
事物,原子性,一致性,隔离性,永久性
事物是把所有操作看成一个整体,同时成功同时失败
开启事物,抛出异常,回滚事物,提交事物
脏读,读到了没有提交的数(可能会有回滚)
不可重复读,两次读取不一样
幻读,查的时候没有,准备插入insert的时候发现已经存在
DDL定义语言
查询:
查询所有数据库: show databases
查询当前数据库: select database()
创建: create database 数据库名
删除: drop database 数据库名
使用: use 数据库名
表操作:
查询当前数据库所有表:show tables
查询表结构:desc 表名
查询建表语句:show create table 表名
创建表
create table 表名(字段1 字段类型comment 注释,..)comment 注释 最后一个没逗号
修改
添加字段: alter table 表名 add 字段名 类型(长度) comment 注释
修改数据类型: alter table 表名 modify 字段名
新数据库类型(长度)
删除
删除表中字段: alter table 表名 drop 字段名
删除表: drop table 表名
DML操作语言
添加insert into
添加数据: insert into 表名(字段1,字段2...)
values (值1,值2...)
修改update set
修改数据: update 表名 set 字段1=值1,
字段2=值2 where 条件
删除 delete from
删除数据: delete from 表名 where 条件
DQL查询语言、
查询多个字段:select 字段 from 表名
select * from 表名
删重记录 select distinct 字段列表 from 表名
条件查询select 字段列表 from 表名 where
分组查询select 字段列表 from 表名 where
条件 group by 分组字段名 having 分组后条件
排序查询select 字段列表 from 表名 order by
字段1 排序方式1... (升序asc 降序 desc)
分页查询select 字段列表 from 表名 limit 起始索引,查询记录数
DCL控制语言
查询用户: use MySQL;select * from user
创建用户:create user 用户名@主机名 identified by 密码
修改用户密码:alter user 用户名@主机名 identified with by 新密码
删除用户:drop user 用户名@主机名
查询权限:show grants for 用户名@主机名
授予权限:grant 权限列表 on 数据库名.表名
to 用户名@主机名
撤销权限:revoke 权限列表 from 数据库名.表名
to 用户名@主机名
约束
添加外键(保证数据的一致性和完整性)
create table 表名(字段,数据类型)
函数
concat 拼接,lower 转小,upper,转大
lpad,rpad左右填充,trim去空格
substring返回从某个起几个字符
隐式内链接和显式内链接,
null值不参与内参与外
内链接和外链接