sql 4,创建表类型

news2024/11/15 12:23:06
1,整数类型(类型,占有空间,范围)

标准sql:
   int / integer   4字节  无符号 0 - 2/32-1  有符号 -2 31 / 2 / 31 -1 
   smallint        2字节  无符号 0 - 2/16-1  有符号 -2 17 / 2 / 17 -1

mysql方言:

   tinyint         1字节  无符号 0 - 2/8 -1  有符号 -2 7 / 2/7-1
   mediumint       3字节  无符号 0 - 2/24 -1  有符号 -2 23 / 2/23-1
   bigint          8字节  无符号 0 - 2/64 -1  有符号 -2 63 / 2/63-1
   
有符号: 列名 整数类型 -> 有符号| 有符号 有负值和正值
        列名 整数类型 unsigned -> 无符号|无符号 没有负值,都是正值,将负值部分,绝对值后,加入正值部分!
        
注意: 选合适范围,范围合适先占有空间最小的!           

练习1

创建一个ddl_d1库中,创建一个t1表,包含: 年龄和学号(范围不确定,但是没有负值)
CREATE TABLE t1(
   t1_age TINYINT UNSIGNED COMMENT '年龄,无符号,范围就是 0 - 255',
   t1_number BIGINT UNSIGNED COMMENT '学号,最大的,且没有负号'
)

2,

建表类型[浮点/定值]
浮点类型(类型,M,D)
   float(m,d)   4字节   m 24   d 8
   double(m,d)  8字节   m 53   d 30
定值类型(类型,M,D)
   decimal(m,d) 动态占有 m 65   d 30

使用对比:
   精度要求不高,例如:身高,体重 float / double 
   精度要求特别高,钱 工资,价格 decimal 

3,

建表类型[字符串]
字符串类型
   char 固定长度类型 一旦声明固定占有对应的空间 M 最大255 [性能较好]
   varchar 可变长度类型 一旦声明,可以插入小于的长度,自动进行伸缩 M 占有的空间不能超过一行的最大显示65535字节 [性能一般]
   text 大文本类型,声明不要指定长度,有固定的大小限制, text [65535] , 不占有一行的最大限制空间
细节理解
   1. char声明的时候可以不写m char = char(1)
   2. char声明了最大长度限制,输入的文本小于长度限制,会在右侧补全空格 char(5) -> 'abc' -> 'abc  '
   3. char类型在读取的时候,会自动去掉右侧的空格 'abc  ' -> 'abc'
   4. varchar声明的时候,必须添加m限制 varchar(m)
   5. mysql4.0以下版本 varchar(20) -> 20字节限制  mb3 -> 6
   6. mysql5.0以上版本 varchar(20) -> 20字符限制
   7. varchar类型中识别空格,插入空格 读取也是有空格
演示varchar最大限制
   前提: mysql中一行数据最大的占有空间是65535字节,除了TEXT or BLOBs类型的列(不占有65535限制 法外狂徒)
         一行-> name1列 -> name1列占有的最大空间65535字节
         varchar类型默认会使用1字节标识是否为null -> 65535-1 = 65534字节
         字符集utf8mb4 1个字符 = 4个字节   65534 / 4 = 16383
解决方案 :
   1. 缩小字符大小限制 m变小 [不合理]
   2. 可以修改字符集 [不合理]
   3. 可以将字符串类型变成TEXT,不占有一行的限制

4,

建表类型[时间类型]
  时间类型 
     year    1 yyyy | yy   '1910' | 1910
     time    3 HH:MM:SS    '10:10:10' 
     date    3 YYYY-MM-DD  '1910-10-10'
     datetime 8 YYYY-MM-DD HH:MM:SS '1910-10-10 10:10:10'
     timestamp 4 YYYY-MM-DD HH:MM:SS '1970-10-10 10:10:10'
  注意情况
     1. year可以写两位年 00 - 99  00-69 =2000 - 2069 70 - 99 = 1970 - 1999 推荐四位的年
     2. 时间类型,要遵循他们的格式插入,插入的时候就是按字符插入,时间默认不会自动赋值
  扩展自动填写时间:
   
  1.插入默认添加时间
        datatime | timestamp default current_timestamp 
     2.修改默认更改时间
        datatime | timestamp default current_timestamp on update current_timestamp 
  演示: 创建t2表,
         注册日期 字段插入自动添加时间,更新数据不变
         更新日期 字段插入自动添加时间,更新数据时间改变
*/
CREATE TABLE t2(
  name1 VARCHAR(20),
  reg_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '注册日期,插入数据自动维护时间',
  up_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT  '更新日期,插入数据填写时间,更新数据自动改变时间'
)

5,修改表中字段的名字

alter table books change 要修改的字段名 修改后的字段名 字段名的类型




alter table books change book_num book_num1 TINYINT

6,修改表的字段类型

alter table 表名 modify 要修改的字段 要修改为的字段类型



alter table books MODIFY book_num1 int

7,删除表中某个字段

alter table 表名 drop 字段名

alter table books drop books_num1

8,新增字段

alter table books add 新增的字段名  字段类型

alter table books add books_num2 int

9,修改表名

alter table books rename book

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

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

相关文章

Dnspy代码分析/反编译工具的简单使用:以骑砍2为例

前言: 如果我们需要做些反编译工作,改变游戏源码的时候,且该项目是由C#制作而成,便可以使用Dnspy工具。 1,安装 代码分析工具dnspy: ​ ​ 2,使用: 我们拿《骑砍2》举例&#x…

【IDEA】一键重启多个服务

点击Edit Configurations 点击加号,选择Compound 添加需要重启的服务,保存 选择配置好的Compound,一键重启 附加: 调整服务运行内存,Add VM options,填写合适的内存大小

日观芯设、亿方联创即将亮相IDAS 2024设计自动化产业峰会!

第二届设计自动化产业峰会IDAS 2024(Intelligent Design Automation Summit 2024)将于2024年9月23日-24日在上海张江科学会堂隆重举行。 上海日观芯设自动化有限公司、亿方联创科技有限公司将亮相峰会!期待与您相聚,与全球行业领…

登上神坛!这本代码逐行解读注释的transformer宝藏书籍,哪怕是零编程基础也能学懂!

PART.01 transformer必看好书 不管你是现在要学transformer,还是以后要学,这本书都值得你花时间来认真学习! 别看它封面平平无奇,这可还是除了《处理几乎所有机器学习问题》之外,我看到的第二本代码解读注释如此详细…

汽车小程序怎么做 汽车服务小程序系统开发制作方法

最近很多老板想要做一个自己公司的汽车服务小程序系统,但是不知道该怎么做,本次瀚林就为大家详细介绍一下汽车服务小程序系统的开发制作方法为大家做参考。 目前市面上的汽车服务有很多类型例如常见的:汽车维修、汽车用品、养护、汽车销售、新…

【动态规划 逆向】837. 新 21 点

本文涉及知识点 C动态规划 LeetCode837. 新 21 点 爱丽丝参与一个大致基于纸牌游戏 “21点” 规则的游戏,描述如下: 爱丽丝以 0 分开始,并在她的得分少于 k 分时抽取数字。 抽取时,她从 [1, maxPts] 的范围中随机获得一个整数作…

常用的人力资源管理系统的价格是多少?

企业的发展实质上就是企业人才的发展,做好人才管理是企业稳步发展的重要手段。许多企业意识到这点也开始建立自己的人力资源管理体系,但往往被自己遇到的复杂事务性问题所束缚,无法深入的去做人力资源管理。随着互联网的发展,人力…

3个方法对症下药:iphone备忘录删了怎么恢复?

iPhone的备忘录应用为我们的生活提供了很多便利,我们可以使用备忘录来记录生活中重要的事项,如密码,行程、会议内容等。但是,如果这些备忘录的内容不小心删除了怎么办呢?今天这篇文章就是来解决大家关于iPhone备忘录删…

MATLAB智能优化算法-学习笔记(1)——遗传算法求解0-1背包问题【过程+代码】

一、问题描述 (1)数学模型 (2)模型总结 目标函数:最大化背包中的总价值 Z。约束条件:确保背包中的物品总重量不超过容量 W。决策变量:每个物品是否放入背包,用0或1表示。这个数学模型是一个典型的0-1整数线性规划问题。由于其NP完全性,当问题规模较大时,求解此问题通…

某投资集团数据采集分析项目:实施全过程解析

在数字化转型的浪潮中,某投资集团以前瞻性的视野,积极响应市场变化,致力于构建高效、智能的数据管理体系。面对海量、复杂且分散的投资经营数据,该集团勇于探索,通过一系列精心策划与高效执行,携手亿信华辰…

盘点国内外好用的10款文件加密软件:企业文件防泄密的最佳选择

随着企业数据安全的重要性日益增加,文件加密软件成为保护敏感信息、防止数据泄漏的关键工具。无论是保护内部文档、财务记录还是客户数据,选择合适的加密软件都是企业信息安全的基础。以下是国内外好用的10款文件加密软件推荐,帮助企业提升数…

ZBrush入门使用介绍——12、折边

大家好,我是阿赵。   继续介绍ZBrush的功能。   如果拿一个立方体,进行CtrlD增加细分 会出现在边缘的线会被平滑的情况,这时候原来立方体的形状会发生一定的变化,不能保持原来的形状。 如果立方体真的只有8个顶点&#xff0…

关于怎么使用Charles

一、原理图二、Charles优点三、Charles组件介绍四、安装与使用1. 安装Charles2. Charles快速查找接口的四种技巧2.1 过滤1)通过filter功能过滤2)通过find功能过滤3)通过Recording Settings功能过滤4)通过Focus或Ignore聚焦或忽略指…

Stream DATA From openai GPT-3 API using php

题意:“使用 PHP 从 OpenAI GPT-3 API 流式传输数据” 问题背景: Im having trouble with the OpenAI API, Basically what Im trying to do is stream each data node that is streamed back from the openai API response and output each data node …

ModBus RTU、ModBus ASCII、ModBus TCP,它们有什么区别?

ModBus是一种通信协议,用于连接自动化设备(如PLC、温度控制器等)和计算机。它被广泛应用于工业控制系统,支持多种通信方式,包括ModBus RTU、ModBus ASCII和ModBus TCP 3种模式。 Modbus是一种应用层协议,它…

在线绘制甘特图!推荐这款白板绘图神器,职场办公必备!

在当今快节奏的现代职场中,高效的项目管理和任务规划至关重要。作为一种强大的可视化工具,甘特图在项目管理中扮演着不可或缺的角色。它能够直观地展示项目进度、任务分配和时间安排,帮助团队成员更好地理解和执行项目计划。 甘特图是什么意…

SQL血缘解析

Druid 作为使用率特别高的的数据库连接池工具,在具备完善的连接池管理功能外,同时Druid 的 SQL解析功能可以用来防止 SQL注入等安全风险。通过对 SQL 语句进行解析和检查,Druid 可以识别并阻止潜在的恶意 SQL 语句执行,黑名单(阻止特定的 SQL 语句执行)、白名单(仅允许特…

解决添加MPJ插件启动报错

在项目中需要用到多数据源的级联查询,所以引入了MPJ插件,MPJ的版本是1.2.4,MP的版本是3.5.3,但却在启动的时候报错,报错如下: 解决办法: 将MP的版本降到3.5.1

【苍穹外卖】Day1 环境搭建 接口文档

1 软件开发整体介绍 1.1 软件开发流程 | 需求分析 | 形成两个文档:需求规格说明书、产品原型 | 设计 | UI 设计、数据库设计、接口设计 | 编码 | 项目代码,单元测试 | 测试 | 测试用例、测试报告 | 运维 | 软件环境安装、配置 1.2 角色分工 1.3 软件…

企业开展TPM管理培训需要什么条件?

在探讨企业如何有效开展TPM管理培训时,我们不得不深入分析几个核心要素,这些要素构成了成功实施TPM管理培训的必要条件。TPM作为一 种追求生产系统效率最大化的现代管理理念,其成功推行不仅依赖于先进的技术手段,更离不开企业内部…