解決sql server collation conflict

在數據庫更新時因爲COLLATION和服務器實例不同出現錯誤,相似cannot resolve the collation conflict between latin1_general_ci_as and sql_latin1_general_cp1_ci_as。sql

這時能夠經過下面的代碼查看出錯的表中哪一列有問題:數據庫

SELECT
    col.name, col.collation_name
FROM 
    sys.columns col
WHERE
    object_id = OBJECT_ID('YourTableName')

若是是個別表格出現這個問題,能夠經過下面的代碼統一COLLATION:



最簡單的辦法是在衝突字段的後面加上:ALTER TABLE YourTableName ALTER COLUMN OffendingColumn VARCHAR(100) COLLATE Latin1_General_CI_AS NOT NULLCOLLATE DATABASE_DEFAULT,即便用服務器默認的COLLATION
...WHERE fieldname COLLATE DATABASE_DEFAULT = otherfieldname COLLATE DATABASE_DEFAULT
相關文章
相關標籤/搜索