我的服务器数据库默认排序规则为Arabic_CI_AS
。在我的应用程序中,我从不在任何地方设置校对。但是当我运行这个简单的SQL时,
CREATE TABLE #TempProductInventory
(
PID int
,InvTypeValue nvarchar(MAX)
,InvTypeKey nvarchar(MAX)
);
SELECT *
FROM #TempProductInventory TP
INNER JOIN dbo.[Sources] S ON (S.Code = TP.InvTypeKey)
我到了,
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Arabic_CI_AS" in the equal to operation. When I un,
当我跑步时,
SELECT col.name, col.collation_name FROM sys.columns col WHERE object_id = OBJECT_ID('Sources')
我会得到,
name collation_name
ID NULL
Code Arabic_CI_AS
答案 0 :(得分:1)
尝试此操作,它会将临时表的排序规则设置为您指定的排序规则
发生这种情况的最可能原因如GarethD所述,临时数据库冲突设置为Arabic_CI_AS
。
CREATE TABLE #TempProductInventory( PID int ,InvTypeValue nvarchar(MAX) ,InvTypeKey nvarchar(MAX) Collate "Arabic_CI_AS")