您的位置:首页 > 游戏 > 手游 > 深圳高端网站定制_聊城开发app公司_怎么自己弄一个平台_口碑营销成功案例

深圳高端网站定制_聊城开发app公司_怎么自己弄一个平台_口碑营销成功案例

2024/12/28 19:09:02 来源:https://blog.csdn.net/2302_80207345/article/details/144494679  浏览:    关键词:深圳高端网站定制_聊城开发app公司_怎么自己弄一个平台_口碑营销成功案例
深圳高端网站定制_聊城开发app公司_怎么自己弄一个平台_口碑营销成功案例

目录

INT类型

tinyint类型

类型大小范围

测试tinyint类型数据

float类型

测试:

测试正常数据范围的数据

测试插入范围超过临界值的数据:

测试float类型的四舍五入

​编辑

decimal类型

同样测试:

字符串类型

char类型

测试:

varchar类型

测试:

溢出测试:

DATA类型:

date类型

测试:

datetime

测试:

timestamp :

测试:


INT类型

分为tinyint,.smallint,mediumint,int,bigint类型,在此处只介绍tinyint的细节,其他int的类型都是相似的,只需要注意类型的范围大小和有无符号即可。

tinyint类型

占用空间:1字节

类型大小范围

有符号时:-128 ~ 127

无符号时:0 ~255

测试tinyint类型数据

#新建一张表用来测试,其中tinyint为有符号类型
mysql> create table t1(-> id tinyint);#插入测试数据--插入最小值-128
mysql> insert into t1 values(-128);#插入测试数据--插入小于最小值的值-129
mysql> insert into t1 values(-129);#插入测试数据--插入最大值127
mysql> insert into t1 values(127);#插入测试数据--插入超过最大极限的值128
mysql> insert into t1 values(128);

显示:当测试插入-128和插入127时,显示数据插入成功:

使用sql语句查询表中所有数据

#显示指定表中的所有数据
select* from 表名

显示:

说明插入的数据只要在有符号tinyint规定的范围内,是可以插入成功的,那么来看看不合法的数据插入:插入测试数据-129和128

MySQL直接提示数据过大,不允许我们此次插入。换句话说,MySQL保证了自己表中数据的可靠性和合法性。

无符号的tinyint大家可以下来自行测试;

float类型

语法:float [(m,d)] [unsigned]:M指定显示长度,d指定小数位数,占4个字节空间

范围:例子:当m=4,d=2时,范围大小为[-99.99 ~ 99.99],float类型范围和用户自定义的m,d强关联

测试:

测试正常数据范围的数据

sql语句

#插入负数的临界值
insert into test_float_tb values( 2,-99.99);
#插入整数的临界值
insert into test_float_tb values( 2,99.99);#查看表中数据
select* from test_float_tb;

显示:说明数据在-99.99~99.99中的数据都能插入,只需注意建立表时的float类型设置的长度和精度即可

测试插入范围超过临界值的数据:

#插入100
insert into test_float_tb(1,100.00);
#插入999
insert into test_float_tb(2,999.00);

显示:说明表会约束用户差插入的数据,保证数据可信

注意:关于精度问题:当插入的数据的小数位长度超过创建表时的float的约束,会四舍五入存储,保证小数精度与表的约束的精度相等!

测试float类型的四舍五入

#新建一张测试的表,float类型设置m=4,d=2
mysql> create table t2(-> score float(4,2)-> );#插入测试数据77.556
insert into t2 values(77.556);#插入测试数据80.0
insert into t2 values(80.0);#测试插入数据79.99
insert into t2 values(79.994);

插入数据77.556后,显示数据插入成功,我们使用select* from t2查询一下表中的数据:

说明float类型会自动帮我们对查出指定精度的数据做四舍五入

float类型设置的d最大只能是8位,超过8位数据将会有缺失精度的风险!

#更改先前创建的t2表中的float精度
mysql> alter table t2 modify salary float(20,10);#插入测试数据127834.12345678435
mysql> insert into t2 values(127834.12345678435);

使用select* from t2查看表中数据:

精度缺失!

decimal类型

特点:所见即所得,和float相比最大的特征就是不存在损失精度的问题(前提是保证用户新增的数据不溢出),其他用法基本一致

同样测试:

#创建表t4用来测试
mysql> create table t4(-> salary decimal(8,8));#插入测试数据127834.12345678435
mysql> insert into t4 values(127834.12345678435);

显示

说明使用decimal类型可以保证浮点数的精度不会缺失

字符串类型

char类型

char类型在MySQL中是一种固定长度的字符串类型,建表时定义长度,只允许长度范围内的字符串插入;注意!此处的长度指的是字符长度,而不是字节!与编码格式相关,此处采用utf8的格式

测试:
#新建表t5来测试char类型
mysql> create table t5( name char(2));#插入字符数据'你好';
mysql> insert into t5 values('你好');#插入字符数据'你好啊';
mysql> insert into t5 values('你好啊');

当插入2个字符'你好'时,MySQL允许插入,但是当插入'你好啊'时,此次插入被拦截

查一下t5中的内容:

varchar类型

很简单,就是一个可变长字符串类型,在用户设定的varchar范围内,会根据用户新增的字符串数据长度自动推导长度,但是不能超过建表时规定的varchar长度

测试:
#更新一下表的属性
mysql> alter table t5 modify name varchar(5);#插入'晚上好'
mysql> insert into t5 values('晚上好');#插入'晚上好吗?'
mysql> insert into t5 values('晚上好吗?');

显示插入成功:查一下:

溢出测试:

#插入数据'兄弟你好香啊!'
mysql> insert into t5 values('兄弟你好香啊!');

很显然不允许我们此次插入;

DATA类型:

常用的日期类型:

date类型

格式:日期 'yyyy-mm-dd' ,占用三字节

测试:

和上述的基本类型同样的测试方法,此处就不再赘述,唯一要注意的就是insert时注意日期的格式问题;

datetime

时间日期格式:  'yyyy - mm - dd HH:ii:ss' 表示范围从 1000 9999 ,占用八字节
测试:
和上述的基本类型同样的测试方法,此处就不再赘述,唯一要注意的就是insert时注意日期的格式问题,有空格隔开哦~;

timestamp

时间戳,从 1970 年开始的 yyyy - mm - dd HH:ii:ss 格式和 datetime 完全一致,占用 四字节
测试:
#新建表t6来测试
mysql> create table t6(-> id int,-> time timestamp-> );#插入id
mysql> insert into t6 values(1,'2004-12-29 08:43:09');

先不更新数据查一次表中数据:

再次更新时,时间戳会自动更新;

timestamp类型的数据不用用户手动添加,会随着当前行的数据更新为自动更新;

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com