一、常用数据类型
整数类型:INT(或INTEGER)
定点数类型:DECIMAL
日期时间类型:YEAR、TIME、DATE、DATETIME、TIMESTAMP
文本字符串类型:CHAR、VARCHAR、TEXT
二、整数类型
例子:
-- 1、建表
create table demo.demo1(
num int
);
-- 2、插入数据
insert into demo.demo1 values(null); -- 成功 null
insert into demo.demo1 values(1); -- 成功 1
insert into demo.demo1 values('2'); -- 成功 2
insert into demo.demo1 values('3.1'); -- 成功 3
insert into demo.demo1 values(true); -- 成功 1
insert into demo.demo1 values(false); -- 成功 0
insert into demo.demo1 values(1=1); -- 成功 1
insert into demo.demo1 values(1=2); -- 成功 0
insert into demo.demo1 values(''); -- 失败
insert into demo.demo1 values('2.i'); -- 失败
insert into demo.demo1 values('true'); -- 失败
insert into demo.demo1 values('false'); -- 失败
insert into demo.demo1 values('2023-01-01'); -- 失败
三、定点型
-- 1、建表
create table demo.demo2(
num decimal(20,6)
);
-- 2、插入数据
insert into demo.demo2 values(null); -- 成功 null
insert into demo.demo2 values(1); -- 成功 1
insert into demo.demo2 values('2'); -- 成功 2
insert into demo.demo2 values('3.1'); -- 成功 3.1
insert into demo.demo2 values(true); -- 成功 1
insert into demo.demo2 values(false); -- 成功 0
insert into demo.demo2 values(1=1); -- 成功 1
insert into demo.demo2 values(1=2); -- 成功 0
insert into demo.demo2 values(''); -- 失败
insert into demo.demo2 values('2.i'); -- 失败
insert into demo.demo2 values('true'); -- 失败
insert into demo.demo2 values('false'); -- 失败
insert into demo.demo2 values('2023-01-01'); -- 失败
四、日期型
-- 1、建表
create table demo.demo3(
tim date
);
-- 2、插入数据
insert into demo.demo3 values() -- 成功 null
insert into demo.demo3 values(null) -- 成功 null
insert into demo.demo3 values('20230101'); -- 成功 2023-01-01
insert into demo.demo3 values('2023-01-02'); -- 成功 2023-01-02
insert into demo.demo3 values('2023/01/03'); -- 成功 2023-01-03
insert into demo.demo3 values('2023$01$04'); -- 成功 2023-01-04
insert into demo.demo3 values(20230105); -- 成功 2023-01-05
insert into demo.demo3 values('') -- 失败 mysql的date类型不能插入'',clickhouse数据库允许插入'',且ck里面的''和null也有所区别
insert into demo.demo3 values(2023-01-05); -- 失败
五、文本型
char 和 varchar的区别:
在MySQL中,CHAR和VARCHAR是两种不同的数据类型,它们的主要区别在于存储方式、存储容量和性能。
存储方式:
CHAR是固定长度的类型,这意味着它为存储的每个字符分配固定的空间,如果存储的字符少于定义的CHAR长度,MySQL会使用空格填充剩余空间。
VARCHAR则是可变长度的类型,它根据实际存储的字符长度分配空间,不会为未使用的空间分配空间。
存储容量;
CHAR类型的最大长度是255个字符,与字符编码无关。
VARCHAR类型的最大长度可以达到65535个字符,但这个长度受限于InnoDB存储引擎的单行记录的最大长度,通常这个限制是65535字节。
性能:
CHAR类型在更新或插入数据时,由于长度固定,通常比VARCHAR更快,因为它不需要在更新时重新计算和调整空间分配。
VARCHAR类型在插入或更新数据时可能需要动态调整空间,这可能导致性能稍逊于CHAR。
空间使用:
CHAR类型通常比VARCHAR类型更节省空间,因为它总是使用定义的长度来存储数据,
而VARCHAR类型则根据实际存储的字符长度来分配空间。
总结:
选择CHAR还是VARCHAR取决于应用的具体需求,例如,如果知道字符串的长度并且不需要经常更改,CHAR可能是更好的选择,因为它提供了固定的存储空间,减少了空间浪费。
相反,如果字符串长度可能变化,或者需要频繁更新,VARCHAR可能是更好的选择,因为它提供了更大的灵活性,可以根据实际需要动态调整存储空间。
标签:insert,01,--,demo,into,数据类型,values
From: https://www.cnblogs.com/wangupai/p/18091321