MySQL基本操作知识回顾

一、MySQL基本数据类型

tinyint      【4】 0~255 ----年龄
smallint   【6】 ±32w ----员工数
int            【11】 ±21亿 ----国家人口数
decimal   【10,0】 ±999.99 ----单价(不上千的数)
char        【1】 ----公司名
varchar   【无】 ----大部分
date        【0】 1000-01-01~9999-12-31 ----年月日
time        【0】 ±35天59分59秒 ----时间
datetime 【】 ----年月日时间

二、基本语法快速记忆手册

1、增字段
-- alter table 表名
-- add column 字段名 新数据类型

2、更名字段
-- alter table 表名
-- change 旧字段名 新字段名 数据类型;

3、改数据类型
-- alter table 表名
-- modify 字段名 新数据类型;

4、删除字段(一个个删)
-- alter table 表名
-- drop 字段名

5、精准添加数据
-- insert 表名 (字段) values
-- (与字段对应,与字段对应),
-- (与字段对应,与字段对应)

6、添加整行数据
-- insert 表名 values
-- (全字段对应);

7、更新数据
-- update 表名 set
-- 字段名=字段值,
-- 字段名=字段值
-- where 字段名=字段值(为索引)

8、删除整行数据
-- delete from 表名
-- where 字段名=字段值(索引)

9、删除具体字段数据(以更新方式)
-- 字段名=null,
-- 字段名=新字段值
-- where 字段名=字段值(索引)-- update 表名 set

10、添加外键
-- alter table 表名
-- add constraint 外键名 foreign key(字段) references 参照表名(参照字段)
-- on delete 删除规则 on update 更新规则

11、删除外键
-- drop foreign key 外键名

12、添加唯一约束
-- alter table 表名
-- add unique(约束名)字段名

13、删除唯一约束
-- alter table 表名
drop index 字段

14、添加默认值
-- alter table 表名
-- alter column 字段 set default 默认值;

15、删除默认值
-- alter table 表名
-- alter column 字段名 drop default;

16、拷贝表结构(全字段)
create table 新表 like 旧表;

17、拷贝表结构(字段)字段
create table 新表 select 字段1,字段2 from 旧表;

18、拷贝数据
insert 新表 select * from 旧表;

19、查询不同字段表数据
select distinct 字段名 from 表名;

20、coalesce(a,b,c);
参数说明:如果a==null,则选择b;如果b==null,则选择c;如果a!=null,则选择a;如果a b c 都为null ,则返回为null(没意义)。配合 with rollup

21、求余数 (x%y)
mod(x,y)

22、自增长 起始值 设置

alter table 表名 auto_increment = 起始值;

23、添加自增长

alter table 表名 modify 字段 类型 auto_increment ;

24、-- 自增量设置(每次增1)
set @@auto_increment_increment =1;

25、MySQL下标由1开始,在MySQL中一个中文字3个字节

26、日期操作

年月日时分 now()   年月日 curdate()    时分秒 curtime()

select weekday(‘2019-12-1‘)    当前星期几 -- 加1就准了

select dayofyear(‘2019-12-1‘)    一年中第几天 -- 非常准确

select date_add(‘2019-12-1‘,interval 20 day) 日期加20天 {减法使用:date_sub}

select datediff(now(),‘2019-12-1‘)   天数间隔

select timestampdiff(Year,日期,now())   指定格式间隔  | DAY,WEEK,HOUR,MONTH

select date_format(now(),‘%Y-%c-%d %H:%i:%s‘) 自定义显示日期 24小时制   {12小时制 %h小时 %p上下午 }

三、如果MySQL出现意外,需要重装

(1)停止服务 (win+R搜索services.msc )  找到MySQL服务,将MySQL的服务给停止

(2)开始菜单搜索 》》 控制面板 》》 卸载程序 》》MySQL》》卸载。

(3)删除注册表( win+R搜索regedit)
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Applications/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Applications/MySQL
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Applications/MySQL

(4)删除数据和记录(如果没有可能是隐藏的,显示隐藏目录即可)比如:C:\ProgramData\MySQL(把MySQL文件夹删除)

(5)重启电脑。

原文地址:https://www.cnblogs.com/Xiangjiakang/p/11964532.html

时间: 2024-11-05 07:09:16

MySQL基本操作知识回顾的相关文章

MySQL的知识回顾

经过一段时间的NodeJs开发经历,选用的数据库是MySQL,一开始以为自己对数据库的基础知识掌握还ok,因为毕竟自己以前用过Apache+PHP+MySQL做数据库课程设计,但是在开发过程中才知道在这方面的基础非常不扎实,下面把项目中用到的MySQL数据库知识作个总结: 首先在Node环境下开发,一开始是选择mysql模块(https://github.com/mysqljs/mysql),后来该用了easymysql模块,原因可以看Node中使用mysql模块遇到的问题,先小总结下数据库的基

MySQL基础知识回顾

MarkdownPad Document MySQL MySQL:是用于管理文件的一个软件     - 服务端软件         - socket服务端         - 本地文件操作         - 解析指令[SQL语句]     - 客户端软件(各种各样)         - socket客户端         - 发送指令         - 解析指令[SQL语句]     PS:         - DBMS:数据库管理系统         - SQL语句 需要掌握的技能:   

mysql核心知识要点

1整体知识介绍:mysql基本操作和使用,mysql优化(索引,分表等),mysql部署(读写分离,负载均衡等) 数据库基本介绍:数据库概念,常用数据库,web应用三大软件分工,PHP动态语言特点(处理数据),数据的存放(脚本运行时和执行完毕),数据库系统 关系型数据库:概念(关系+二维表),教学系统实例,常见关系型数据库,关系型数据库特点(所有数据相同结构,没有数据也分配存储空间) 非关系型数据库:键值对型,常见非关系型数据库,非关系型数据库特点(内存运行,硬盘同步) 关系型数据库典型概念:行

PHP移动互联网开发笔记(6)——MySQL数据库基础回顾

最近看了一些架构方面的资料,但是发现基础知识都不怎么牢固,接下来的一段时间,我会定期总结基础知识. 一.数据类型 1.整型 数据类型 存储空间 说明 取值范围 TINYINT 1字节 非常小的整数 带符号值:-128~127 无符号值:0~255 SMALLINT 2字节 较小的整数 带符号值:-32768~32767 无符号值:0~65535 MEDIUMNT 3字节 中等大小的整数 带符号值:-8388608~8388607 无符号值:0~16777215 INT 4字节 标准整数 带符号值

MySQL基本知识及练习(5)

1.求一个班级数学平均分. (1). select sum(math) / count(math) as 数学平均分 from student; (2). select avg(math) as 数学平均分 from student; (3).select avg(name) as 小明平均分 from student;//0 2.求一个班级总分平均分. (1).select (sum(chinese)+sum(math)+sum(english))  /  count(*) from stud

mysql基础知识之增删查改使用介绍

 mysql基础知识之增删查改使用介绍 本文主要介绍mysql常用的SELECT.INSERT.UPDATE.DELETE语句的使用,数据库的安装这里不做介绍,并且事先已经准备好相关数据. 本文中使用的student表中的数据如下: mysql> SELECT * FROM student; 一.SELECT语句的使用 1.单表查询 语法格式: SELECT culom1,culom2,culom3 FROM TABLE_NAME; 可以改变字段显示顺序 2.WHERE子句查询 语法格式: SE

【mysql】mysql基本操作

mysql基本操作 1.mysql表复制 mysql 表结构的复制 create table t2 like t2 mysql 表数据的复制 insert into t2 select * from t1 2.mysql索引的操作 2.1索引的增加 alter table tb_name add index index_name (列名) alter table tb_name add unique(列名) alter table tb_name add primary key (列名) 2.2

java基础知识回顾之java Thread类学习(八)--java多线程通信等待唤醒机制经典应用(生产者消费者)

 *java多线程--等待唤醒机制:经典的体现"生产者和消费者模型 *对于此模型,应该明确以下几点: *1.生产者仅仅在仓库未满的时候生产,仓库满了则停止生产. *2.消费者仅仅在有产品的时候才能消费,仓空则等待. *3.当消费者发现仓储没有产品可消费的时候,会唤醒等待生产者生产. *4.生产者在生产出可以消费的产品的时候,应该通知等待的消费者去消费. 下面先介绍个简单的生产者消费者例子:本例只适用于两个线程,一个线程生产,一个线程负责消费. 生产一个资源,就得消费一个资源. 代码如下: pub

java基础知识回顾之java Thread类学习(七)--java多线程通信等待唤醒机制(wait和notify,notifyAll)

1.wait和notify,notifyAll: wait和notify,notifyAll是Object类方法,因为等待和唤醒必须是同一个锁,不可以对不同锁中的线程进行唤醒,而锁可以是任意对象,所以可以被任意对象调用的方法,定义在Object基类中. wait()方法:对此对象调用wait方法导致本线程放弃对象锁,让线程处于冻结状态,进入等待线程的线程池当中.wait是指已经进入同步锁的线程,让自己暂时让出同步锁,以便使其他正在等待此锁的线程可以进入同步锁并运行,只有其它线程调用notify方