MySQL(3)表的操作

目录

                1. 表的操作;

                2. 数据类型;


1. 表的操作:

1.1 创建表:

语法: create table 表名(

          属性  类型 [comment '   '], 

          属性  类型 [comment '   '],

          属性   类型

         ) character set 字符集  collate 校验集 engine 存储引擎;

 

前面博客提到: MyISAM和InoDB这两个比较重要.

 1.2 查看表结构:

语法: desc 表名;

 1.4 修改表:

修改包括: 增加, 修改, 删除;

(1)增加语法: alter table 表名 add 增加属性 类型 after 原来属性;

(2)修改语法: alter table 表名 modify 原来属性 新类型;

(3)删除语法: alter table 表名 drop 属性;

(4)修改表名:

语法: alter table 表名  rename [to] 新表名;

修改属性及其类型:

语法: alter table 表名 change 旧属性 新属性 新类型;

1.5 删除表:

语法: drop table 表名;

 2. 数据类型:

2.1数据类型分类:

2.2 数值类型:

2.2.1 tinyint:

tinyint: 是1个字节, 它的取值范围是 [-128,127]; 超出这个范围就会越界访问,报错.

⭐ 整形可以指定是有符号还是无符号的,默认是有符号的. 关键字: unsigned ;

 tinyint 无符号范围是[0,255] ;

🍔 补充: smallint: 2个字节, 那么它的取值范围就是[-2^(n*8-1) , 2^(n*8-1) - 1];

那么就是[-32768, 32767];  那么无符号取值范围就是[0, 2^(n*8)-1] ; 那么就是[0, 65535];

还有int: 是4个字节, bigint: 8个字节;

2.2.2 bit:

语法: bit(n); 1<= n <= 64; 默认不写就是1;

bit是按照ASCII码进行显示的;

如果想要存放0/1, 那么就可以使用bit(1), 节省空间, 但是插入数据就只能是一位二进制.

2.2.3 float:

语法: float(n,m) [unsigned]  n表示指定长度, m是小数点后保留几位. 占用4个字节.

🌰 float(4, 2): 表示就是xx.xx, 并且是有符号的, 保留两位小数. 那么范围就是[-99.99, 99.99];

那么同理float(6, 2) 范围就是[-9999.99, 9999.99].

⭐ 如果插入的数据小数部分还会进行四舍五入, 如果四舍五入之后超过范围会报错, 反之就会成为最大/最小范围值.

再思考一下无符号类型呢?  float(4, 2) 范围就是[0, 99.99];

2.2.4 decimal:

decimal的语法使用和float是一样的, 但是decimal的精度是高于float的;

⭐ float的精度最高是7位, decimal的精度最高是65位.

2.2.5 char:

语法: char(n); 最大长度是255; 占1个字节

⭐ 这里的n并不是2个字节, 是字符的个数.

2.2.6 varchar:

语法: varchar(n); 最大长度是65535;占2字节.

⭐ 这里的n的大小是多少? 其实和编码集相关的;

一般还要使用1-3个字符记录数据的大小, 所以就是65532;

如果编码集是utf8, 那么一个字符占3字节, 65532/3=21844;

如果编码集是gbk, 那么一个字符占2字节, 65532/2=32766;

🍋 char和varchar的对比:

        char和varchar的不同点就是占用字节的计算, char是根据n来进行计算, varchar是根据具体字符进行计算的.

🌰  abcd 和 A 分别被char(4) AND varchar(4):

       char(4): abcd: 4*3 = 12; A: 4*3 = 12;

       varchar(4): abcd: 4*3 + 1=13;  A: 1*3 + 1= 4;

🍔如何选择定长和变长字符串呢?

a. 长度确定就使用定长, 不确定就变长;

b. 定长磁盘空间浪费, 但效率高; 变长相反; 

c. 定长是直接开辟好的空间, 变长是用多少开辟多少.

2.2.7 日期和时间:

(1) date: 日期 'yyyy-mm-dd' 占3个字符;

(2) datatime: 日期格式 'yyyy-mm-dd HH:ii:ss' 占8个字符;

(3) timestamp: 时间戳 , 从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用 四字节;

🍔 update 表名 set 属性=新属性;

2.2.8 enum 和 set:

enum语法: enum('选项1', '选项2', ...);

⭐ 这些值实际存储的是数字, 每个选项值对应一个数字1,2,3,...

set语法: set('选项1', '选项2', ...);

🍔 where和find_in_set: 区别就是where查找完整的, find_in_set查找相关的.

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

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

相关文章

3. 序列生成

1.复习状态机&#xff0c;使用状态机实现序列生成 1.1 设计要求 用有限状态机生成序列001011&#xff0c;串行循环输出该序列。 1.2 设计代码&#xff0c;仿真及波形 状态机&#xff1a;不考虑状态简化的情况下&#xff0c;要输出的序列多少位&#xff0c;就用多少个状态&a…

简约唯美的404HTML源码

源码介绍 简约唯美的404HTML源码,很适合做网站错误页,将下面的源码放到一个空白的html里面,然后上传到服务器里面即可使用 效果预览 完整源码 <!DOCTYPE html> <html><head><meta charset="utf-8"><title>404 Error Example<…

windows实现自动化按键

1.选择目标窗口 获取窗口句柄 void KeyPresser::selectWindow() {SetWinEventHook(EVENT_SYSTEM_FOREGROUND, EVENT_SYSTEM_FOREGROUND, NULL, WinEventProc, 0, 0, WINEVENT_OUTOFCONTEXT);selectedWindowLabel->setText("请点击目标窗口..."); }void CALLBACK …

在 Windows 上开发.NET MAUI 应用_1.安装开发环境

开发跨平台的本机 .NET Multi-platform App UI (.NET MAUI) 应用需要 Visual Studio 2022 17.8 或更高版本&#xff0c;或者具有 .NET MAUI 扩展的最新 Visual Studio Code。要开始在 Windows 上开发本机跨平台 .NET MAUI 应用&#xff0c;请按照安装步骤安装 Visual Studio 20…

Modbus转Ethernet/IP网关模块与汇川PLC通讯案例

Modbus转Ethernet/IP网关模块&#xff08;XD-MDEP100&#xff09;是一种用于将Modbus协议转换为Ethernet/IP协议的设备。它可以将Modbus RTU和Modbus TCP两种不同格式的Modbus数据包转换为Ethernet/IP协议的数据包&#xff0c;实现不同厂家的设备之间的数据交换和共享。在汇川P…

【AI技术揭秘】一键锐化图像,让您的照片立即变身高清大片!

一键锐化图像 1. 概述1.1 图像锐化的概念及重要性1.2 利用人工智能实现图像锐化的基本原理 2. 常用图像锐化算法简介2.1 Sobel算子2.2 Laplacian算子2.3 Unsharp Masking算法2.4 High Boost Filtering算法2.5 算法原理及实际应用效果 3. 基于深度学习的图像锐化算法3.1 介绍深度…

MySQL Workbench下载安装

官方下载地址&#xff1a; https://dev.mysql.com/downloads/workbench/ 下载完后&#xff0c;点击安装包即可 但是安装之前&#xff0c;必须要先安装Visual C 2019运行库 安装完后&#xff0c;添加数据库连接 点击 Schemas可以看到列表 点击Server可以找到导出、导入数据的菜…

如何找回回收站清空的文件?回收站文件恢复教程

电脑回收站文件被清空还能恢复之前的文件吗&#xff1f;一般情况下&#xff0c;我们把电脑桌面或C盘里的文件删除后&#xff0c;系统会将它们暂时存放在回收站里。如果想恢复这种文件&#xff0c;点击鼠标右键就可以“恢复”。 但是&#xff0c;如果为了清空垃圾增加电脑内存&a…

QT开发笔记:信号和槽

乱码问题&#xff1a; 出现乱码问题原因只有一个&#xff1a;就是编码方式不匹配&#xff01;&#xff01;&#xff01; 中文常见汉字4K,算上各种生僻字差不多六万字 仍然使用一个大表格&#xff0c;给每个汉字&#xff0c;分配一个整数即可。 字符集~~表示汉字的字符集&#…

前端开发之盒子模型

目录 盒子分类 display属性 盒子内部结构特征 padding填充区 border边框区 margin外边距 盒子width和height边界 盒子分类 块级盒子&#xff08;又叫块级元素、块级标签&#xff09; 特征&#xff1a;独占一行&#xff0c;对宽度高度支持 如&#xff1a;p div ul li h1…

Android 11 HAL层集成FFMPEG

1.集成目录&#xff1a; android/vendor/noch/common/external/NoboMediaCodec 2.文件夹目录 3. Android.mk实现 # Copyright #LOCAL_PATH : $(call my-dir)SF_COMMON_MK : $(LOCAL_PATH)/common.mkinclude $(call first-makefiles-under,$(LOCAL_PATH))4.common.mk实现 # #…

图示 JVM 可达性分析算法

可达性分析算法&#xff1a; 以 GC Roots 为起始点进行搜索&#xff0c;可达的对象都是存活的&#xff0c;不可达的对象可被回收。 Java 虚拟机使用该算法来判断对象是否可被回收&#xff0c;GC Roots 一般包含以下内容&#xff1a; 虚拟机栈中局部变量表中引用的对象本地方法栈…

Docker安装Mysql8.0主要步骤及安装过程中遇到的问题

一、创建MySQL配置目录 mkdir -p /data/mysql/data /data/mysql/logs 二、创建MySQL8镜像 docker run -p 3306:3306 --name mysql8 --restart always \ -v /data/mysql/logs:/logs \ -v /data/mysql/data:/var/lib/mysql \ -v --privilegedtrue \ -e MYSQL_ROOT_PASSWORD123…

注册安全分析报告:OneApm

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞 …

exif格式及解析库easyexif使用介绍

1. JPEG文件结构和EXIF数据的信息 JPEG文件以字符串"0xFFD8"开头表示图像信息开始,以字符串"0xFFD9"结尾表示图像信息结束。 在JPEG文件头中有一系列"0xFF??"格式的数据段,称为"标识",用来标记JPEG文件的信息段。 0xFFE0-0xFFEF之间…

隐藏需求缺失的4种解决技巧

在需求分析过程中&#xff0c;隐藏需求的缺失往往会造成项目范围扩张、成本增加&#xff0c;造成延期交付和风险增加等问题&#xff0c;直接影响客户满意度。而隐藏需求的挖掘和确认&#xff0c;有利于优化项目范围&#xff0c;提升产品质量&#xff0c;增强团队信心。 因此&am…

MySQL 数据库 day 7.16

ok了家人们今天继续记录一下数据库,看看今天学了什么。 一.事物概述 1.1 环境准备 -- 账户表 create table account( id int primary key auto_increment, name varchar(20), money double );insert into account values (null,张三,1000); insert into account values (n…

【iOS】——ARC源码探究

一、ARC介绍 ARC的全称Auto Reference Counting. 也就是自动引用计数。使用MRC时开发者不得不花大量的时间在内存管理上&#xff0c;并且容易出现内存泄漏或者release一个已被释放的对象&#xff0c;导致crash。后来&#xff0c;Apple引入了ARC。使用ARC&#xff0c;开发者不再…

英福康INFICON TWare 32 软件操作说明

英福康INFICON TWare 32 软件操作说明

CVE-2024-24549 Apache Tomcat - Denial of Service

https://lists.apache.org/thread/4c50rmomhbbsdgfjsgwlb51xdwfjdcvg Apache Tomcat输入验证错误漏洞&#xff0c;HTTP/2请求的输入验证不正确&#xff0c;会导致拒绝服务&#xff0c;可以借助该漏洞攻击服务器。 https://mvnrepository.com/artifact/org.apache.tomcat.embed/…