当前位置: 首页 > news >正文

sql 4,创建表类型

1,整数类型(类型,占有空间,范围)标准sql:int / integer   4字节  无符号 0 - 2/32-1  有符号 -2 31 / 2 / 31 -1 smallint        2字节  无符号 0 - 2/16-1  有符号 -2 17 / 2 / 17 -1mysql方言:tinyint         1字节  无符号 0 - 2/8 -1  有符号 -2 7 / 2/7-1mediumint       3字节  无符号 0 - 2/24 -1  有符号 -2 23 / 2/23-1bigint          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 8double(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 -> 66. 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' | 1910time    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

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 波导阵列天线单元学习笔记7 一种用直接金属激光烧结考虑的轻质量,宽带,双圆极化波导腔体阵列
  • Jmeter(十四)Jmeter分布式部署测试
  • 光降解水凝胶:三色光响应
  • 4.1 版本管理器——2PL与MVCC
  • 【CVPR‘24】DeCoTR:使用 2D 和 3D 注意力增强深度补全
  • 【web开发】Spring Boot 快速搭建Web项目(二)
  • ElasticSearch学习笔记(四)分页、高亮、RestClient查询文档
  • openGuass之CTE Reuse
  • 数据仓库系列17:元数据管理在数据仓库中的作用是什么?
  • 实用好软-----电脑端 开源的视频无损剪切与合并工具
  • Linux——性能调优工具一览
  • 数据资产目录中的主数据划分(汽车制造行业)
  • Go语言设计与实现 学习笔记 第六章 并发编程(2)
  • Ubuntu/Linux 配置 locale
  • 【AI学习笔记】AIGC,AI绘画 ComfyUI+ComfyUI Manager安装
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • JS 中的深拷贝与浅拷贝
  • [Vue CLI 3] 配置解析之 css.extract
  • 【EOS】Cleos基础
  • co.js - 让异步代码同步化
  • create-react-app做的留言板
  • interface和setter,getter
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • JS专题之继承
  • leetcode-27. Remove Element
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • overflow: hidden IE7无效
  • 基于web的全景—— Pannellum小试
  • 解析 Webpack中import、require、按需加载的执行过程
  • 入口文件开始,分析Vue源码实现
  • 软件开发学习的5大技巧,你知道吗?
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 王永庆:技术创新改变教育未来
  • 新手搭建网站的主要流程
  • 用mpvue开发微信小程序
  • 正则表达式
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 第二十章:异步和文件I/O.(二十三)
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​什么是bug?bug的源头在哪里?
  • ​一些不规范的GTID使用场景
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • #1014 : Trie树
  • (1)svelte 教程:hello world
  • (6)设计一个TimeMap
  • (C)一些题4
  • (Forward) Music Player: From UI Proposal to Code
  • (十六)Flask之蓝图
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (正则)提取页面里的img标签
  • (转)大型网站的系统架构
  • (转载)Linux 多线程条件变量同步
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .net 调用php,php 调用.net com组件 --