【问题标题】:Is there a table level collation?是否有表级排序规则?
【发布时间】:2017-04-24 00:41:34
【问题描述】:

在 SQL Server 中,您可以在服务器和数据库级别设置默认排序规则。您还可以为特定字段设置排序规则,但我在表级别找不到有关默认排序规则的任何可靠文档。

在查看 SSMS 中表的扩展属性之前,我一直认为不存在这样的事情:

Collation 值是指默认数据库(或服务器)排序规则,还是有办法为我不知道的表设置默认排序规则?

【问题讨论】:

    标签: sql sql-server ssms collation


    【解决方案1】:

    不,不存在表级排序规则。这是第一次选择“扩展属性”页面时,Management Studio 为获取此数据而执行的查询:

    exec sp_executesql N'SELECT
    dtb.collation_name AS [Collation],
    dtb.name AS [DatabaseName2]
    FROM
    master.sys.databases AS dtb
    WHERE
    (dtb.name=@_msparam_0)',N'@_msparam_0 nvarchar(4000)',@_msparam_0=N'...'
    

    这只是数据库排序规则。究竟为什么它也选择在表格级别呈现这一点尚不清楚。可能有人懒惰地重用对话框。

    【讨论】:

      【解决方案2】:

      数据库之后的第二大粒度级别是

      可以在服务器、数据库、列、表达式和标识符级别[?]指定排序规则。

      您不能在表级别指定它。

      The GUI 向您显示 Database 排序规则,无论是在该级别设置还是从服务器排序规则继承。)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-16
        • 1970-01-01
        • 2015-10-09
        • 2013-02-19
        • 2015-10-26
        • 2013-06-12
        • 2019-11-17
        相关资源
        最近更新 更多