--创建整形表
create table my_int(
int_1 tinyint,
int_2 smallint,
int_3 int,
int_4 bigint
)charset utf8;
--插入数据
insert into my_int
value(100,100,100,100);--有效数据
insert into my_int
value(a,b,199,f);--无效数据 ;类型限定
insert into my_int
value(255,10000,100000,1000000);--错误;超出范围
--给表添加一个无符号类型
alert table my_int add int_5
tinyint unsigned; --无符号类型
--插入数据
insert into my_int
value(255,10000,100000,1000000);
--指定显示宽度为
alert table my_int add int_6
tinyint(1)unsigned
--插入数据
insert into my_int
value(127,0,0,0,255,255);
--显示宽度为2,0填充
alert table my_int add int_7
tinyint(2) zerofill;
--插入数据
insert into my_int
values(1,1,1,1,1,1,1);
insert into my_int
values(100,100,100,100,100,100,100);
--浮点数表
create table my_float(
f1 float,
f2 flaot,
十位在精度范围之外
f3 flaot(6,2)--6位在精度范围之内
);
--插入数据
insert into my_float
values(1000.10,1000.10,1000.10);
insert into my_float
values(1000.10,1000.10,1000.10);
insert into my_float
values(3e38,3.01e7,1234.56);
insert into my_float
values(999999999,999999999.99);
--超出长度插入数据
insert into my_float
values(123456,1234.12345678,123.9876543);
--小数部分可以超出
insert into my_float
values(123456,1234.12,12345.56);
--最后一个整数部分超出
--创建定点点数
create table my_decimal(
f1 flaot(10,2),
d1 flaot(10,2)
);
--插入数据
insert into my_decimal
values(12345678.90,12345678.90);
--有效数据
insert into my_decimal
values(12345678.90,12345678.90);
--小数部分可以超出
--查看警告
show warnings;
insert into my_decimal
values(99999999.99,99999999.99)
--没有问题
insert into my_decimal
values(99999999.99,99999999.99)
--进位超出范围
--创建时间
create table my_date(
d1 datetime,
d2 date,
d3 time,
d4 timestamp,
d5 year
);
--插入数据
insert into my_date
values('2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36'2015);
insert into my_date
values('2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36'2015);
insert into my_date
values('2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36'2015);
-- -2就是过去俩天
--year可以使用二位或者四位
insert into my_date
values('2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36',
'2019-11-21 13:39:36'2015);
--timestamp: 修改记录
update my_date set dl=
--创建枚举表
create table my_enum(
gender enum('男','女','保密')
);
--插入数据
insert into my_enum
values('男'),('保密');--有效数据
insert into my_enum
values('male');--错误数据,没有该元素
--将字段结果取出来进行+0运算
select gander + 0, gender
from my_enum;
--数值插入枚举元素
insert into my_enum
values(1),(2);
--创建班级表
create table my_class(
name varchar(20) not null,
room varchar(20) null
代表允许为空,不写默认就是允许为空
);
--创建表
create table my_teacher(
name varchar(20) not null comment
'姓名',
money decimal(10,2) not null
comment'工资'
);
--默认值
create table my_default(
name varchar(20) not null,
age tinyint unsigned default 0,
gender enum ('男','女','保密')
default '男'
);
--插入数据
insert into my_default(name)
value('阿飞')
insert into my_default
values('男闺蜜','18','default');
--增加主键
create table my_pril(
name varchar(20) not null comment'姓名'
number char(10) primary key comment'学号: bc2019+00001, 不能重复'
);
--复合主键
create table my_pri2(
number char(10) comment
'学号: bc20190001',
course char(10) comment
'课程代码: bc25890001',
scorce tinyint unsigned default 60comment'成绩',
--增加主键限制:学号和课程号应该是对应的,具有唯一性
primary key(number, course)
);
--追加主键
create table my_pri3(
course char(10) comment
'课程代码: bc25890001',
course char(10) comment
'课程名字'
);
--第一种方式
alter table my_pri3 add primary
key(course);
--第二种方式
alter table my_pri3 modify course char(10) primary key comment'课程代码: bc25890001'
--删除表
drop table my_pri3