临时表的默认排序规则

13

如何检查临时表的排序规则?

我想这样做是因为我想检查如果我有一个与SQL Server实例不同的特定排序规则的数据库并创建一个临时表,会发生什么情况。

假设我们有以下场景:

SQL Server 2008 - Latin1_General_CS_AS

测试数据库 - Estonian_CS_AS

然后创建没有指定排序规则的表#Test。它的排序规则将是什么?

我认为是Estonian_CS_AS,但在我进行的测试中是Latin1_General_CS_AS。这就是我需要找到一个SQL语句来检查它的原因。

注意:从我所了解的内容来看,我认为临时对象的排序规则是由tempdb排序规则定义的。但如果这是真的,那么是什么定义了它的种类呢?

1个回答

15

tempdb 在服务器启动时被重新创建,并从 model 数据库中获取排序规则。

如果您在创建临时表时没有指定排序规则,则这些表将使用 tempdb 的排序规则。您可以使用database_default 作为排序规则来创建临时表,以获得与当前数据库相同的排序规则。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接