MySQL数据库基础(七):DML数据表操作

文章目录

DML数据表操作

一、数据表的基本操作

1、数据表的创建

2、查询已创建数据表 

3、修改数据表信息

① 数据表字段添加

② 修改字段名称或字段类型

③ 删除某个字段

④ 修改数据表名称

4、删除数据表

二、字段类型详解

1、整数类型

2、浮点类型

3、日期类型

4、文本


DML数据表操作

特别注意:创建数据表必须有一个前提,首先要明确选择某一个数据库。

一、数据表的基本操作

1、数据表的创建

创建 => create

数据表 => table

创建 + 数据表 = create table 数据表名称

基本语法:

mysql> create table 数据表名称(字段1 字段类型 [字段约束],字段2 字段类型 [字段约束],...
); 

案例:创建一个admin管理员表,拥有3个字段(编号、用户名称、用户密码)

mysql> create database db_lanson;
mysql> use db_lanson;

use在MySQL中的含义代表选择,use 数据库名称相当于选择指定的数据库。而且use比较特殊,其选择结束后,其尾部可以不加分号;但是强烈建议所有的SQL语句都要加分号,养成一个好习惯。

mysql> create table tb_admin(id tinyint,username varchar(20),password char(32)
) engine=innodb default charset=utf8;

tinyint :微整型,范围-128 ~ 127,无符号型,则表示0 ~ 255

表示字符串类型可以使用char与varchar,char代表固定长度的字段,varchar代表变化长度的字段。

案例:创建一个article文章表,拥有4个字段(编号、标题、作者、内容)

mysql> use db_lanson;
mysql> create table tb_article(id int,title varchar(50),author varchar(20),content text
) engine=innodb default charset=utf8;

text :文本类型,一般情况下,用varchar存储不了的字符串信息,都建议使用text文本进行处理。

varchar存储的最大长度,理论值65535个字符。但是实际上,有几个字符是用于存放内容的长度的,所以真正可以使用的不足65535个字符,另外varchar类型存储的字符长度还和编码格式有关。1个GBK格式的占用2个字节长度,1个utf8格式的字符占用3个字节长度。gbk= 65532~65533/2,utf8 = 65532~65533/3

2、查询已创建数据表 

显示 => show

数据表 => table

显示所有数据表(当前数据库)

mysql> use 数据库名称;
mysql> show tables;

显示数据表的创建过程(编码格式、字段等信息)

mysql> desc 数据表名称;

3、修改数据表信息

① 数据表字段添加

修改 => alter

数据表 => table

基本语法:

mysql> alter table 数据表名称 add 新字段名称 字段类型 first|after 其他字段名称;
选项说明:
first:把新添加字段放在第一位
after 字段名称:把新添加字段放在指定字段的后面

案例:在tb_article文章表中添加一个addtime字段,类型为date(年-月-日)

mysql> alter table tb_article add addtime date after content;
mysql> desc tb_article;

② 修改字段名称或字段类型

修改字段名称与字段类型(也可以只修改名称)

mysql> alter table tb_admin change username user varchar(40);
mysql> desc tb_admin;

仅修改字段的类型

mysql> alter table tb_admin modify user varchar(20);
mysql> desc tb_admin;

③ 删除某个字段
mysql> alter table tb_article drop 字段名称;
mysql> desc tb_article;

④ 修改数据表名称
rename table 旧名称 to 新名称;

4、删除数据表

删除 => drop

数据表 => table

mysql> drop table 数据表名称;

二、字段类型详解

1、整数类型

分类类型名称说明
tinyint很小的整数-128 ~ 127
smallint小的整数-32768 ~ 32767
mediumint中等大小的整数-8388608 ~ 8388607
int(integer)普通大小的整数-2147483648 ~ 2147483647

以上字段类型,都是指有符号型(有正负);无符号型我们可以通过unsigned关键字来进行表示,如tinyint unsigned代表的范围就是0 ~ 255(只有正数)

2、浮点类型

浮点类型(精度失真情况)和定点类型(推荐使用定点类型)

分类类型名称
float单精度浮点数,占用4个字节
double双精度浮点数,占用8个字节
decimal(m,d)定点数,decimal(10,2),占用情况,如果M>D,为M+2否则为D+2

decimal(10,2) :代表这个数的总长度为10 = 整数长度 + 小数长度,2代表保留2位小数

问题:float/double/decimal如何选择?

1)如果你要表示的浮点型数据转成二进制之后能被32位float存储(1个字节=8位),或者可以容忍截断,则使用float,这个范围大概为要精确保存6位数字左右的浮点型数据 比如10分制的店铺积分可以用float存储,小商品零售价格(1000块之内)

2)如果你要表示的浮点型数据转成二进制之后能被64位double存储,或者可以容忍截断,这个范围大致要精确到保存13位数字左右的浮点型数据 比如汽车价格,几千万的工程造价

3)相比double,已经满足我们大部分浮点型数据的存储精度要求,如果还要精益求精,则使用decimal定点型存储 比如一些科学数据,精度要求很高的金钱

3、日期类型

份额里类型名称
yearYYYY 1901~2155
timeHH:MM:SS -838:59:59~838:59:59
dateYYYY-MM-DD 1000-01-01~9999-12-3
datetimeYYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~ 9999-12-31 23:59:59
timestampYYYY-MM-DD HH:MM:SS 1970~01~01 00:00:01 UTC~2038-01-19 03:14:07UTC

4、文本

类型名称说明
char(m)m为0~255之间的整数定长(固定长度)
varchar(m)m为0~65535之间的整数变长(变化长度)
text允许长度0~65535字节
mediumtext允许长度0~167772150字节
longtext允许长度0~4294967295字节

  • 📢博客主页:https://lansonli.blog.csdn.net

  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉

  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

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

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

相关文章

超声波清洗机洗眼镜好吗?超声波清洗机哪个品牌更值得推荐一些

随着科技的进步,很多朋友因为长时间沉迷于看电子产品,所以早早的就佩戴上眼镜了,从而离不开眼镜。眼镜长时间佩戴会导致上面积累着非常多的灰尘,堆积在镜片上就会导致视线变得模糊不清了,影响视线。然而很多人也很少去…

ArcGIS学习(八)基于GIS平台的控规编制办法

ArcGIS学习(八)基于GIS平台的控规编制办法 上一任务我们学习了”如何进行图片数据的矢量化?" 这一关我们来学习一个比较简单的案例一一”如何在ArcGIS中录入控规指标,绘制控规图纸?" 首先,先来看看这个案例的分析思路以及导入CAD格式的控规图纸。 接着,来看…

Python如何正确计算出“滑块验证码”的“缺失距离”(7)

前言 本文是该专栏的第63篇,后面会持续分享python爬虫干货知识,记得关注。 在本专栏之前,笔者有详细介绍过关于python如何解决“滑块缺失验证码”的方法,感兴趣的同学可以在本专栏往前翻阅并查看。 而本文,笔者将重点来介绍在处理爬虫项目的时候,遇到“滑块缺失的验证码…

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--强化学习、机器人等

专属领域论文订阅 VX关注{晓理紫},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 如果你感觉对你有所帮助,请关注我,每日准时为你推送最新论文。 为了答谢各位网友的支持,从今日起免费为…

17.Qt 单选框相关操作

目录 前言&#xff1a; 技能&#xff1a; 内容&#xff1a; 1. 布置界面 2.管理 3.槽函数 参考&#xff1a; 前言&#xff1a; 组合选择只能选择一个的单选框实现&#xff0c;以及管理组合单选框 技能&#xff1a; <QRadioButton> <QButtonGroup> 内容&…

python-产品篇-游戏-成语填填乐

文章目录 准备代码效果 准备 无需其他文件&#xff0c;复制即用 代码 import random list["春暖花开","十字路口","千军万马","白手起家","张灯结彩","风和日丽","万里长城","人来人往",&…

vscode配置使用和常见错误

先来看看如何使用vscode。 官网下载地址:Visual Studio Code - 代码编辑。重新 我是直接点Windows下载的&#xff0c;我看别人博客还分享下载缓慢的问题&#xff0c;大家如果也出现了可以去搜一搜&#xff0c;很容易解决。 一 大致使用 我们直接点打开文件&#xff0c;它会让…

Sora爆火,普通人的10个赚钱机会

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。&#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精通…

C++面试宝典第28题:寻找丢失的数字

题目 给定一个包含n个整数的数组nums,其中nums[i]在区间[1, n]内。请找出所有在[1, n]范围内,但没有出现在nums中的数字,并以数组的形式返回结果。 示例1: 输入:nums = [4, 3, 2, 7, 8, 2, 3, 1] 输出:[5, 6] 示例2: 输入:nums = [1, 1] 输出:[2] 解析 初看这道题,…

基于Java开发的个人视频网站的搭建与实现[附源码]

基于Java开发的个人视频网站的搭建与实现[附源码] &#x1f345; 作者主页 央顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获取联系方式 承接各种定制系统 &am…

root MUSIC 算法补充说明

root MUSIC 算法补充说明 多项式求根root MUSIC 算法原理如何从 2 M − 2 2M-2 2M−2 个根中确定 K K K 个根从复数域上观察 2 M − 2 2M-2 2M−2 个根的分布 这篇笔记是上一篇关于 root MUSIC 笔记的补充。 多项式求根 要理解 root MUSIC 算法&#xff0c;需要理解多项式求…

浅析太阳能电池量子效率测试系统的主要组成部分

太阳能电池量子效率测试系统是用于对太阳能电池进行量子效率测试的设备。量子效率是指太阳能电池在接收光照射时&#xff0c;将光子转化为电子的效率。太阳能电池的量子效率越高&#xff0c;其转化光能为电能的效率就越高。主要由以下几个组成部分构成&#xff1a; 光源&#x…