当前位置: 首页 > news >正文

Mysql 常用命令 详细大全【分步详解】

1、启动和停止MySQL服务

// 暂停服务 默认 80
net stop mysql80// 启动服务
net start mysql80// 任意地方启动 mysql 客户端的连接
mysql -u root -p 

2、输入密码

 

3、数据库

4、DDL(Data Definition Language )数据 定义语言, 用来定义数据库对象(数据库, 表, 字段)

1、查询所有数据库

show databases;

2、 新建数据库

create database 库名;// 没有当前的数据库名的情况下创建create if not exists database 库名;

 3、查询当前数据库

select database();

 4、使用数据库

use 库名;

5、删除数据库

drop database 库名;

 5、DDL 表结构

1、查询当前数据库所有的表 (如果没有创建表,我们可以先使用系统的表,然后载查询)

show tables;

2、创建表结构

 

2.1 创建之前先回到我们自己需要创建表格的库

2.2 创建表的结构

create table  表名(字段1  字段1类型 [约束]  [comment  字段1注释 ],字段2  字段2类型 [约束]  [comment  字段2注释 ],......字段n  字段n类型 [约束]  [comment  字段n注释 ] 
) [ comment  表注释 ] ;

2.3 控制台写

 

2.4 创建成功

 

2.5 出现  ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near  ‘编号’, name varchar(10) comment  姓名  错误  说明创建表的过程中 符号没有统一

 3、查看指定表结构

desc 表名 ;#可以查看指定表的字段、字段的类型、是否可以为NULL、是否存在默认值等信息

4、查询指定表的建表语句

show create table 表名 ;

5、MySQL中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。

 数值类型

类型大小有符号(SIGNED)范围无符号(UNSIGNED)范围描述
TINYINT1byte(-128,127)(0,255)小整数值
SMALLINT2bytes(-32768,32767)(0,65535)大整数值
MEDIUMINT3bytes(-8388608,8388607)(0,16777215)大整数值
INT/INTEGER4bytes(-2147483648,2147483647)(0,4294967295)大整数值
BIGINT8bytes(-2^63,2^63-1)(0,2^64-1)极大整数值
FLOAT4bytes(-3.402823466 E+38,3.402823466351 E+38)0 和 (1.175494351 E-38,3.402823466 E+38)单精度浮点数值
DOUBLE8bytes(-1.7976931348623157 E+308,1.7976931348623157 E+308)0 和 (2.2250738585072014 E-308,1.7976931348623157 E+308)双精度浮点数值
DECIMAL依赖于M(精度)和D(标度)的值依赖于M(精度)和D(标度)的值小数值(精确定点数)
示例: 年龄字段 ---不会出现负数, 而且人的年龄不会太大age tinyint unsigned分数 ---总分100分, 最多出现一位小数score double(4,1)

字符串类型

类型大小描述
CHAR0-255 bytes定长字符串(需要指定长度)
VARCHAR0-65535 bytes变长字符串(需要指定长度)
TINYBLOB0-255 bytes不超过255个字符的二进制数据
TINYTEXT0-255 bytes短文本字符串
BLOB0-65 535 bytes二进制形式的长文本数据
TEXT0-65 535 bytes长文本数据
MEDIUMBLOB0-16 777 215 bytes二进制形式的中等长度文本数据
MEDIUMTEXT0-16 777 215 bytes中等长度文本数据
LONGBLOB0-4 294 967 295 bytes二进制形式的极大文本数据
LONGTEXT0-4 294 967 295 bytes极大文本数据

char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关 。而varchar是变长字符串,指定的长度为最大占用长度 。相对来说,char的性能会更高些。

char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关 。而varchar是变长字符串,指定的长度为最大占用长度 。相对来说,char的性能会更高些。

日期时间类型

类型大小范围格式描述
DATE31000-01-01 至 9999-12-31YYYY-MM-DD日期值
TIME3-838:59:59 至 838:59:59HH:MM:SS时间值或持续时间
YEAR11901 至 2155YYYY年份值
DATETIME81000-01-01 00:00:00 至 9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
TIMESTAMP41970-01-01 00:00:01 至 2038-01-19 03:14:07YYYY-MM-DD HH:MM:SS混合日期和时间值,时间戳
示例: 生日字段  birthday ---生日只需要年月日  birthday date创建时间 createtime --- 需要精确到时分秒createtime  datetime

练习 

 create table emp(id int comment '编号',workno varchar(10) comment '工号',name varchar(10) comment '名字',gender char(1) comment '性别',age tinyint unsigned comment '年龄',idcard char(18) comment '身份证号',entrydate date comment '入职时间') comment '员工表';

 6、DDL --- 修改表的操作

1. 添加字段

alter table 表名 add 字段名 类型(长度) [comment 注释] [约束];

 案例

alter table emp add nickname varchar(20) comment '昵称';

 2. 修改指定字段的数据类型

alter table 表名 modify  字段名  新数据类型(长度);

3. 修改字段名和字段类型  

alter table 表名 change  旧字段名  新字段名  类型(长度)  [comment 注释]  [约束];

案例

alter table emp change nickname username varchar(50) comment '用户名';

4. 删除字段 

alter table 表名drop 字段名;

 案例

 alter table emp drop username;

5. 修改表名

alter table 原来的表名 rename to 新表名;

 案例

alter table emp rename to employee;

 6. 删除表

drop  table [ if exists ]  表名;

if exists :只有表名存在时才会删除该表,表名不存在,则不执行删除操作(如果不加该参数项,删除一张不存在的表,执行将会报错)。  

案例

drop table if exists tb_user;

7. 删除指定的表, 并创建该表 表中的数据也回被删掉

truncate table 表名;

案例

7、DML 修改数据

DML英文全称是Data Manipulation Language(数据操作语言),用来对数据库中表的数据记录进行增、删、改操作。

  • 添加数据(INSERT)

  • 修改数据(UPDATE)

  • 删除数据(DELETE)

1、增加(insert)

 insert into 表名 (字段名1, 字段名2) values (值1, 值2);

案例

insert into employee(id,workno,name,gender,age,idcard,entrydate) VALUES(1,'1','itcast','男','10','123456789012345678','2000-01-01');

 

 

 

2. 全部字段添加数据

insert into 表名 values (值1, 值2, ...);

案例

insert into employee VALUES (3,'2','张三','女','50','2222222222222222','2024-06-07');

 

3. 批量添加数据(指定字段)后面使用 逗号隔开

insert into 表名 (字段名1, 字段名2) values (值1, 值2), (值1, 值2);

 案例

insert into employee VALUES (4,'2','张4','女','40','2222222222222222','2024-06-07'),(5,'2','张5','女','50','2222222222222222','2024-06-07');

 

http://www.lryc.cn/news/368170.html

相关文章:

  • 基于百度接口的实时流式语音识别系统
  • AIGC作答《2024年高考作文|新课标I卷》能拿多少分?
  • WHAT - 发布订阅
  • React@16.x(23)useEffect
  • 算法竞赛一句话解题经典问题分析 ©ntsc 2024
  • 【TensorFlow深度学习】强化学习中的贝尔曼方程及其应用
  • 牛客 NC129 阶乘末尾0的数量【简单 基础数学 Java/Go/PHP/C++】
  • 【Spring Boot】异常处理
  • Laravel学习-自定义辅助函数
  • LLVM Cpu0 新后端6
  • GAT1399协议分析(9)--图像上传
  • Spring ApplicationContext的getBean方法
  • 自然语言处理(NLP)—— 自动摘要
  • Spring RestClient报错:400 Bad Request : [no body]
  • 【数据结构】 -- 堆 (堆排序)(TOP-K问题)
  • C#面:XML与 HTML 的主要区别是什么
  • java并发-如何保证线程按照顺序执行?
  • PyCharm中 Fitten Code插件的使用说明一
  • Polar Web【简单】PHP反序列化初试
  • 树莓派4B 零起点(二) 树莓派 更换软件源和软件仓库
  • Pytorch 实现目标检测二(Pytorch 24)
  • 如何使用Python中的列表解析(list comprehension)进行高效列表操作
  • java使用websocket遇到的问题
  • [Cloud Networking] Layer 2
  • [240609] qwen2 发布,在 Ollama 已可用 | 采用语言模型构建通用 AGI(2020年8月)
  • 赶紧收藏!2024 年最常见 20道分布式、微服务面试题(五)
  • 为什么Kubernetes(K8S)弃用Docker:深度解析与未来展望
  • 软件游戏提示msvcp120.dll丢失的解决方法,总结多种靠谱的解决方法
  • 使用kafka tools工具连接带有用户名密码的kafka
  • [个人感悟] Java基础问题应该考察哪些问题?