全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货  >  详情

数据库存储时间为什么用的是utcnow而不是now?

来源:千锋教育
发布人:xqq
2023-10-15

推荐

在线提问>>

一、数据库存储时间为什么用的是utcnow而不是now

数据库中存什么时间,什么格式,都是你的项目需求和你解决需求的设计决定的。

datetime.now([tz]):返回一个表示当前本地时间的datetime对象,如果提供了参数tz,则获取tz参数所指时区的本地时间;datetime.utcnow():返回一个当前utc时间的datetime对象;

举个例子:

[datetime.datetime.now(),datetime.datetime.utcnow()]

Out[10]:

[datetime.datetime(2016, 7, 15, 9, 54, 22, 512214),

 datetime.datetime(2016, 7, 15, 1, 54, 22, 512214)]

看见了么?和你的本地时间相差8小时,还记得我们的时区么?

实际上,在我遇到过的项目中,都是用本地时间,所以我斗胆猜测,跨时区业务才会推荐用utcnow吧。

延伸阅读:

二、字符集(Character set)是什么

是多个字符(英文字符,汉字字符,或者其他国家语言字符)的集合,字符集种类较多,每个字符集包含的字符个数不同。

特点:

①字符编码方式是用一个或多个字节表示字符集中的一个字符

②每种字符集都有自己特有的编码方式,因此同一个字符,在不同字符集的编码方式下,会产生不同的二进制

常见字符集:

ASCII字符集:基于罗马字母表的一套字符集,它采用1个字节的低7位表示字符,高位始终为0。

LATIN1字符集:相对于ASCII字符集做了扩展,仍然使用一个字节表示字符,但启用了高位,扩展了字符集的表示范围。

GBK字符集:支持中文,字符有一字节编码和两字节编码方式。

UTF8字符集:Unicode字符集的一种,是计算机科学领域里的一项业界标准,支持了所有国家的文字字符,utf8采用1-4个字节表示字符。

相关文章

从Oracle到GaussDB的数据迁移实操要怎么避坑?

Vertica数据库为什么插入数据那么快?

MyBatis的优势是什么?

互联网、金融这两个领域上用于数据挖掘、数据分析的数据库是什么?

什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?

开班信息 更多>>

课程名称
全部学科
咨询

HTML5大前端

Java分布式开发

Python数据分析

Linux运维+云计算

全栈软件测试

大数据+数据智能

智能物联网+嵌入式

网络安全

全链路UI/UE设计

Unity游戏开发

新媒体短视频直播电商

影视剪辑包装

游戏原画

    在线咨询 免费试学 教程领取