MySQL_数据类型建表

复习:

我们昨天学习的知识都忘了嘛?如果忘了也不要担心,我来带大家来复习一遍吧!!!

1.查看所有数据库     show databases;
2.创建属于自己的数据库    create database 数据库名;

检查自己创建的数据库是否已经存在,如果已经存在就报错,不存在时就成功创建:
create database if not exists数据库名;

相当于在自己创建库时添加了一个校验
强烈建议大家在创建数据库的时候指定编码集和排序规则


create database if not exists 数据库名 character set utf8mb4|collate utf8mb4_0900_ai_ci;MYSQL8.0版本固定写法
3.查看警告信息              show warnings;
4.查看当前数据库服务默认的编码集  show variables like '%character%';

咱们昨天讲的都已经复习完了,让我们开始对新知识的学习吧!!!


  1.  建库小知识


create database 库名;
如果我想创建一个名字为create 或database的数据库,可不可以?

我们可以看到MYSQL报了错误,这是因为这两个都上是MYSQL中的关键字


但是MYSQL中允许开发者使用关键字命名,但是在使用的时候要用反引号把关键字引起来反引号在键盘上的位置,ESC下边,TAB上边,1的左边,要用英文字符


我们可以看到创建成功了

所以我们在使用其他的关键字的时候也是一样的,比如:show create .......

2. 选择库

我们可以看到上述有11个数据库,那么我们要怎么去选择我们要的数据库呢?

此时  USE 就是我们要选择操作数据库的关键字:

用法:
use 数据库名[;]   

 select database();    查看当前选择(操作)的是哪个数据库    

切换(选择)数据库成功
database()    为MSYQL提供的一个内置方法    
 

3.删除数据库



mysql> drop database 'create`     只要出现Query Ok,就表示执行成功    

注意:
在我们今后的工作中删库跑路,这个词在我们业务非常常见    ,但是我们真的可以随便删库跑路吗?
1.如果说明恶意删库,那么直接110打起来    
2.如果是因为工作失误删了库,最起码年终奖没有了,有可能还会影响在公司的晋升机会    
所以数据库中所储存的数据对公司来说非常重要,也是公司的核心资产,大家操作数据库的时候    
一定要有敬畏之心 , 不能随便删库跑路。在自己的项目或是公司中千万不要这么做使用之前一定要慎之又慎,如果公司中有这样的需求,一定要把你的领导同事叫过来,一起来干这个事 drop 开头的SQL语句,可以把他忘了

例子:
之前就是有一个顺丰的程序员,删库之后,从公司离职了,其他的大厂抛来了橄榄枝,因为在行
删除数据库是一个非常非常危险的操作,最后进局子了
 

4.数据类型

1. 类型列表

2 数据类型取值范围

3 类型列表

4 CHAR与VARCHAR的区别

• CHAR 固定⻓度的字符串, M 表⽰以字符为单位的列⻓度,取值范围 0 ~ 255 ,省略则⻓度为 1 ,在存储时总是⽤空格向右填充到指定的⻓度,获取列的值时会从尾部删除空格。允许定义 CHAR(0),此时列的值只能为NULL或空字符串,主要的⽬的是为了旧系兼容,⽐如类中必须有这个 属性,但不使⽤这个属性的值,也就是说值并没有意义,但列⼜不能没有。

• VARCHAR 可变⻓度字符串。 M 表⽰以字符为单位的最⼤列⻓度,取值范围0 ~ 65,535 (在所 有列中共享),有效⻓度取决于实际字符数和使⽤的字符集,并且⽤额外的⼀或两个字节记录实际使 ⽤的字节数,当实际字节数不超过255个字节⽤⼀个字节记录⻓度,超过255个字节时,使⽤两个 字节记录⻓度,获取列的值时不会从尾部删除空格,插⼊数据时会删除超出⻓度的空格。

5 如何选择CHAR与VARCHAR

• 如果数据确定⻓度都⼀样,就使⽤定⻓ CHAR 类型,⽐如:⾝份证,md5,学号,邮编。

• 如果数据⻓度有变化,就使⽤变⻓ VARCHAR ,⽐如:名字,地址,但要规划好⻓度,保证最⻓的字 符串能存的进去。

• 定⻓ CHAR 类型⽐较浪费磁盘空间,但是效率⾼。

• 变⻓ VARCHAR 类型⽐较节省磁盘空间,但是效率低。 • 定⻓ CHAR 类型会直接开辟好对应的存储空间。

• 变⻓ VARCHAR 类型在不超过定义⻓度范围的情况下⽤多少开辟多少存储空间。

6 VARCHAR与TEXT的区别

• 容量⼤⼩: VARCHAR 最⼤⽀持 65535 个字节; TEXT 最⼤⽀持 65535 个字节,在指定TEXT ⻓度时,当超过 65535 时⾃动转换为 MEDIUMTEXT 类型,当超过 16,777,215 时⾃动转换为 LONGTEXT 类型

• 存储位置: VARCHAR 类型的列实际内容⼩于768个字节时存在当前⾏,⼤于768时存在溢出⻚, 当前⾏保存溢出⻚的地址; TEXT 类型的列整体保存在溢出⻚,当前⾏只保存溢出⻚地址

• 查询性能:对于频繁查询的 VARCHAR 列可以创建索引,提升查询性能; TEXT 类型的列⽆法直 接创建普通索引,但可以使⽤ FULLTEXT 索引,由于索引的⽀持和存储位置的不同, VARCHAR 列的性能⾼于 TEXT 类型的列

• 适⽤场景:如果存储的数据⻓度较⼩且需要创建索引进⾏检索,可以选择 VARCHAR 类型,⽐如姓 名,⽤⼾,邮箱等;如果存储的数据⻓度较⼤且不需要频繁以该列为条件进⾏检索可以选择 TEXT 类型,⽐如⽂章内容等。

5. ⽇期类型

6.表的操作

创建完数据库之后,就要在数据库中创建表表中存储的数据记录,一条记录由不同的列组成

需要创建表时,先要选择要操作的数据库 use 数据库名

1.创建表

示例: 创建一个名字为student的学生表,表中只包含两个字段,id 表示编号,name表示姓名,长度为50
 (    强烈建议每张表中都要设计一个编号字段,数据型为bigint    )
 varchar的长度记得要指定,当前这个长度是我们拍脑门拍出来的
在实际工作中要根据详细设计文档中的描述转换为代码就可以了
show tables;    查看当前数据库中有哪些表    



出现这个结果就表示表已经创建成功了

2. 查看表结构:

命令行客户端工具,只执行一些简单的查询或是指令,如果一两句SQL可以搞定就在这里面去执行如果说要编复杂的SQL,比如表设计,复杂查询,建议大家还是去可视化工具中编写

如果在可视化编辑工具中把创建表的SQL编写好了,如何在命令行工具中执行?

1.下载一个MYSQL的图形化界面工具 Navicat Premium 15,并打开

2。点右上角的连接,输入连接名(自己随便写,但是不要是中文),输入MYSQL中自己设置的密码

3.点击自己要用的数据库,并点击新建查询,就使用了可视化编辑工具Navicat Premium 15

3.校验表操作

4.删除表

关于drop一定要谨慎操作
删除表之后,很难第一时间被发现,删表的危害并不亚于删库
删除库之后,我们的程序在运行的过程中就连不上数据库了,只要发现问题就会及时报警,以便修复问题

今日份总结

关于表的操作
1. show tables;查看当前数据库中所有的表

2. use 数据库 :选择你要使用的数据库

3. select database(); :查看你使用的数据库
2. create table (
字段名1数据类型  comment ' 备注名',

字段名2 数据类型  );
3.desc 表名; 查看表结构
4. drop table [if exists] 表名;

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

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

相关文章

零基础入门进程间通信:task 1(匿名管道与vscode使用)

目录 引言 VSCODE使用 进程间通信正题 基础背景 进程间通信分类 匿名管道 理解匿名管道 代码实现 匿名管道的特性 管道的四种情况 应用场景 引言 在当今的计算机技术领域,操作系统作为计算机系统的核心组件,承担着资源管理、任务调度和进程管…

Vue 3 的 全局状态管理

1.思路梳理 工厂仓拣货信息:Factory Picking Info (FPI)工厂仓调度信息:Factory Scheduling Info (FSI)DC 收货信息:DC Receiving Info (DCRI)上架信息:Shelving Info (SI)盘点信息:Inventory Count Info (ICI)移位信…

Win系统通过命令行查看笔记本电池损耗/寿命/健康

在 Windows 10/11 系统中,可以通过指令查看笔记本电池的寿命情况,方法如下: 0,打开cmd/终端 键盘快捷键:Win R,然后输入cmd,点击【确定】 1,执行命令 在命令行中输入下面指令并按…

【DM系列】DM 集成 JDBC 开发指南

前言 数据库访问是数据库应用系统中非常重要的组成部分,DM 作为一个通用数据库管理系统,提供了多种数据库访问接口,包括 ODBC、JDBC、DPI 等方式。本开发指南详细介绍了 DM 的各种访问接口、相应开发环境的配置、以及一些开发用例。本指南的主…

【客观理性深入讨论国产中间件及数据库-科创基础软件】

随着国产化的进程,越来越多的国企央企开始要求软件产品匹配过程化的要求, 最近有一家银行保险的科技公司对行为验证码产品就要求匹配国产中间件, 于是开始了解国产中间件都有哪些厂家 一:国产中间件主要产品及厂商 1 东方通&…

python opencv3

三、图像预处理2 1、图像滤波 为图像滤波通过滤波器得到另一个图像。也就是加深图像之间的间隙,增强视觉效果;也可以模糊化间隙,造成图像的噪点被抹平。 2、卷积核 在深度学习中,卷积核越大,看到的信息越多&#xff0…

数据库管理-第258期 23ai:Oracle Data Redaction(20241104)

数据库管理258期 2024-11-04 数据库管理-第258期 23ai:Oracle Data Redaction(20241104)1 简介2 应用场景与有点3 多租户环境4 特性与能力4.1 全数据编校4.2 部分编校4.3 正则表达式编校4.4 随机编校4.5 空值编校4.6 无编校4.7 不同数据类型上…

Kettle——CSV文件转换成excel文件输出

1.点击—文件—新建—转换 拖入两个组件: 按shift+鼠标左击建立连接,并点击主输出步骤, 点击CSV文件输入,选择浏览的csv文件,然后点击确定 同样,Excel也同上,只是要删除这个xls 并…

【数据集】【YOLO】【目标检测】火情、烟雾、火灾检测数据集 9848 张,YOLO火灾检测算法实战训练教程!

数据集介绍 【数据集】火情、烟火、火灾检测数据集 9848 张,目标检测,包含YOLO/VOC格式标注。 数据集中包含2种分类:{0: Fire, 1: Smoke},分别是‘火焰’和‘烟雾’。 数据集来自国内外图片网站和视频截图; 可用于…

Python酷库之旅-第三方库Pandas(202)

目录 一、用法精讲 941、pandas.CategoricalIndex.set_categories方法 941-1、语法 941-2、参数 941-3、功能 941-4、返回值 941-5、说明 941-6、用法 941-6-1、数据准备 941-6-2、代码示例 941-6-3、结果输出 942、pandas.CategoricalIndex.as_ordered方法 942-1…

docker 拉取MySQL8.0镜像以及安装

目录 一、docker安装MySQL镜像 搜索images 拉取MySQL镜像 二、数据挂载 在/root/mysql/conf中创建 *.cnf 文件 创建容器,将数据,日志,配置文件映射到本机 检查MySQL是否启动成功: 三、DBeaver数据库连接 问题一、Public Key Retrieval is not allowed 问题…

Java多线程详解⑤(全程干货!!!)线程安全问题 || 锁 || synchronized

这里是Themberfue 在上一节的最后,我们讨论两个线程同时对一个变量累加所产生的现象 在这一节中,我们将更加详细地解释这个现象背后发生的原因以及该如何解决这样类似的现象 线程安全问题 public class Demo15 {private static int count 0;public …

如何使用RabbitMQ和Python实现广播消息

使用 RabbitMQ 和 Python 实现广播消息的过程涉及设置一个消息队列和多个消费者,以便接收相同的消息。RabbitMQ 的 “fanout” 交换机允许你将消息广播到所有绑定的队列。以下是如何实现这一过程的详细步骤。 1、问题背景 在将系统从Morbid迁移到RabbitMQ时&#x…

【RabbitMQ】04-发送者可靠性

1. 生产者重试机制 spring:rabbitmq:connection-timeout: 1s # 设置MQ的连接超时时间template:retry:enabled: true # 开启超时重试机制initial-interval: 1000ms # 失败后的初始等待时间multiplier: 1 # 失败后下次的等待时长倍数,下次等待时长 initial-interval…

java的类加载机制的学习

一、类加载的过程 一个类被加载到虚拟机内存中开始,到卸载出虚拟机内存为止,整个生命周期分为七个阶段,分别是加载、验证、准备、解析、初始化、使用和卸载。其中验证、准备和解析这三个阶段统称为连接。 除去使用和卸载,就是Ja…

uni-app跨域set-cookie

set-cookie的值是作为一个权限控制的 首先,无论什么接口都会返回一个set-cookie,但未登录时,set-cookie是没有任何权限的 其次,登录接口请求时会修改set-cookie,并且在后续其他接口发起请求时,会在请求头…

让智能体—“正念365”陪你一起“养心”

佛学的“八正道”中,笔者个人观点,“正念”是最适合当代人低门槛练习的一个,因为不需要阅读大量的知识来理解概念,只需要保持对当下的觉察,发现分心了,就不带评价的把注意力拉回到当前的事情上就好。就是佛…

浅析Android Handler机制实现原理

0. 背景描述 Android系统出于对简单、高效的考虑,在设计UI体系时采用了单线程模型,即不会在多个线程中对同一个UI界面执行操作。简单是指单线程模型可以不用考虑和处理在多线程环境下操作UI带来的线程安全问题,高效是指单线程模型下无需通过…

vue 3:监听器

目录 1. 基本概念 2. 侦听数据源类型 1. 监听getter函数 2. 监听 ref 或 reactive 的引用 3. 多个来源组成的数组 4. 避免直接传递值!!! 3. 深层侦听器 4. 立即回调的侦听器 5. 一次性侦听器 6. watchEffect() 7. 暂停、恢复和停止…

沉浸式学习新体验:3D虚拟展厅如何重塑教育格局!

3D虚拟展厅对于教育行业产生了深远的影响,主要体现在以下几个方面: 一、创新教学方式 3D虚拟展厅利用三维技术构建的虚拟展示空间,为教育行业带来了一种全新的教学方式。传统的教学方式往往局限于书本和课堂,而3D虚拟展厅则能够…