启动停止MySQL服务

1、Windows服务窗口启动:开始 → 运行 → services.msc → 找到MySQL 56服务

2、MySQL命令启动:开始 → 运行 → 管理员权限运行cmd → net start MySQL56 启动 net stop MySQL56 停止

客户端连接MySQL服务

1、自带客户端连接MySQL服务器:所有程序 → MySQL Server5.6 → MySQL5.6 Command Line Client → 输入密码

2、通过CMD命令连接MySQL服务器:

①配置环境:系统变量 → 添加MySQL的 bin 目录:C:\Program Files\MySQL\MySQL Server 5.6\bin(默认地址)

②cmd命令输入mysql --help 验证是否成功成为Windows外部命令

③连接命令:mysql -h 服务器地址 -p 端口号 -u 账号 -p密码

如:mysql -h localhost-p 3306 -u root -proot123

注意:-p 默认是3306端口可以省略,-u与账号之间可以有空格,-p之后紧跟密码,但是不安全

一般使用,mysql 127.0.0.1 -uroot -p

第三方工具连接

Navicat for MySQL连接

MySQL 常见数据类型

整数类型:tinyint、smallint、int

小数类型:decimal

定义字符串类型:char

变长字符串类型:varchar

日期类型:data、time、datatime

DDL

创建数据库:

CREATE DATABASE database_name

删除数据库:

DROP DATABAST database_name

查看数据库:

SHOW DATABAST

创建数据表:


CREATE TABLE table_name( column_name data_type [NOT NULL] [DEFAULT default_value] [AUTO_INCREMENT] [], ... [PRIMARY KEY(pk_name),] [FOREIGN KEY(fk_name) REFERENCES referenced_table_name(ref_pk_name)]
  1. “[]”中的内容为可选项。table_name:表名。
  2. column_name:字段名。
  3. data_type:字段数据类型。default_value:默认值。
  4. auto_increment:主键值自动增长。pk_name:当前表中的主键名。
  5. fk_name:当前表中的外键名。
  6. referenced_table_name:被引用表名(主表名)。ref_pk_name:被引用表主键名。

修改表结构:

ALTER TABLE table_name

新增字段:

ADD column_name data_type [NOT NULL] [DEFAULT default_value]

变更字段:

CHANGE column_name new_column_name data_type [NOT NULL] [DEFAULT default_value]

更新字段:

MODIFY column_name new_data_type [NOT NULL] [DEFAULT default_value]

删除字段:

DROP column column_name

删除唯一约束:

DROP UNIQUE constraint_name

重命名表:

RENAME TABLE table_name TO new_table_name

添加外键约束:

ALTER TABLE table_name

ADD CONSTRAINT constraint_name FOREIGN KEY(fk_name) REFERENCES referenced_table_name(ref_pk_name)]

constraint_name: 约束名。

fk_name:当前表中的外键名。

referenced_table_name:被引用表名。

ref_pk_name:被引用表主键。

删除外键约束字句:

DROP FOREIGN KEY constraint_name

DML

插入表记录:

INSERT [INTO] table_name[( 字段列表 )] VALUES( 值列表 )

修改数据语法:

UPDATE table_name set

字段名 1= 值 1, 字段名 2= 值 2,..., 字段名 n= 值 n

[WHERE 条件表达式 ]

删除表数据:

DELETE FROM table_name [WHRRE 条件表达式]

SELECT查询

语法:

SELECT <COLUMN1, COLUMN2, COLUMN3...>

FROM <table_name> [WHERE < 条件表达式 >]

[GROUP BY COLUMN1, COLUMN2, COLUMN3... | HAVING < 条件表达式 >]

[ORDER BY < COLUMN1, COLUMN2, COLUMN3...> [ASC 或 DESC]]

必须的子句只有 select 子句和 from 子句。
where 子句用于对查询结果进行过滤。
group by 子句根据指定列分组,having 子句对分组后的结果进行过滤。(后续章节学习。)
order by 子句用于对查询结果进行排序。asc 表示升序排序,desc 表示降序排序,默认按 asc 排序。

查询所有列数据:

select * from 表

查询指定列的数据:

select 列名1,列名2,... from 表

显示列标题:

  1. 使用as:select 列名1 as 标题名 from 表
  2. 使用空格:select 列名1  标题名 from 表

去除重复数据:

SELECT DISTINCT 字段名 FROM 表名

ceil(a) 为 MySQL 中内置数学函数,其功能是对数值型 a 进行向上取整,如 ceil(12.4) 的值为 13。
floor(a) 为 MySQL 中内置数学函数,其功能是对数值型 a 进行向下取整,如 floor(12.7) 的值为 12。
round(a) 为 MySQL 中内置数学函数,其功能是对数值型 a 进行四舍五入,如 round(12.7)的值为13.

MySQL 运算符

1、算数运算符

2、比较运算符

MySQL 进行数值比较时规则如下:

(1)若有一个或两个参数为 null,则比较运算的结果为 null。

(2)若同一个比较运算中的两个参数都是字符串,则按照字符串进行比较。

(3)若两个参数均为正数则按照整数进行比较。

(4)若一个字符串和一个数字进行相等判断,则 MySQL 可以自动将字符串转换为数字。

3、逻辑运算符

定制显示查询结果

对结果进行排序

单列:

select * from 表 order by 字段名(desc:降序,asc:升序)

多列:

select * from 表 order by 字段名1(desc:降序,asc:升序),字段名2(desc:降序,asc:升序)

使用limit限制数据的行数

SELECT * FROM table LIMIT [offset,] rows
  • 参数 offset 和 rows 必须为整数,offset 可以省略。
  • offset 指定第一个返回记录行的偏移量。注意:初始记录行的偏移量是 0,而不是 1。
  • rows 指定返回记录行的最大数目。

模糊查询

LIKE运算符

  1. “%”通配符:可以匹配 0 到多个任意字符
  2. “_”通配符: 功能与“%”类似,其仅匹配任意一个字符。如需匹配两个字符,则使用“_ _”
  3. IN 运算符:称为“成员条件运算符”,用于判断一个值是否在一个指定的数据集合之内
  4. between...and 运算符选取介于两个值之间的数据,这些值可以是数字和日期类型(取值范围包括边界值)

MySQL基础操作指南的更多相关文章

  1. Mysql基础代码(不断完善中)

    Mysql基础代码,不断完善中~ /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限 ...

  2. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  3. 【夯实Mysql基础】记一次mysql语句的优化过程

    1. [事件起因] 今天在做项目的时候,发现提供给客户端的接口时间很慢,达到了2秒多,我第一时间,抓了接口,看了运行的sql,发现就是 2个sql慢,分别占了1秒多. 一个sql是 链接了5个表同时使 ...

  4. MySQL基础(非常全)

    MySQL基础 一.MySQL概述 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库 2.什么是 MySQL.Oracle.SQLite.Access ...

  5. mysql 基础篇5(mysql语法---数据)

    6 增删改数据 -- ********一.增删改数据********* --- -- 1.1 增加数据 -- 插入所有字段.一定依次按顺序插入 INSERT INTO student VALUES(1 ...

  6. MySQL 基础语句

    MySQL 基础语句 多个知识点 ----------------------------------------------------------------------------------- ...

  7. MySQL:基础—数据分组

    MySQL:基础-数据分组 1.为什么要分组: 比如一个表中有多条订单记录,如上图,每条记录对应着一个商品,现在我要查询 每个商品被订购的单数 准备出货?也就是找到每个商品被订购的数量. 如果只找一个 ...

  8. MySQL基础学习总结

    1.MySQL基础概念 mysql逻辑架构如下: 每个客户端连接都会在服务器中拥有一个线程,这个连接的查询只会在这个单独的线程中执行. MySQL是分层的架构.上层是服务器层的服务和查询执行引擎,下层 ...

  9. MySQL基础(五)——视图

    MySQL基础(五)--视图

随机推荐

  1. keil 生成 bin 文件 gd32为例

    fromelf --bin --output .\update\GD32F4xZ.bin .\Output\GD32450Z_EVAL.axf代表使用的keil内的工具代表输出公式,..表示: 输出 ...

  2. 【STM32】使用SDIO进行SD卡读写,包含文件管理FatFs(四)-介绍库函数,获取一些SD卡的信息

    其他链接 [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(一)-初步认识SD卡 [STM32]使用SDIO进行SD卡读写,包含文件管理FatFs(二)-了解SD总线,命令的相关介绍 ...

  3. mysql key与index的区别

    key包含了index, 而index没有key的功能. 1.key 是数据库的物理结构,它包含两层意义,一是约束(偏重于约束和规范数据库的结构完整性),二是索引(辅助查询用的).包括primary ...

  4. mybatis中返回自动生成的id

    当有时我们插入一条数据时,由于id很可能是自动生成的,如果我们想要返回这条刚插入的id怎么办呢. 在mysql数据中我们可以在insert下添加一个selectKey用以指定返回的类型和值:     ...

  5. ActiveMQ(一)——简介

    一.ActiveMQ简介 ActiveMQ是什么ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和J2EE1.4规范的JMS Provider实现的消中间件(MOM) Activ ...

  6. 【简】题解 AWSL090429 【价值】

    先考虑当要选的物品一定时 显然有个贪心 wi越小的要越先选 所以先按wi从小到大拍序 因为发现正着递推要记录的状态很多 并且wi的贡献与后面选了几个物品有关 考虑正难则反 倒着递推 提前计算wi的贡献 ...

  7. ABP VNext框架基础知识介绍(1)--框架基础类继承关系

    在我较早的时候,就开始研究和介绍ABP框架,ABP框架相对一些其他的框架,它整合了很多.net core的新技术和相关应用场景,虽然最早开始ABP框架是基于.net framework,后来也全部转向 ...

  8. 『学了就忘』Linux服务管理 — 79、源码包安装的服务管理

    目录 1.源码包服务的启动管理 2.源码包服务的自启动管理 3.让源码包服务被服务管理命令识别 1.源码包服务的启动管理 # 通过源码包的安装路径,找到该服务的启动脚本, # 也就是获得该服务的启动脚 ...

  9. 解决pwn题目加载指定libc版本的问题

    因为本地和远程的libc版本不同,pwn题目调试起来会有影响,所以来记录一下用patchelf和glibc-all-in-one来解决这个问题过程. 下载工具 下载patchelfgit clone ...

  10. AtCoder Beginner Contest 173 题解

    AtCoder Beginner Contest 173 题解 目录 AtCoder Beginner Contest 173 题解 A - Payment B - Judge Status Summ ...