django学习入门系列之第九点《MySQL命令介绍二》

文章目录


数据类型

整形(整数)

  • tinyint

    有符号,取值范围:-128~ 127[默认有符号]
    无符号,取值范围:0~255

sql 复制代码
create table tb1(
	id int not null auto_increment primary key,       
    age tinyint   -- 有符号,取值范围:-128~ 127
)default charset=utf8;
sql 复制代码
create table tb1(
	id int not null auto_increment primary key,       
    age tinyint unsigned  -- 无符号,取值范围:0~255
)default charset=utf8;
  • int

    int 表示有符号,取值范围:-2147483648 ~ 2147483647
    int unsigned 表示无符号,取值范围:0 ~ 4294967295

  • bigint

    无符号,取值范围: 0 ~ 18446744073709551615
    有符号,取值范围: -9223372036854775808 ~ 9223372036854775807

练习题:

mysql 复制代码
# 创建表
create table tb3(
	id int not null auto_increment primary key,       salary int,
    age tinyint
)default charset=utf8;

#插入数据
insert into tb3(salary,age) values(10000,18);
insert into tb3(salary,age) values(20000,28);
insert into tb3(salary,age) values(30000,38),(40000,48);

# 查看表中数据
select * from tb3;
  • 最后返回来的数据
sql 复制代码
mysql> select * from tb3;
+----+--------+------+
| id | salary | age  |
+----+--------+------+
|  1 |  10000 |   18 |
|  2 |  20000 |   28 |
|  3 |  30000 |   38 |
|  4 |  40000 |   48 |
+----+--------+------+
4 rows in set (0.00 sec)

浮点(小数)

  • float
  • double
  • decimal
mysql 复制代码
-- decimal(m,d)
-- 准确的小数值,m是数字总个数 (负号不算),d是小数点后个数。 m最大值为65,d最大值为30。
-- 例如:
create table tb(
	id int not null auto_increment primary key,
    salary decimal(8,2)
)default charset=utf8;

insert into tb(salary) values(1.28);
insert into tb(salary) values(5.228);
insert into tb(salary) values(3.2822);

select * from tb;

输出结果为:

复制代码
mysql> select * from tb;
+----+--------+
| id | salary |
+----+--------+
|  1 |   1.28 |
|  2 |   5.23 |
|  3 |   3.28 |
+----+--------+
3 rows in set (0.00 sec)

该结果表明:

  • decimal(8,2)说明是最大能接收6位整数和2位小数的

  • 当整数位超过时报错

  • 当小数位超过时会给你四舍五入后返回结果

字符串

  • char

  • varchar

  • text

  • mediumtext

  • longtext

  • char(m)----速度快

    定长字符串 最多可容纳255个字符

    eg:char(11),固定用11个字符进行存储,哪怕没有到11个也会固定按11个进行存储

sql 复制代码
create table tb1(
	id int not null primary key auto_increment,
    mobile char(11)
)default charset=utf8;

insert into tb1(mobile) values("你好好试试");
  • varchar(m)----节省空间
sql 复制代码
变长字符串  m代表最大长度,最多 65535/3 = 最大的m 

eg:varchar(11),真实数据有多长,就按多长来存储,但是超过范围一样报错
sql 复制代码
create table tb2(
	id int not null primary key auto_increment,
    mobile varchar(11)
)default charset=utf8;

insert into tb1(mobile) values("你好好试试");
  • text

    text数据类型用于保存变长的大字符串,可以组多到65535 (2**16 - 1)个字符
    一般情况下,长文本会用text类型。例如: 文章、新闻等

sql 复制代码
create table tb3(
	id int not null primary key auto_increment,
    title varchar(12)
    content text
)default charset=utf8;

insert into tb1(mobile) values("你好好试试");
  • mediumtext (一般不会用到)

    最多能存储 (2**24-1)的字符

  • longtext (一般不会用到)

    最多能存储 (2**32-1)的字符

时间

  • datetime

    一般用来储存 年 月 日 时 分 秒

  • date

    一般用来储存 年 月 日

  • 练习题

sql 复制代码
create table tb4(
	id int not null primary key auto_increment,
    name varchar(64) not null,
    password char(12) not null,
    email varchar(18) not null,
    age tinyint,
    salary decimal(10,2),
    ctime datetime,
    content text
)default charset=utf8;


insert into tb4(name,password,email,age,salary,ctime,content) values("嘻嘻嘻","123","a12@qq.com",13,123.123,"2011-2-2 11:11","asd");

select * from tb4;

返回的数据:

sql 复制代码
mysql> select * from tb4;
+----+-----------+----------+------------+------+--------+---------------------+---------+
| id | name      | password | email      | age  | salary | ctime               | content |
+----+-----------+----------+------------+------+--------+---------------------+---------+
|  1 | 嘻嘻嘻    | 123      | a12@qq.com |   13 | 123.12 | 2011-02-02 11:11:00 | asd     |
+----+-----------+----------+------------+------+--------+---------------------+---------+
1 row in set (0.00 sec)

往期回顾

1.【快速开发网站】
2.【浏览器能识别的标签1】
3.【浏览器能识别的标签2】
4.【浏览器能识别的标签3】
5.【浏览器能识别的标签4】
6.【案例1:用户注册】
7.【案例2:用户注册改进】
8.【快速了解 CSS】
9.【常用选择器概念讲解】
10.【CSS基础样式介绍1】
11.【CSS基础样式介绍2】
12.【CSS基础样式介绍3】
13.【CSS基础样式介绍3】
14.【案例 小米商城头标】
15.【案例 小米商城头标总结】
16.【案例 小米商城二级菜单】
17.【案例 商品推荐部分】
18.【伪类简单了解】
19.【position】
20.【案例 小米商城中app图标代码】
21.【边框及总结】
22.【BootSrap初了解】
23.【BootSrap的目录栏】
24.【BootSrap的栅格系统】
25.【案例 博客案例】
26.【案例 登录】
27.【案例 后台管理样例】
28.【图标】
29.【BootStrap依赖】
30.【javascript初了解】
31.【jJavaScript的变量】
32.【JavaScript的字符串类型】
33.【JavaScript的数组介绍】
34.【案例 动态数据】
35.【javascript 对象(字典)】
36.【案例 动态表格】
37.【Javascript的条件语句和函数】
38.【DOM初了解】
39.【DOM的事件了解】
40.【jQuery初了解】
41.【jQuery寻找标签】
42.【jQuery寻找标签2】
43.【jQuery寻找标签(间接寻找)】
44.【案例 菜单的切换】
45.【案例 只能打开一个菜单】
46.【jQuery 简单操作】
47.【案例 动态创建数据】
48.【案例 点击获取文本】
49.【案例 点击删除文本】
50.【案例 表格操作】
51.【案例 添加页面】
52.【初识MySQL】
53.【MySQL命令介绍一】

相关推荐
溪语流沙7 分钟前
【Web全栈进阶】监控与告警:线上系统的“体检报告”
前端·vue.js·python·fastapi
深度学习04078 分钟前
MySQL InnoDB Cluster 部署完整文档
android·mysql·adb
蜡笔羊驼16 分钟前
ModuleNotFoundError: No module named ‘torchvision.transforms.functional_tensor‘
linux·人工智能·python
李航198319 分钟前
DeepDraw 网页版
人工智能·python·计算机视觉·ai·ai编程
杨逢昌工厂6S管理27 分钟前
127-钣金产线6S改善后总反弹?杨逢昌一线现场诊断笔记:反弹背后的熵增机理与基准化治理
经验分享·笔记·职场和发展·学习方法
企业数字化笔记28 分钟前
一段视频有两次跳投,动作分析为什么要先做事件分段?
人工智能·python·音视频
时间售卖铺1 小时前
MySQL 安装部署
运维·数据库·mysql·云原生
Aurorar0rua1 小时前
CS50 x 2024 Notes Python - 02
开发语言·python·学习方法
m4Rk_1 小时前
【论文阅读】Agent记忆机制(106):COUNTERMEM——用可执行世界模型验证“如果当时换个动作”的反事实记忆
论文阅读·人工智能·学习·开源·github
樱桃木1 小时前
回测可信度审查:样本外测试的五种常见自欺
python