更改临时文件中列的排序规则

Flo*_*ian 2 sql-server collation tempdb temporary-tables

我在数据库中有一个使用临时文件的例程。但数据库的排序规则与临时数据库的排序规则不匹配。我无法更改数据库的排序规则,它是客户端数据库。我试过这个:

BEGIN
DECLARE @Collation sysname;
SELECT @Collation=collation_name FROM sys.databases WHERE name = DB_NAME();

CREATE TABLE #Resultaten
(Supplier smallint,
Productcode varchar(20) COLLATE @Collation;,...)
...
Run Code Online (Sandbox Code Playgroud)

但这行不通。

有没有办法将临时文件列的排序规则与当前数据库的排序规则相匹配?

Pau*_*ite 5

听起来你想要这个database_default选项:

CREATE TABLE #Resultaten
(
   Supplier smallint NULL,
   Productcode varchar(20) COLLATE DATABASE_DEFAULT NULL,
   ...
)
Run Code Online (Sandbox Code Playgroud)

请参阅文档

database_default使 COLLATE 子句继承当前数据库的排序规则。