初识MySQL(一)(创建数据库,查看删除数据库,备份和恢复,创建表,数据类型)

目录

客户端 ------> MySQL服务(3306)

数据库三层结构-破除MySQL神秘

创建数据库

查看删除数据库

备份恢复数据库

创建表

MySQL常用的数据类型(列类型)

​编辑

​编辑整型

bit类型

小数类型

字符串类型

日期类型的使用

客户端 ------> MySQL服务(3306)

连接到MySQL服务(MySQL数据库)的指令

mysql -h 主机IP -P 端口 -u 用户名 -p密码

提醒: (1)-p密码不要有空格

         (2)-p后面没有写密码 ,回车后要求输入密码  

         (3)如果没有写-h主机 ,默认是本机

         (4)如果没有写-P,默认是3306的端口

         (5)在实际工作中,一般会修改的

登陆前 , 保证MySQL是运行的

数据库三层结构-破除MySQL神秘

DDL:数据定义语言[creat 表 ,库..]

DML: 数据操作语句[增加 insert , 修改 update ,删除 delete]

DQL: 数据查询语句[select]

DCL: 数据控制语句

创建数据库

#创建数据库
#创建一个名称为hsp_db01的数据库[图形化和指令演示]

#使用指令创建数据库
CREATE DATABASE lhq_db01
#删除数据库
DROP DATABASE lhq_db01


#创建一个使用utf8字符集的hsp_db02数据库
CREATE DATABASE lhq_db02 CHARACTER SET utf8
#创建一个使用utf8字符集,并带有校对规则的hsp_db03数据库
CREATE DATABASE lhq_db03 CHARACTER SET utf8 COLLATE utf8_bin#区分大小写
#校对规则 utf8_bin 区分大小 默认utf8_general_ci 不区分大小写

#下面是一条查询的sql,select查询*表示所有字段   FROM从哪个表
#WHRER 从哪个字段  NAME='tom'查询名字是tom
SELECT * FROM t1 WHERE NAME ='tom'

CREATE DATABASE lhq_db01 一个这句是可以创建数据库的

CREATE DATABASE lhq_db03 CHARACTER SET utf8 COLLATE utf8_bin 加上后面加粗的是为了带有校对规则,以后在该数据库中创建的表,如果没有指定下图中的字符集和校对,默认为数据库设置的

上面代码中执行的SELECT * FROM t1 WHERE NAME ='tom'   t1是在对应的数据库中

查看删除数据库

#演示删除和查询数据库
#查看当前数据库服务器中的所有数据库
SHOW DATABASES
#查看前面创建的lhq_db01数据库的定义信息
SHOW CREATE DATABASE lhq_db01
#小老弟说明  在创建数据库或表的时候,为了规避关键字,可以使用反引号解决
CREATE DATABASE `int  #int是一个关键字,前面加`可以规避
#删除前面创建的lhq_db01数据库
DROP DATABASE lhq_db01

备份恢复数据库

备份数据库 要在命令行下执行

mysqldump -u 用户名 -p -B 数据库1 数据库2 数据库n > 文件名.sql

#备份和回复数据库
#备份,要在DOS下执行,命令行中执行
mysqldump -u root -p -B lhq_db01 > e:\\bak.sql

DROP DATABASE lhq_db01

#恢复数据库(注意: 进入mysql 命令行再执行)
source e:\\bak.sql

#备份库中的表 再DOS下进行,在命令行中执行
mysqldump -u 用户名 -p 数据库 表1 表2 表n > e:\\文件名.sql #不用带上面的-B选项了

创建表

character set 字符集 如不指定则为所在数据库字符集

collate 校对规则 如不指定则为所在数据库校对规则

engine : 引擎

#指令创建表
CREATE TABLE `user`(
   id INT ,
   `name` VARCHAR(255),
   `password` VARCHAR(255),
   `birthday` DATE
) 
CHARACTER SET utf8 COLLATE utf8_bin #字符集和校对规则ENGINE INNODB   #引擎;

MySQL常用的数据类型(列类型)

修改上面的日期类型


整型

分为带符号位不带符号位(其实也可以认为正负的关系)

说明,使用规范: 在能够满足需求的情况下,尽量选择占用空间小的类型

我们来一个演示代码

#演示一个整型的使用
#使用tinyint来演示它的范围,有符号的 -128~127 , 如果没有符号 0~255
#说明: 表的字符集,校验规则,存储引擎,使用默认的(数据库里的)
#如果没有指定 unsigned ,则TINTINT就是有符号的类型
CREATE TABLE t3(
id TINYINT
);

CREATE TABLE t4(
id TINYINT UNSIGNED 
);
INSERT INTO t4 VALUES(127); #这是非常简单的添加语句
SELECT * FROM t4

bit类型

来一个演示

#演示bit类型使用
#1.bit(m)在1-64 8表示一个字节,因为一个字节有8个比特位
#添加数据 范围,按照你给的范围来确定的,比如 m =8表示一个字节0-255
#显示按照bit,显示二进制
#查询时,仍然可以按照数来查询
CREATE TABLE t05 (num BIT(8));
INSERT INTO t05 VALUES(1);
INSERT INTO t05 VALUES(5);
SELECT * FROM t05 WHERE num=1;

小数类型

1.FLOAT/DOUBLE [UNSIGNED]

2.DECIMAL M,D] [UNSIGNED]

可以支持更加精确的小数位,M是小数位数(精度)的总数,D表示小数点(标度)后面的位数

如果D是0,则值没有小数点或分数部分,M最大65,D最大30,如果D被省略,默认为0,如果M被省略,默认为10,建议:如果希望小数的精度高,推荐使用decimal

#演示decimal类型,float,double使用
#创建表
CREATE TABLE t06(
num1 FLOAT,
num2 DOUBLE,
num3 DECIMAL(30,20)
);
#添加数据
INSERT INTO t06 VALUES(88.12345678912345,88.12345678912345,88.12345678912345);
SELECT * FROM t06;

我们从图中可以看见:num1是float类型的,精度没那么高,num2是double类型,数据是比较高的, num3是decimal更高了

字符串类型

CHAR(size):固定长度字符串,最大255字符

VARCHAR(size) 0~65535字节 但是可以写入的字符串最大只能是65532 差了3个字节 这是为什么呢?因为utf8编码最大21844字符(因为utf8编码中1个字符可以是2个字节表示),1-3个字节用于记录大小(65535-3)/3=21844       在gbk编码(一个字符可以由两个字节表示)中,也是先预留3个字节,能表示的最大字符是:(65535-3)/2

#演示字符串类型使用
#注释的快捷键shift+ctrl+c 注销注释: shift+ctrl+r
CREATE TABLE t09(
`name` CHAR(255)#里面的值不能超过255字符
);
CREATE TABLE t10(
`name` VARCHAR(21844));#在utf8编码中里面的值不能21844字符

字符是不区分中文和字母的,一个中文表示一个字符,一个字母也表示一个字符 

#字符串类型的使用细节
#CHAR(4) 和 VARCHAR(4) 这个4表示的是字符,而不是字节,不区分是字母还是汉字
CREATE TABLE t11(
`name` CHAR(4)
);
INSERT INTO t11 VALUES('李浩谦nb');

SELECT * FROM t11;

CREATE TABLE t12(
`name` VARCHAR(4));
INSERT INTO t12 VALUES('李浩谦n');
INSERT INTO t12 VALUES('浩谦nb');
SELECT * FROM t12;

#char(4)是定长(固定的大小),就是说,即使你插入'aa',也会占用 分配的4个字符的空间
#char(4)上述这样就会造成空间的浪费
#varchar(4)是变长(变化的大小),就是说,如果你插入一个'aa',实际占用空间大小并不是4个字符
#而是按照实际占用空间来分配(varchar本身还需要1-3个字节来记录存放内容的长度)
#实际数据大小+(1-3)字节

日期类型的使用

#演示时间相关的类型
#创建一张表 ,date,datetime,timestamp
CREATE TABLE t14(
birthday DATE, #-- 日期
jobtime DATETIME,#--记录年月日 时分秒
login_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP); 
#--登录时间,如果希望login_time列紫红更新,需要配置

INSERT INTO t14(birthday,jobtime) VALUES('2022-11-11','2022-11-11 10:10:10');
SELECT * FROM t14;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/140225.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【斗破年番】毒宗决战万蝎门,小医仙惨遭背叛,斗宗巅峰蝎毕岩

Hello,小伙伴们,我是小郑继续为大家深度解析国漫资讯。 深度爆料斗破年番第七十话剧情解析,万蝎门宗主蝎毕岩,也算是这片大陆上的一小小块势力。一年前,他曾与小医仙正面交锋,即使当时的蝎毕岩已经站在了四星斗宗&…

2023年【广东省安全员B证第四批(项目负责人)】考试及广东省安全员B证第四批(项目负责人)试题及解析

题库来源:安全生产模拟考试一点通公众号小程序 广东省安全员B证第四批(项目负责人)考试考前必练!安全生产模拟考试一点通每个月更新广东省安全员B证第四批(项目负责人)试题及解析题目及答案!多…

若依系统富文本框上传图片报错!

报错如下: 原因:如图,富文本路径中存在 / 字符,导致上传出错。 解决方案:将富文本框内容在前端进行加密,后端再解密。 前端: 安装 crypto-js 插件 npm install crypto-js 创建工具类 :在 sr…

阿里云国际站:应用实时监控服务

文章目录 一、阿里云应用实时监控服务的概念 二、阿里云应用实时监控服务的优势 三、阿里云应用实时监控服务的功能 四、写在最后 一、阿里云应用实时监控服务的概念 应用实时监控服务 (Application Real-Time Monitoring Service) 作为一款云原生可观测产品平台&#xff…

微服务拆分的一些基本原则

文章首发公众号:海天二路搬砖工 单一职责原则 什么是单一职责原则 单一职责原则原本是面向对象设计中的一个基本原则,它指的是一个类只负责一项职责,不要存在多于一个导致类变更的原因。 在微服务架构中,一个微服务也应该只负…

使用vitis调试时debug按钮灰化无法进行操作

问题 使用vitis调试时debug按钮灰化无法进行操作。 原因 bitstream文件配置有误。 解决办法 重新配置正确的bitstream文件,如下:

Vue基础之组件通信(二)

个人名片: 😊作者简介:一名大二在校生 🤡 个人主页:坠入暮云间x 🐼座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。 🎅**学习目标: 坚持每一次的学习打卡 文章…

通过实例fpmarkets讲解三智者交易策略

今天fpmarkets和大家一起用实例解释三智者交易策略。 在每日BTCUSD图中,椭圆形区域标志着多头反转棒线。它创下了当地新低,但收盘时接近最高点。它标志着下半年的市场情绪更加乐观。酒吧在鳄鱼嘴的外面。 多头进场放在多头发散棒顶部上方。在这里fpmarke…

深度神经网络算子参数量和计算量分析—卷积篇

前言 在用于计算机视觉任务的深度神经网络模型中,卷积算子作为一种重要的特征提取方式被广泛应用,本文针对常见的卷积算子参数量和计算量的计算方法进行分析,主要包括普通卷积、深度可分离卷积、分组卷积,以及自动计算模型参数量和…

【Cookie 和 session 的区别】

会话(Session) 跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。cookie和session都是用来跟踪浏览器用户身份的会话方式。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。 我们目前使用…

游戏AI:游戏开发和运营的新增长点

游戏AI(Game AI)是指在游戏开发运营的过程中模拟人类玩家或创建虚构性对手行为的人工智能技术。游戏AI的目标是增强游戏的互动性、可玩性和挑战性,使游戏中的角色能够智能地做出决策和行为。在游戏的开发和运营过程中使用人工智能技术&#x…

热敏电阻B值含义

1.B值(材料常数) 也称为β值,该热敏电阻规格是NTC热敏电阻的电阻与温度之间关系的特定曲线。它是一个描述热敏电阻材料物理特性的参数,也是热灵敏度指标,B值越大,表示热敏电阻器的灵敏度越高。应注意的是&a…

如何利用反欺诈(羊毛盾)API提升电商平台交易安全性?

前言 近年来,随着网络交易的普及和互联网金融的快速发展,各类网络欺诈事件层出不穷。面对这些问题,电商平台必须采取有效的措施来保障交易安全。而反欺诈(羊毛盾)API正是一种高效、智能的解决方案,能够帮助…

postswigger 靶场(CSRF)攻略-- 2.令牌验证

靶场地址: What is CSRF (Cross-site request forgery)? Tutorial & Examples | Web Security Academy (portswigger.net)https://portswigger.net/web-security/csrf 令牌(token)验证取决于请求方法 题目中已告知易受攻击的是电子邮件的更改功能&#xff0…

web自动化框架之四测试报告的搭建

现状: 看过前面的文章,楼主用的是python,所以在搭建测试报告这块的时候使用的是unittesthtmlTestRunner;然后发现生成出来的报告,总是有那么不完美的地方,比如想增加图片,比如显示风格改变下&a…

DBever连接PG库

一、简介 DBeaver是一种通用数据库管理工具,适用于需要以专业方式使用数据的每个人;适用于开发人员,数据库管理员,分析师和所有需要使用数据库的人员的 免费(DBeaver Community) 的多平台数据库工具,支持 Windows、Li…

【哈夫曼树的构造和查找最小的的权值结点代码,哈夫曼编码的算法实现】

文章目录 哈夫曼树的构造和查找最小的的权值结点代码哈夫曼编码思想哈夫曼编码的算法实现 哈夫曼树的构造和查找最小的的权值结点代码 #include<iostream> using namespace std;typedef struct {int parent, lch, rch;//双亲结点和孩子结点的下标int weight;//权值 }htN…

ChinaSoft 论坛巡礼|开源软件供应链论坛

2023年CCF中国软件大会&#xff08;CCF ChinaSoft 2023&#xff09;由CCF主办&#xff0c;CCF系统软件专委会、形式化方法专委会、软件工程专委会以及复旦大学联合承办&#xff0c;将于2023年12月1-3日在上海国际会议中心举行。 本次大会主题是“智能化软件创新推动数字经济与社…

Go语言安装教程

【Go系列-1】-Go安装教程 环境提前准备 安装的时候可以选择自己的目录进行环境管理 E:\Z_Enviroment\Go创建文件夹&#xff1a; E:\Z_Enviroment\Go E:\Z_Enviroment\GoWorks E:\Z_Enviroment\GoWorks\bin E:\Z_Enviroment\GoWorks\pkg E:\Z_Enviroment\GoWorks\src环境变量…

OpenCV:图像噪点消除与滤波算法

人工智能的学习之路非常漫长&#xff0c;不少人因为学习路线不对或者学习内容不够专业而举步难行。不过别担心&#xff0c;我为大家整理了一份600多G的学习资源&#xff0c;基本上涵盖了人工智能学习的所有内容。点击下方链接,0元进群领取学习资源,让你的学习之路更加顺畅!记得…