gpt4 book ai didi

python - 在 Postgresql 中保存时区时出错

转载 作者:行者123 更新时间:2023-11-29 13:14:11 25 4
gpt4 key购买 nike

尝试使用 Python 在 PostgreSQL 中保存日期,它为我的时区提供了 UTC+2,而它是 UTC+1(不要介意差异,我只是使用 Python 测试来获取时区)

In [8]: datetime.datetime.now(pytz.timezone("Africa/Algiers"))
Out[8]: datetime.datetime(2018, 7, 7, 15, 27, 43, 756977, tzinfo=<DstTzInfo 'Africa/Algiers' CET+1:00:00 STD>)

在 PostgreSQL 上,我得到

2018-07-07 14:28:04.144505+02

timezone different

这就像 postgresql 添加了夏令时,而我们在 Algolia 没有夏令时?

注意:我使用 asyncpg

最佳答案

基于 Raymond Nijland 的 answer ,那行得通,这是如何(来自 PGAdmin 4)原因是操作系统强制使用自己的时区并且不保存 Python 给他的时区。

只需从 SQL 提示符运行这三个命令:

要获取 PG 使用的时区,

SHOW timezone ;

获取所有可用的时区以及PG如何命名它们

SELECT * FROM pg_timezone_names ;

设置正确的时区

ALTER DATABASE yourDataBase SET timezone TO 'Africa/Algiers';

重启服务

sudo systemctl restart postgresql-10.service 

注意:即使您使用 moment.js,您也需要添加 .zone(+0100),如前所述 here

关于python - 在 Postgresql 中保存时区时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51224178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com