【问题标题】:Collation help needed需要整理帮助
【发布时间】:2014-10-10 13:43:19
【问题描述】:

我对存储过程的排序规则有疑问,我认为问题出在本节中,但我对排序规则的了解不足以解决它,我尝试将其添加到各个部分但没有奏效。如果它不应该放在本节中,那么我可以查看查询的其余部分,因为它应该添加到我使用过临时表的任何地方?

我遇到的整理问题是:

“SQL_Latin1_General_CP1_CI_AS”和“Latin1_General_CI_AS”之间的冲突

    create table #tmp_NoRotadayOff (DayOfYear datetime, Rota varchar(10), RotaTemplate varchar(50))

注意:我修改了我的原始答案以删除我的一些代码,只有剩下的位实际上受到影响并导致了问题

【问题讨论】:

    标签: sql sql-server collation


    【解决方案1】:

    tempdb 的默认排序规则是实例排序规则。您可以在临时表的列级别指定 DATABASE_DEFAULT,以便改用当前数据库默认排序规则。试试:

    CREATE TABLE #tmp_NoRotadayOff
        (
          DayOfYear datetime
        , Rota varchar(10) COLLATE DATABASE_DEFAULT
        , RotaTemplate varchar(50) COLLATE DATABASE_DEFAULT
        );
    

    【讨论】:

    • 非常感谢您的帮助,我忘记了 database_default 语法,但效果很好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多