首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Sql server如何根据设置获取当前日期

Sql server如何根据设置获取当前日期
EN

Stack Overflow用户
提问于 2013-05-15 18:44:59
回答 2查看 185关注 0票数 1

我们知道人们在他们的pc中设置日期格式,比如dd/MM/yyyy,或者可能是MM/dd/yyyy。所以我只想根据系统设置来显示日期。

现在我是这样做的

代码语言:javascript
运行
复制
CONVERT(VARCHAR(10),GETDATE(),101) AS DateOnly;

如果可能,请帮助

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-15 19:03:26

我认为这件事不能像你想的那样做。

如果用户使用查询工具进行查询,则该查询工具中有关于如何显示日期的设置。

如果你有一个应用层(web、客户端等),你需要根据某个地方的语言环境来格式化它。

这可以是

a) SQL-Server上的SQL,如下所示:

代码语言:javascript
运行
复制
DECLARE @d DATETIME = '01/01/2011';
SELECT FORMAT ( @d, 'd', 'en-US' ) AS US_Result;
SELECT FORMAT ( @d, 'd', 'fr-FR' ) AS FR_Result;
SELECT FORMAT ( @d, 'd', 'de-DE' ) AS DE_Result;

(应用程序将区域设置从客户端传递到SQL)

b)在应用程序代码.net/java中使用例如Format类等。

代码语言:javascript
运行
复制
public class FormatDate
{
   public static void Main()
   {
      DateTime dt = DateTime.Now;
      // Sets the CurrentCulture property to U.S. English.
      Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
      // Displays dt, formatted using the ShortDatePattern
      // and the CurrentThread.CurrentCulture.
      Console.WriteLine(dt.ToString("d"));

      // Creates a CultureInfo for German in Germany.
      CultureInfo ci = new CultureInfo("de-DE");
      // Displays dt, formatted using the ShortDatePattern
      // and the CultureInfo.
      Console.WriteLine(dt.ToString("d", ci));
   }
}

c)在客户端,例如,如果用户正在查看网页,您将需要使用如下所示的javascript:

Display date/time in user's locale format and time offset

票数 3
EN

Stack Overflow用户

发布于 2013-05-15 18:56:25

这在SQL Server中无法完成。它不知道客户端的设置是什么。

您可以在调用应用程序或web服务器中执行此操作。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16562991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档