首页 > 数据库 >mysql基础数据类型

mysql基础数据类型

时间:2022-11-23 21:49:39浏览次数:36  
标签:11 varchar int 数据类型 mysql 基础 time 类型 table

目录

创建表的完整语法

create table 表名(
	字段名 字段类型(数字) 约束条件,
	字段名 字段类型(数字) 约束条件,
 	字段名 字段类型(数字) 约束条件
);
1.字段名和字段类型是必须的
2.数字和约束条件是可选的
3.约束条件也可以写多个 空格隔开即可
4.最后一行结尾不能加逗号
ps:编写SQL语句报错之后不要慌 仔细查看提示 会很快解决 

表字段类型之整形

'''
一个字节是八个比特,即:1byte = 8bit。
1kb= 1024byte,1m=1024kb,1G = 1024m。
'''

tinyint  1bytes   正负号(占1bit)
smallint 2bytes   正负号(占1bit)
int 	   4bytes   正负号(占1bit) 
bigint   8bytes   正负号(占1bit)


int 类型默认是带正负号的
int 可存取范围 -2147483648 ~ 2147483647
int unsigned  表示取消正负号 0~4294967295


create table l1(id int,uid int unsigned,zid int(5));
# int(5)意思最少5位 不够用0在前面补.

insert into l1 values(-100,200,12);


表字段类型之浮点型

float(10,2)
# 总共存储10位 小数点后保留2位小数
douule(20,10)
# 总共存储20位 小数点后保留10位

decimal(10,2)
# 总数位10位, 小数点后保留2位
# 如果不填写 decimal()括号数字 默认(10,0)

一般项目中 涉及到金额的 都用 decimal 

create table l2(money decimal(10,2));

三者的核心区别在于精确度不同
	float	<	double  < 	decimal

表字段类型之字符串

char(m)   

定长字符串: 
m代表字符串的长度 最大存储长度255个字符

定长的体现:
如果内容长度小于m 也会占用m的长度,例如 char(5) 数据是;1
底层也会占用5个字符。如果数据是 哈哈哈哈哈哈 超过5个字符会报错
注意要使用严格模式
非严格模式不会报错 但是会导致数据被阶段


varchar(m)

变长字符串:
m代表字符串的长度,但是与char不同 如果字符串长度小于m则存取真实
长度 例如 varchar(5) 数据 哈哈 那只会占用2个字符,如果超过5个字符也是会报错  varchar 最大储存字符长度65535字节

char:
    优点 :存取速度相对于varchar更快 因为是整存争取
    缺点 :可能浪费更多内存空间,因为不管数据大小都是存统一大小
    最大存储长度255个字符
    
    sql_mode='strict_trans_tables,pad_char_to_full_length';
# 保留定长的默认空格 一般不使用

varchar:
    优点:可以节约内存空间 储存数据真实大小长度
         最大储存字符长度65535字节
    缺点:为了精确读取 底层对多处一个报头接收长度,相对于
         char存取速度较慢
      
"""
char与varchar的使用需要结合具体应用场景
"""



text类型 可以保存很长的字符 一般用于 文章 新闻的储存

create table l1(new text);

表字段类型之时间

datetime 年月日时分秒  

展示时间跟mysql所在主机系统时区相关 中国时间 CST

date  年月日

time  时分秒

year			年

create table t17(
	id int,
  	name varchar(32),
 	register_time datetime,
 	birthday date,
 	study_time time,
 	work_time year
);
insert into t17 values(1,'jason','2000-11-11 11:11:11','1998-01-21','11:11:11','2000');
ps:以后涉及到日期相关字段一般都是系统自动回去 无需我们可以操作


year			年

create table t17(
	id int,
  	name varchar(32),
 	register_time datetime,
 	birthday date,
 	study_time time,
 	work_time year
);
insert into t17 values(1,'jason','2000-11-11 11:11:11','1998-01-21','11:11:11','2000');
ps:以后涉及到日期相关字段一般都是系统自动回去 无需我们可以操作


字段类型之枚举与集合

枚举 enum

enum('male','female')

单选,只能存储enum规定的对象 并且只能单选。


create table l1(gender enum('male','female'));
# 创建列表 字段名 gender 类型 enum 枚举待选项 'male','female'


集合 set

set('football','basktabll','ball','reading')

多选(也包括单选) 只能存储set规定的对象 可以多选 也可以单选

create table l2(hobbies set('football','basktabll','ball','reading');
# 创建一个set集合类型 数据可以多选存入



标签:11,varchar,int,数据类型,mysql,基础,time,类型,table
From: https://www.cnblogs.com/moongodnnn/p/16920198.html

相关文章

  • 【2022.11.23】爬虫基础(1)
    内容概要1.爬虫介绍2.requests模块发送get请求3.get请求携带参数4.携带请求头5.携带cookie6.发送post请求7.响应Response8.获取二进制数据9.解析json内容详......
  • 基础-字符串操作
    “理论上,理论和实践没有区别。但实践上,是有区别的。”       ——简.范德斯乃普特1、三引号字符串:如果字符串跨行,可以使用三引号。2、索引:字符串是可以迭......
  • MySQL字段基本数据类型
    昨日内容回顾数据存取的发展历程单台计算机:文本文件→软件开发目录规范→统一格式、统一操作存储位置:单机→网络→数据库集群数据库的本质本质是数据操作线程,一般......
  • 字符编码配置、MySQL字符类型和约束条件
    字符编码与配置文件数据库存储引擎创建表的完整语法MySQL字段基本数据类型MySQL字段常见约束条件字符编码与配置文件#查看MySQL相关信息 \s当......
  • Android Studio 连接 MySQL数据库
    1、下载MySQL-connector-jave.jar包地址如下:https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.46 2、将jar包移到如图所示的位置,然后右键addasl......
  • mysql关于优化设计模式与数据类型
    一、设计数据结构的字段数据类型基本原则是:1、更小的通常更好。就是尽量使用可以正确存储数据的最小数据类型,主要更小的数据类型可以更快,占用磁盘空间,内存和CPU缓存,处理周期......
  • 进入python的世界_day37_数据库——mysql字符编码配置、数据引擎配置、字段类型及语法
    一、字符编码与配置文件输入\s可以看到一些信息如果想要永久修改编码配置,可以在mysql的文件夹根目录下自己复制并改名一个my.ini去操作配置文件[mysqld]character-se......
  • mysql配置与mysql数据类型
    字符编码1.\s查看MySQL相关信息 当前用户、版本、编码、端口号MySQL5.6之前的版本编码需要人为统一之后版本已经全部默认统一如果想要永久修改编码配置需要操作配置......
  • Docker基础知识 (22) - Kubernetes(五) | 在 K8s 集群上部署 NFS 实现共享存储 (2)
    在“Docker基础知识(21)-Kubernetes(四)|在K8s集群上部署NFS实现共享存储(1)”里我们演示如何在K8s集群中部署NFS和创建静态PV/PVC,本文将继续演示如何创......
  • python入门基础之数据库
    python入门基础之数据库目录python入门基础之数据库字符编码与配置文件存储引擎主要的四个存储引擎创建表的完整语法字段类型之整型严格模式字段类型之浮点型字段类型之字......