代码之家  ›  专栏  ›  技术社区  ›  Stefan Steiger Marco van de Voort

如何查询数据库区域性(SQL Server 2005)?

  •  2
  • Stefan Steiger Marco van de Voort  · 技术社区  · 16 年前

    如何查询数据库区域性(SQL Server 2005)?

    我在插入和获取日期时遇到问题,因为客户端的服务器与我的开发人员服务器运行的区域性不同。

    我可以调整日期,但我需要知道服务器的文化…

    2 回复  |  直到 16 年前
        1
  •  7
  •   marc_s MisterSmith    16 年前

    您可以通过以下方式了解当前配置的语言:

    SELECT @@language
    

    你可能还想看看这个:

    EXEC sp_helplanguage
    

    它将显示可用的语言,以及它们的日期格式等。这基本上是 sys.syslanguages 系统目录表。

    关于日期处理-最好使用基于日期时间的参数化查询,或者如果必须有日期字符串,请使用 ISO-8601 date format 在SQLServer中。

    格式 YYYYMMDD YYYYMMDD HH:MM:SS 无论SQL Server中当前选择的语言设置如何,都将始终工作。

        2
  •  0
  •   TomTom    16 年前

    你不需要那个。

    • 日期作为日期总是在客户机中得到输入/输出,服务器区域性在这里是不相关的,因为可视化/字符串转换发生在客户机上。因此,使用查询参数的变量,并将适当的类型作为输出(应该自动发生),这样您就不会有问题了。
    • 如果必须插入字符串,请使用ISO窗体(2010-12-05 23:15:22.233),该窗体在所有区域性设置下都被识别为通用回退。
    推荐文章