上述知识,可以参考下图理解:
从上表中可以看出:
注意:只要存放的是字符串类型,都要注意编码问题,一般使用的是utf8编码。
有符号位与无符号位详解网址:https://www.cnblogs.com/123ing/p/4135229.html
-- 创建表
create table person(
pname varchar(20),
page tinyint unsigned,
psex bit(1)
) charset=utf8;
-- 插入两条记录
insert into person(pname,page,psex)
values("张三",18,0),("李四",22,0);
观察下图:
从上图可以看出:
-- 对学号字段进行一个说明:
-- 1:学号不能为负;
-- 2:学号一般位数相同,即使不同,也会用0填充。
-- eg:00001,00013,00128,01280。
-- 创建表
create table student(
sid smallint(5) zerofill not null default 0,
sname varchar(20),
sage tinyint unsigned,
ssex bit(1) default 0
) charset=utf8;
-- 插入两条记录
insert into student(sname,sid)
values ("张飞",5),("吕布",1);
观察下图:
从上图可以看出:
举例说明:
-- swage代表工资;sbonus代表津贴,津贴不能是负数。
-- 创建表
create table salary(
sname varchar(20),
swage float(6,2),
sbonus float(5,2) unsigned not null default 0
) charset=utf8;
-- 插入两条记录
insert into salary(sname,swage,sbonus)
values ("纪晓岚",9999.99,111.11),("和珅",-9999.99,444.44);
观察下图:
从上图中可以看出:
-- 创建表
create table bank(
id varchar(20),
acc1 float(9,2),
acc2 decimal(9,2)
) charset=utf8;
-- 插入两条记录
insert into bank(id,acc1,acc2)
values
(1,1234567.45,1234567.45),
(2,1234567.678,1234567.678);
观察下表:
从上表中可以看出: