gpt4 book ai didi

sql - 使用 VDF 和 MERTECH 从 SQL Server 与 PostgreSQL 获取日期

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

我目前在程序开始时使用 PostgreSQL 上的命令来使用英国日期样式:

SET DATESTYLE TO ISO, EURO

我们正在测试 SQL Server,但我找不到任何等效函数。

dbcc useroptions set language 'British', dateformat dmy;
sp_configure 'default language', 23 reconfigure with override;
SET DATEFORMAT dmy;

这些是我在没有任何运气的情况下测试过的一些东西。当查询 dbcc useroptions 时我看到正确的值,但一切都保持不变; YYYYMMDD

谁能指出我正确的方向?

最佳答案

如果数据类型是日期,则设置日期格式等不会影响 SQL Server 将其输出为日期的方式 - 它是日期,而不是字符串。注意这些所有输出 YYYY-MM-DD:

DECLARE @d DATE = GETDATE();
SET DATEFORMAT DMY;
SELECT @d;
SET DATEFORMAT MDY;
SELECT @d;
SET LANGUAGE BRITISH;
SELECT @d;
SET LANGUAGE US_ENGLISH;
SELECT @d;

这些设置会影响字符串解释方式,而不是日期显示方式

答案 - 首选 - 是在客户端应用这种格式化 - 当然 VisualDataFlex 有一些字符串格式化函数等同于 C# 的 Format() 或 ToString() 功能。但是,如果您想向用户展示像 d/m/y 这样的本地区域格式,您仍然应该小心——它们肯定会被某些人误解。 5/7/2014 是 5 月 7 日还是 7 月 5 日?取决于读者。

解决方法 - 不太理想 - 是在服务器上使用字符串格式来破坏您的查询。

SELECT CONVERT(CHAR(10), col, 103) FROM dbo.tablename;

关于sql - 使用 VDF 和 MERTECH 从 SQL Server 与 PostgreSQL 获取日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21566241/

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