【数据库MySQL】-- 基础操作指令(DDL、DML、DQL、约束、多表查询、事务、存储引擎)

本文详细介绍了如何在Windows上启动MySQL,使用命令行操作,创建用户及权限,以及DDL、DML、DQL操作,包括数据定义、数据操作和查询语言。还涵盖了事务处理、存储引擎、多表查询(连接查询和子查询)以及关键概念如主键、约束和事务控制。
摘要由CSDN通过智能技术生成

启动数据库:net start mysql

MYSQL自带进入数据库:mysql -u root -p

windows命令行进入数据库:mysql -h localhost -P3306 -u root -p

创建用户:create user 用户名 identified by 密码

授予查询权限:grant select on 表名 to 用户

一、DDL(数据定义语言)

1、DDL-数据库操作

show databases;                                                   展示所有的数据库

create database 数据库名;                                    创建数据库

use 数据库名;                                                         使用数据库

select database();                                                 查询当前的数据库

drop database 数据库名;                                         删除数据库

2、DDL-表操作

show tables;                                                         展示当前库的所有表

create table 表名 (                                                 创建表

字段 字段类型 comment '备注',

...

)comment '备注';

desc 表名;                                                                 查询表

show create table 表名;                                         查询表的建表语句

alter table 表名 (add[添加字段]/modify[修改字段类型]/change[修改字段名称]/drop[删除字段]/rename to[修改表名]);                                                 修改表

drop table 表名;                                                                 删除表

二、DML(数据操作语言)

insert into 表名(字段1,字段2,...) values(值1,值2,...);         向表中添加数据

update 表名 set 字段1=值1,字段2=值2 [where 条件];         修改数据

delete from 表名 [where 条件];                                         删除数据

三、DQL(数据查询语言)

select

字段列表

from

表名

where

条件列表

group by

分组字段列表

having

分组后条件列表

order by

排序字段列表 ------------升序asc,降序desc

limit

分页参数-----------------起始索引(0),每页展示记录数

四、约束

primary key,auto_increment                                         主键,并且自动增长

not null,unique                                                         不为空,并且唯一

check(...)                                                                         检查条件

default '...'                                                                 如果没有指定值,默认为..

五、多表查询

(一)连接查询

1、内连接(相当于查询A、B交集部分数据)

隐式内连接:select 字段列表 from 表1,表2 where 条件......;

显式内连接:select 字段列表 from 表1 [inner] join 表2 on 连接条件;

2、外连接:

左外连接:查询左表所有数据,以及两张表交集部分数据

select 字段列表 from 表1 left [outer] join 表2 on 条件.....;

右外连接:查询右表所有数据,以及两张表交集部分数据

select 字段列表 from 表1 right [outer] join 表2 on 条件.....;

3、自连接(当前表与自身的连接查询,自连接必须使用表别名)

select 字段列表 from 表A 别名A join 表A 别名B on 条件......;

(二)子查询

1、标量子查询(返回的结果是单个值【数字、字符串、日期等】,最简单的形式)

常用操作符:= > >= < <=

2、列子查询(返回的结果是一列【可以是多行】)

常用操作符:in not in any some all

in:在指定的集合范围内,多选一;

not in:不在指定的集合范围内;

any:有任意一个满足即可;

some:与any等同,使用some的地方都可以用any;

all:所有值必须满足;

3、行子查询(返回结果是一行)

常用操作符:= > in not in

4、表子查询(返回结果是多行多列)

常用:in

六、事务

方式一:

select @@autocommit;                         查询事务的提交方式

set @@autocommit;                                 设置提交方式

提交事务:commit;

回滚事务:rollback;

方式二:

开启事务:start transaction 或 begin;

提交事务:commit;

回滚事务:rollback;

七、存储引擎(默认为innodb)

1、创建表时,指定存储引擎

create table 表名{

.....

}engine = innodb;

2、查看当前数据库支持的存储引擎

show engines;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

四月天行健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值