如何在SQL存储过程中设置默认的日期时间格式

我想通过将日期格式更改为yyyy-MM-dd HH:mm:ss从表中获取数据,但在输出中默认为dd-MM-yyyy HH:mm:ss。

我可以通过使用CONVERT函数来实现此目的,但这仅适用于一列,但是我有许多列和表,因此我不想为每一列都写这个。 我想将datetime格式设置为默认格式,因此即使对于简单的select *查询,它也会显示格式化的日期。

CREATE TABLE dateFormatss (dateFormatOption int,dateOutput datetime)

insert into dateFormatss (dateFormatOption,dateOutput) values ('1','2019-12-31 14:47:48')

 select 
   [dateFormatOption],CONVERT(VARCHAR,[dateOutput],120) as dateOutput  from dateFormatss 

SET DATEFORMAT ymd;

select * from dateFormatss

输出:

dateFormatOption        dateOutput
    1               2019-12-31 14:47:48

dateFormatOption        dateOutput
    1               31.12.2019 14:47:48
kangbowen004 回答:如何在SQL存储过程中设置默认的日期时间格式

您可以在SQL Server属性中更改默认语言以在整个服务器上应用更改,但这会影响服务器中的所有数据库。您无法根据需要更改单个列,表甚至数据库的日期时间格式。 SET DATEFORMAT仅更改会话日期格式。

您可能不得不使用表上的视图来进行转换,如所证明的那样。

其他选项包括更改操作系统区域设置,更改SQL Server设置或创建新用户并使用dbcc useroptions

https://blogs.msdn.microsoft.com/sqlserverfaq/2009/11/13/how-to-change-date-format-after-installing-sql-server/

也许还可以查看有关日期和时间数据类型和功能的Microsoft文档

https://docs.microsoft.com/en-us/sql/t-sql/functions/date-and-time-data-types-and-functions-transact-sql?view=sql-server-ver15

本文链接:https://www.f2er.com/2993586.html

大家都在问