0

私は SQL が初めてで、1 つのスクリプトを使用して 2 つの別々のデータベースにクエリを実行しようとしています。ただし、両方のデータベースの照合順序は異なります。次のようなスクリプトを実行して、照合を強制的に変更しようとしました。

use master
go
alter database database1
collate SQL_Latin1_General_CP1_CI_AS
go

これは実行されますが、このクエリを実行しようとしても違いはありません (両方のデータベースが現在 SQL_Latin1_General_CP1_CI_AS を使用しているにもかかわらず):

select [Manufacturer],[ModelNumber] from database1.dbo.CVStore_Products inner join database2.dbo.tProduct on [StoreProductCode]=[ModelNumber]

私は何を間違っていますか?このエラーが発生し続けるため:

Msg 468, Level 16, State 9, Line 1
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Latin1_General_CI_AS" in the equal to operation.

事前にご協力いただきありがとうございます。:D

4

1 に答える 1

0

照合は面倒な場合があります。しかし、それはかなり前から存在しています。これは、2007 年からのPinal Dave からの投稿です
クエリの照合を直接修正するか、特定の列の照合を変更する例があります。

私が思い出す限り、データベース全体の照合設定を変更しても、既存の列には影響しません。
新しい列は新しい設定を使用します。

于 2012-11-28T21:58:36.370 に答える